ue4 niagara что это
Niagara Visual Effects
Unreal Engine 4’s Niagara visual effects system used for creating and previewing particle effects in real time.
This page links to documentation regarding the Niagara VFX system, including an Overview and a Quick Start guide to get you up and running. If you are new to Niagara, it is recommended that you check out the Getting Started section which includes a high-level overview of the Niagara Editor, the Quick Start Guide, and a page that lays out the Key Concepts and design philosophy behind Niagara. You can also check out the Guides section, which has How-To articles on various tasks. The Reference section has the System and Emitter Module Reference, the Niagara Editor UI Reference, and the Niagara Script Editor UI Reference.
Starting Out
This page discusses and demonstrates the plugin to convert Cascade particle systems to Niagara particle systems.
This page gives an overview of the Niagara VFX system in Unreal Engine 4.
This page gives an overview of the Niagara VFX system in Unreal Engine 4.
This page explains the key concepts and design philosophy behind Niagara, to help you understand the Niagara visual effects system.
This page explains the key concepts and design philosophy behind Niagara, to help you understand the Niagara visual effects system.
This page gives basic information about using Events and Event Handlers in Niagara.
A guide to help you quickly start using the Niagara visual effects system in Unreal Engine 4.
This page gives basic information about using Events and Event Handlers in Niagara.
A guide to help you quickly start using the Niagara visual effects system in Unreal Engine 4.
Нововведения Niagara в UE4.25. Unreal Fest Online на русском
UPD. Специально для Сергея Соснина:
*Переведено по версии EkZo UE4
Не, спасибо за перевод, дело хорошее, полезное, не вопрос. Но зачем Ниагара превратилась в Наягру? о_О
Слово давным давно адаптированно и имеет устоявшееся у нас произношение. ред.
Мб потому что в оригинале она звучит как найягра?
Знаю, и? о_О
С тем же успехом, переводя на русский, теперь Шерлоку в компаньоны ставить Уотсон, вместо привычного Ватсона?
Есть имена/названия с устоявшейся адаптацией, настолько, что Ниагара во всех учебниках Ниагара. И если переводишь, то только так и никак иначе.
Простите, но таковы уж текущие правила переводов, я лишь их гонец,)
А можно ссылку на учебник по Ниагаре на русском?
Возьми хотя бы учебник за 7-ой класс по Географии, река Ниагара и все образованные от неё названия, будь то город Ниагара-Фолс или знаменитый Ниагарский водопад во всех русскоязычных источниках будут именно Ниагарой и никак иначе.
Причина в том, что в прошлом адаптация имён делалась от написания, а не от произношения. С тех пор устоялось и закрепилось, став правилом.
Вот до кучи транскрипция:
Причём тут Ниагара из географии и Наягра из UE4?
P.S. Если уж так принципиально, то для тебя отредактировал статью. Указал, что «Переведено по версии EkZo UE4». У людей ведь должен быть выбор, чью версию перевода они хотят слушать, верно?
При том, что Ниагара из UE4 названа в честь той же самой реки. Это буквально тоже самое слово. Если ты вобьёшь его в переводчик, то получишь от него ответ «Ниагара», а не твоё «Наягра»,)
Для меня же принципиально другое:
Если взялся что-то делать — делай это хорошо и всегда стремись расти над собой.
У перевода есть свои правила, практически, это работа академического склада. Тут пусть и есть простор для творчества, но и непреложных правил хватает.
Вместо того, что бы идти в оборону и отстаивать косяк, называя его «версией», воспользуйся фидбеком с пользой — подними ещё на одну ступень качество своей переводческой деятельности.
Ошибаться не страшно — страшно не уметь признавать ошибки.
Niagara Quick Start
A guide to help you quickly start using the Niagara visual effects system in Unreal Engine 4.
In order to understand and use the content on this page, make sure you are familiar with the following topics:
Goals
The Niagara Quick Start is designed to get you acquainted with creating visual effects (VFX) in Unreal Engine using Niagara.
Objectives
How to set up your project with meshes and materials for use with Niagara.
How to create a basic effect using Niagara emitters and systems.
How to attach a Niagara effect to a character so that the effect displays in an animation.
Before you start creating your Niagara effect, you need to set up your project with some basic materials and assets that you will be using in the rest of this guide. After you complete this section, you will have everything you need to create your Niagara effect.
Create a Mesh Shape
The first thing you need for your project is a mesh shape for your effect. You are going to create a little puff of dust that appears when your character runs. You can create this shape in a 3D modeling application and export it, then import it into your UE4 project.
In the Content Browser, right-click and select New Folder to create a folder for this Quick Start. Put all your assets into this folder. Name it Quickstart.
Create a Material
Now you will make a basic material to use for your dust cloud. Follow these steps.
Right-click in the Content Browser and select Material.
Name the new material M_DustPoof. Double-click to open it in the Material Editor.
With the main Material node selected, locate the Material section in the Details panel. Change the Blend Mode to Translucent. Check the box for Two Sided. Leave the other settings at their default.
Click image for full size.
Right-click in the graph and type particle in the search bar. Select Particle Color to add a Particle Color node. Plug the top output of the Particle Color node into the Base Color input on the main Material Node.
Click image for full size.
Create a Texture Sample node. You can do this by holding T and clicking inside the Node Graph.
With the Texture Sample node selected, locate the Material Expression Texture Base section in the Details panel. Click the dropdown, and type Noise in the search bar. Select the T_Perlin_Noise_M texture.
Click image for full size.
Right-click in the graph and type dynamic in the search bar. Select Dynamic Parameter to add that node.
Click image for full size.
With the Dynamic Parameter node selected, locate the Material Expression Dynamic Parameter section in the Details panel. In Array 0, change the name to Erode.
Click image for full size.
Right-click in the graph and type step in the search bar. Select Value Step to add that node.
Click image for full size.
Drag off the R output of the Texture Sample node, and plug it into the Gradient input of the Value Step node.
Click image for full size.
Drag off the Erode output of the Dynamic Parameter node, and plug it into the Mask Offset Value input of the Value Step node.
Click image for full size.
Drag off the Results output of the Value Step node, and plug it into the Opacity input of the main Material node.
Click image for full size.
Click Apply and Save, then close the Material Editor.
Section Result
You have your mesh shape, and you have a basic material. Now you have everything you need to create your Niagara effect.
Create System and Emitter
Next you will create your Niagara system. Unlike in Cascade, Niagara emitters and systems are independent. The current recommended workflow is to create a system from existing emitters or emitter templates.
First, create a Niagara System by right-clicking in the Content Browser, and from the displayed menu select FX > Niagara System. The Niagara Emitter Wizard displays.
Select New system from selected emitters. Then click Next.
Click image for full size.
Under Template, select Simple Sprite Burst. Click the Plus sign icon (+) to add the emitter to the list of emitters to add to the system. Then click Finish.
Click image for full size.
Name the system FX_FootstepDustPoof. Double-click to open it in the Niagara Editor.
Click image for full size.
The emitter instance in your new system has the default name of SimpleSpriteBurst. The emitter instance in your new system has the default name of SimpleSpriteBurst. You can rename it, however. Click the name of the emitter instance in the System Overview, and the field will become editable. Name the emitter FX_DustPoof.
Click image for full size.
Until you set your mesh and material in the Renderer, you will not see anything in your preview. So in the System Overview, select Render to open it in the Selection panel.
Click image for full size.
Click the Trashcan icon to delete the Sprite Renderer.
Click image for full size.
Click the Plus sign icon (+) and select Mesh Renderer from the list.
Click image for full size.
Click the dropdown next to Particle Mesh, and select the mesh you made in the Project Setup section.
Click image for full size.
Click to enable Override Materials. The default is 0 Array elements. Click the Plus sign (+) icon to add an Array element. Click the dropdown next to Explicit Material, and select the material you made in the Project Setup section.
Click image for full size.
For Facing Mode, click the dropdown and select Velocity.
From the Content Browser, drag your Niagara system into your Level. Position it near the foot of the Player Character, so you can check the size and shape of the effect in relationship to the character.
When you make a particle effect, it is always a good idea to drag your system into your level. This gives you a chance to see every change and edit in context.
Section Result
After completing this section, you have a Niagara system and an emitter instance, and you have dragged the system into the Level so you can preview it next to the Player Character. In the next part, you will edit the settings in the Niagara system to create the dust cloud effect.
The Niagara Editor displays each emitter as a stack, with several groups of settings. You will edit the modules in each group one at a time.
Some effects you create may have some modules in the Emitter Spawn group, or in the System groups. The effect you are creating does not, so you are skipping those groups.
Emitter Update Settings
First you will edit the modules in the Emitter Update group. These are behaviors that apply to the emitter, and that update each frame.
In the System Overview, click the Emitter Update group to open it in the Selection panel.
Click image for full size.
Expand the Emitter State module. By default, the Life Cycle Mode should be set to Self.
Change the Emitter State settings to the following values. This will give you a dust poof that appears once and then dissipates.
Click image for full size.
Life Cycle Mode
Inactive Response
Loop Behavior
Loop Duration Mode
Loop Duration
Expand the Spawn Burst Instantaneous module. Set the Spawn Count to 10. A spawn count of 10 gives us a dust cloud that is big enough to be visible, but small enough to be plausible.
Click image for full size.
Particle Spawn Settings
Next, you will edit the modules in the Particle Spawn group. These are behaviors that apply to particles when they first spawn.
In the System Overview, click the Particle Spawn group to open it in the Selection panel.
Click image for full size.
Expand the Initialize Particle module. Under Point Attributes, locate the Lifetime Mode dropdown. Use the dropdown to select Random. This adds Minimum and Maximum fields to the Lifetime value. This will add some variation in how long each particle displays. Set the Minimum and Maximum fields to the following.
Niagara Overview
This page gives an overview of the Niagara VFX system in Unreal Engine 4.
Both Cascade and Niagara can be used to make visual effects (VFX) inside of Unreal Engine (UE4), but the way you use Niagara to create and adjust VFX is very different from how you use Cascade.
Niagara is Unreal Engine’s next-generation VFX system. With Niagara, the technical artist has the ability to create additional functionality on their own, without the assistance of a programmer. We have made the system as adaptable and flexible as possible, while making it easy to use and understand.
Core Niagara Components
In the Niagara VFX system, there are four core components:
Systems
Emitters
Modules
Parameters and Parameter Types
Parameters are an abstraction of data in a Niagara simulation. Parameter types are assigned to a parameter to define the data that parameter represents. There are four types of parameters:
Primitive: This type of parameter defines numeric data of varying precision and channel widths.
Enum: This type of parameter defines a fixed set of named values, and assumes one of the named values.
Struct: This type of parameter defines a combined set of Primitive and Enum types.
Data Interfaces: This type of parameter defines functions that provide data from external data sources. This can be data from other parts of UE4, or data from an outside application.
Niagara Stack Model and Stack Groups
Templates and Wizards
System Wizard
The System Wizard offers the following options for creating a new system:
New system from selected emitters: If you select this option and click Next, a list of available emitters displays. This list includes both existing emitters in your project and template emitters. Select the emitters you want to include in the new system, and click the green Plus sign icon (+) to add them. Then click Finish to create the system. If you choose an existing emitter, the system will inherit from those emitters. If you choose a template emitter, the system will have no inheritances. Also, the template emitter is an instance that can either be strictly local to that system, or you can save it as a separate emitter asset.
Click image for full size.
New system from template: If you select this option and click Next, you can choose from a list of templates that represent several commonly used effect systems. As with emitter templates, this list can be curated by art leads or creative directors. If you are new to UE4, this option will give you an example of how FX systems are built in Niagara.
Click image for full size.
Copy existing system: If you select this option and click Next, a list of existing systems displays. Choose one of them to copy, then click Finish.
Click image for full size.
Create empty system: If you select this option, your system contains no emitters or emitter templates. This option is useful if you want to create a system that is totally different from your other systems.
Click image for full size.
Emitter Wizard
The Emitter Wizard offers the following options for creating a new emitter:
New emitter from a template: If you select this option, you can choose from a list of templates that present several types of commonly used effects. In a large development studio, art leads or creative directors can curate the list of templates, ensuring that the company’s best practices are baked into the templates. These templates also offer a great starting place if you are new to UE4.
Click image for full size.
Inherit from an existing emitter: If you select this option, you can create a new emitter that inherits properties from an existing emitter. This option makes the new emitter a child of the existing emitter you selected. If you need many emitters that all have certain properties in common, this is a good option to choose. You can make changes to the parent emitter, and all child emitters will reflect those changes.
Click image for full size.
Copy existing emitter: If you select this option, you can create a new emitter that is a copy of an emitter you already created. This can be useful if you need to create several similar emitters. Click Next after selecting this option, and a list of available emitters displays. You can then choose which one you want to copy.
Click image for full size.
Niagara VFX Workflow
Create Emitters
When you create your emitters, you place modules in the stack that define how that effect will look, what actions it will take, and so on. In the Emitter Spawn group, place modules that define what will happen when the emitter first spawns. In the Emitter Update group, place modules that affect the emitter over time. In the Particle Spawn group, place modules that define what will happen when particles spawn from the emitter. In the Particle Update group, place modules that affect particles over time. In the Event Handlers group, you can create Generate events in one or more emitters that define certain data. Then you can create Listening events in other emitters which trigger a behavior in reaction to that generated event.
Create Systems
Combine individual emitters into one system, which displays the entire visual effect you want to create. There are modules specific to systems, and some elements of the editor act differently when you are editing a system instead of an emitter. When you are editing a system in the Niagara Editor, you can change or override any modules in any emitter included in the system. You can also manage timing for the included emitters using the Niagara Editor’s Timeline panel.
Create a Module
Module function flow
Modules accumulate to a temporary namespace, then you can stack more modules together. As long as they contribute to the same attribute, the modules will stack and accumulate properly.
When writing a module, there are many functions available for you to use:
Nodes that make boilerplate functions easier
Once you create a module, anyone else can use it.
Modules all use HLSL. The logic flow is as follows:
Remember that each module, emitter and system you create uses resources. To conserve resources and improve performance, look through the modules already included in Niagara to see if you can accomplish your goal without creating a new module. Dynamic Inputs can be used to great effect here.
Niagara Paradigms
Inheritance
With a flat hierarchy, you cannot effectively locate and use the assets you already have in your library, which leads to people recreating those assets. Duplication of effort lowers efficiency and increases costs.
Hierarchical inheritance increases discoverability and enables effective reuse of existing assets.
Anything inherited can be overridden for a child emitter in a system.
Modules can be added, or can be reverted back to the parent value.
This is also true with emitter-level behaviors such as spawning, lifetime, looping, bursts, and so on.
Dynamic Inputs
Dynamic inputs are built the same way modules are built.
Dynamic inputs give users infinite extensibility for inheritance.
Instead of acting on a parameter map, dynamic inputs act on a value type.
Any value can be driven by Graph logic and user-facing values.
Dynamic inputs have almost the same power as creating modules, but can be selected and dropped into the stack without actually creating new modules.
Existing modules can be modified and customized in many ways by using and chaining Dynamic Inputs; this can reduce module bloat and improve performance.
Micro Expressions
Any inline value can be converted into an HLSL expression snippet.
Users can access any variable in the particle, emitter, or system, as well as any HLSL or VM function.
This works well for small, one-off features that do not need a new module.
Events
Events are a way to communicate between elements (such as particles, emitters, and systems).
Events can be any kind of data, packed into a payload (such as a struct) and sent. Then anything else can listen for that event and take action.
Options you can use:
Run the event directly on a particle by using Particle.ID.
Run the event on every particle in a System.
Set particles to spawn in response to the event, then take some action on those particles.
Events are a special node in the graph (structs). How to use the Event node:
Add whatever data you want to it.
Add an Event Handler into the Emitter stack.
Set the options for the Event Handler.
There is a separate execution stack for events.
You can put elaborate graph logic into Event Handlers.
You can have a whole particle system set up, with complex logic, and then have a whole separate set of behaviors that occur when the event triggers.
Data Interfaces
There is an extensible system to allow access to arbitrary data.
Arbitrary data includes mesh data, audio, external DDC information, code objects, and text containers.
Data interfaces can be written as plugins for greater extensibility moving forward.
Users can get any data associated with a skeletal mesh by using a skeletal mesh data interface.
Houdini
Using Houdini, you can calculate split points, spawn locations, impact positions, impact velocity, normals and so on.
You can then export that data from Houdini to a common container format (CSV).
You can import that CSV into Niagara in your UE4 project.