Reader small image

You're reading from  Build Stunning Real-time VFX with Unreal Engine 5

Product typeBook
Published inMay 2023
PublisherPackt
ISBN-139781801072410
Edition1st Edition
Concepts
Right arrow
Author (1)
Hrishikesh Andurlekar
Hrishikesh Andurlekar
author image
Hrishikesh Andurlekar

Hrishikesh Andurlekar is the founder of Tplusplus Interactive, an Unreal Authorized instructor, owner of a Unreal Authorized training center and a Mentor at Mastered UK. He has been a CG Supervisor at Prana Studios and Pixion. He has been working as a contractor/consultant in Unreal Engine for 6 years with leading companies including Reliance Jio Studios, Monk Studios, Prime Focus and True Telecom delivering Games, Simulations, Virtual Production Solutions and AR/VR experiences. He has trained companies around the world through Epic Games. More than 3200 hours of 1-2-1 training conducted for major companies like Technicolor, Yashraj studios, Infosys, Tech Mahindra, TCS, Aptech among others.
Read more about Hrishikesh Andurlekar

Right arrow

Local Modules and Versioning

Now that we are familiar with custom modules, we will learn about a different type of custom module called Local Modules. In this chapter, we will learn how to create these Local Modules (previously known as Scratch Pad modules). Local Modules are embedded in the particle system and do not exist as independent reusable assets (although you can copy and paste them and convert them to custom modules). We will also be introduced to a versioning system, which lets us manage different versions of the custom modules that we will create.

The topics we will cover in this chapter are as follows:

  • Exploring Local Modules
  • Publishing modules and versioning

Technical requirements

You can find the project we worked on in this book here:

https://github.com/PacktPublishing/Build-Stunning-Real-time-VFX-with-Unreal-Engine-5

Exploring Local Modules

In the previous chapter, we learned how to create custom modules to achieve behaviors that cannot be achieved using existing Niagara modules. Custom modules can be reused in other particle systems if we need to. But there are many occasions where we want a one-off custom module and we do not intend to reuse it in other particle systems.

For such situations, we should create a local module. Local Modules are embedded in the particle system and cannot be reused in other particle systems. Local Modules are also useful for testing out and prototyping new modules.

Local Modules can be edited in their own editor, which is similar to the Niagara Module Editor.

In Unreal Engine 5.1, a new panel has been introduced to replace the Scratch Pad panel from Unreal 5.0 and below. The new panel is called the Local Modules panel. The functionality remains the same as the earlier Scratch Pad panel with the exception that the module editor is now separate from the rest...

Publishing modules and versioning

During development, particle assets are always being worked upon, even when they are being used in production. It may be necessary to release new versions of a module as more features are added to it. Not all particle systems used in production will need to be updated to the latest version of the module because there may be breaking changes where particle systems using the old version of the module stop working when the module is upgraded. Normally, you can manage versions using a version control system. However, when developing Niagara modules, we may need a particular particle system to keep using its old version of the module in production and switch to new versions when desired.

Niagara maintains its own internal versioning system for modules, where you can update version numbers as you update the modules and ensure that we can select what version of the module will be used in production.

Let’s assume that the Presence Detector module...

Summary

Using Local Modules is a convenient and quick way to get custom modules working, and they are very good for prototyping. Custom modules need to be managed as we continue to develop and extend them. By understanding Niagara’s versioning system, we can ensure that the custom modules and systems remain compatible with future updates to the framework. This can help minimize the risk of errors and unexpected behavior when upgrading to new versions of the modules.

In this chapter, we saw a different type of custom module called Local Module. We saw how to use the versioning system in Niagara to keep track of new versions of modules. In the next chapter, we will learn about Events and Event Handlers, which let different emitters in a particle system pass information between them.

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Build Stunning Real-time VFX with Unreal Engine 5
Published in: May 2023Publisher: PacktISBN-13: 9781801072410
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at AU $19.99/month. Cancel anytime

Author (1)

author image
Hrishikesh Andurlekar

Hrishikesh Andurlekar is the founder of Tplusplus Interactive, an Unreal Authorized instructor, owner of a Unreal Authorized training center and a Mentor at Mastered UK. He has been a CG Supervisor at Prana Studios and Pixion. He has been working as a contractor/consultant in Unreal Engine for 6 years with leading companies including Reliance Jio Studios, Monk Studios, Prime Focus and True Telecom delivering Games, Simulations, Virtual Production Solutions and AR/VR experiences. He has trained companies around the world through Epic Games. More than 3200 hours of 1-2-1 training conducted for major companies like Technicolor, Yashraj studios, Infosys, Tech Mahindra, TCS, Aptech among others.
Read more about Hrishikesh Andurlekar