CPU Documentation: Video
GPU Documentation: Video
Are you tired of games where the aftermath of the battle disappears before the battle is even over? Do you want to give your players a sense of permanence and satisfaction as they look around at the mess their battle created?
Look no further! This particle system is designed to provide you with flexible, realistic blood droplets. It leverages the power of instanced mesh decals and randomization to give your battles a unique and bloody feel. Make each hit count and get that extra bit of oomph with gore that has impact.
The particles are lightweight and leverage expressions and curvature control to give each droplet impact.
Main Features
- Spawn hundreds of thousand of droplet decals that can persist for as long as you like
- Lightweight blueprint actor easily allows you to spawn different systems with direct access to 14 exposed parameters with no extra setup
- Works on angled surfaces
- GPU or CPU (GPU has more limitations but can do more effects like streaking)
- Track down wounded players
- Enemy AI example, with bone-attachment examples and a line-trace blood pool spawning example
- Updated and maintained, UE5 friendly.
FAQ
Why are there floating decals?
Your collision layers/filtering has not been set up.
See this video for a quick walkthrough: Video (only needs to be done once)
I've set my custom collision layer, but it's still not colliding?
You need to make sure you set the User Parameter inside the Niagara System for the collision channel
See this video for a quick walkthrough: Video (only needs to be done once)
I want to change the color of the blood, why is the particle color not affecting the decal?
Make a new material instance and set the blood colors here. Assign the new material instance to the desired systems. Particle color is not used as the blood material uses some tricks for more convincing droplet effects.
How come my GPU collision is not working?
Ensure you have distant fields enabled in your project, and use the global distant field visualizer to ensure there is enough resolution for the collision to function
See this video for a quick walkthrough: Video (only needs to be done once)
Update 4.0 Changelog
Due to some changes in the folder structure of materials, I recommend reinstalling this update from scratch.
- 4.0.1 - Content - Added new blueprint inside Blueprints->Debug which allows you to modify the particles live in the editor with construction script. This was originally removed from BP_Droplets as it caused memory bloating due to the number of references, but has been added back to easily preview parameter changes.
- 4.0.1 - Bug - Fixed some material parameter settings that caused the default splash to spawn black
- 4.0.1 - Bug - Repaired Legacy particle references and updated to support dynamic material parameters
- 4.0.1 - Bug - Fixed some material parameter settings that caused the default splash to spawn red
- 4.0.0 - Bug - Fixed some small issues with the emitters occasionally not spawning decals
- 4.0.0 - Content - Complete overhaul of the particle material system
- 4.0.0 - Content - Particles upgraded to support dynamic material parameters
- 4.0.0- Documentation - New documentation added
- 4.0.0 - Feature - Droplet color can now be set by the particle
- 4.0.0 - Feature - Emissive strength can now be controlled by the particle, fading intensity over time. This allows you to create interesting effects, like lava dripping, acidic alien blood etc.
- 4.0.0 - Feature - Roughness can now be adjusted over time, based on decal age, making fresh blood droplets wet and shiny, and old droplets being rough and dried out.
- 4.0.0 - Feature - These features can all be enabled/disabled inside the new material instances.
Update 3.0 Changelog
Update Overview Video
- 3.0.1 - BP_Droplets rewrite - BP_Droplets completely rewritten to use asynchronous loading of particles using soft references, drastically reducing initial load time when spawning the particles for the first time.
- 3.0.1 - BP_Droplets reduced blueprint reference size by 100x (300mb to 300kb). This drastically reduces the cost of spawning new droplet systems by using soft references to handle particle system selection.
- 3.0.1 - Bug Fix - Initial "pause" experienced when spawning particles for the first time should be resolved. All particles now have set bounds of -1000 to +1000 X/Y/Z instead of being infinite
- 3.0.2 - BP_FirstPerson_Modified - Added a brand new level ("DemoMap_AIExample"), where you can shoot and kill AI targets. This map is a starting point to teach you how to attach particles to bones, as well as using the linetrace function to spawn blood pools. The first-person content is modified to damage and spawn the emitters attached to the bones of the enemies.
- 3.0.2 - BP_EnemyExample - Charges at the player, can be damaged and killed. Spawns a blood pool particle on death using a line trace to find the ground position.
- 3.0.2 - Textures - Albedo noise tiling modified, normal and roughness maps added for more realistic blood droplets.
- 3.0.3 - Housekeeping: Removed redundant parameters, increased default normal size, and renamed original particles to legacy for clarity
- 3.0.4 - Bug - Fixed issue with streaks not working on GPU particles
- 3.0.4 - Bug - Fixed an input issue for the FPS demo controller
- 3.0.4 - Bug - Fixed a material reference issue
- 3.0.4 - Documentation - New documentation added
Update 2.0
- Angle-based CPU collisions - advanced Niagara module scripts now calculate the collision normal allowing decals to spawn on any surface or wall! You are no longer limited to flat surfaces!
- Collision filtering in 4.25 and 4.26 - You can now assign the particles to a custom collision channel making it one simple step to disable collision between the blood droplets and your enemies!
- Bonus GPU particle variation - A new particle type was added to 4.26, these particles use distant fields to calculate the collision and come with advanced streaking effects. These particles have limitations at long distances. See the documentation video for more information before purchasing.
Limitations
GPU particles only work with distant fields and the streaks will only appear on angles <90 degrees due to how collision validated is calculated. The GPU particle variants are only suitable for close-range or indoor situations. Long-range and accurate decals can be generated using the CPU particles and require less scene setup for a good result.
Disclaimer(VR users): Works in VR for 4.26+ projects only. Niagara Particles incorrectly render for Stereoscopic VR in 4.24 and 4.25 More info: https://issues.unrealengine.com/issue/UE-78764