Player Effects
Voeg trail particles toe aan de player
Overzicht
Voeg dust trail particles toe aan de player die alleen verschijnen wanneer de player snel beweegt:
Trail particles met GPUParticles3D
Speed-based emission - particles verschijnen alleen bij hoge snelheid
Dust cloud effect - particles zweven langzaam omhoog
GPUParticles3D Toevoegen
Open objects/Player.tscn
Selecteer de Player root node
Rechts-klik > Add Child Node > GPUParticles3D
Hernoem deze node naar ParticlesTrail
Sla de scene op
Scene hierarchy:
Player (CharacterBody3D)
βββ Capsule (imported scene)
βββ CollisionShape3D (CapsuleShape3D)
βββ AnimationPlayer
βββ ParticlesTrail (GPUParticles3D)Particle Material Setup
Maak een custom material dat geschikt is voor dust clouds - met toon shading en backlight voor diepte.
Selecteer de ParticlesTrail node
In de Inspector, vind Material Override
Klik op het dropdown > New StandardMaterial3D
Klik op de nieuwe StandardMaterial3D om de instellingen te openen
Diffuse en Specular Mode
Voor een cartoon-achtig stof effect gebruiken we Lambert Wrap diffuse en Toon specular.
Onder Shading, vind Diffuse Mode
Klik het dropdown en selecteer Lambert Wrap
Onder Shading, vind Specular Mode
Klik het dropdown en selecteer Toon
Metallic Settings
Verwijder metallic reflecties zodat het stof er natuurlijker uitziet.
Onder Metallic, zet Specular op 0.0
Backlight
Voeg een blauwe backlight toe - dit geeft de dust particles meer diepte en maakt ze beter zichtbaar.
Onder Backlight, klik op het kleurveld
In de color picker, zet:
R: 0.0
G: 0.522
B: 0.710
A: 1.0
Billboard Mode
Particles moeten naar de camera kijken, maar we behouden de schaal.
Enable billboard
Onder Billboard, vink Keep Scale aan
Grow en Proximity Fade
Laat particles iets groter worden en faden als ze dicht bij de camera komen.
Onder Grow, zet de waarde op 1.882
Onder Proximity Fade, zet Distance op 0.25
Emission Settings
Dust particles moeten continu kunnen verschijnen terwijl de player beweegt, maar we schakelen ze via script aan/uit.
Selecteer de ParticlesTrail node
In de Inspector, vind Emitting en vink deze UIT (particles starten uit)
Onder Time, zet Amount op 60 (veel particles voor een dicht stofspoor)
Physics Interpolation
Voor vloeiende beweging gebruik je physics-interpolatie.
In de Inspector bovenaan, vind Physics Interpolation Mode
Klik het dropdown en selecteer On
Shadow Settings
Dust particles hoeven geen schaduwen te werpen - dit bespaart performance.
Onder Shadows, vind Cast Shadow
Klik het dropdown en selecteer Off
Particle Behavior Setup
Bepaal nu hoe de particles zich gedragen met een ParticleProcessMaterial.
Selecteer de ParticlesTrail node
In de Inspector, vind Process Material
Klik op het dropdown > New ParticleProcessMaterial
Klik op de nieuwe ParticleProcessMaterial om de instellingen te openen
Particle Flags
Zorg ervoor dat particles naar boven wijzen met hun beweging.
Onder Particle Flags, vink Align Y to Velocity aan
Emission Shape
Particles moeten verschijnen rond de voeten van de player, niet uit één punt.
Onder Emission Shape, klik het dropdown
Selecteer Sphere
Zet Sphere Radius op 0.2
Direction
In tegenstelling tot coin en brick particles hebben dust particles geen specifieke richting - ze zweven gewoon omhoog.
Onder Direction, zet alle waarden op 0:
X: 0
Y: 0
Z: 0
Gravity
Voeg een minimale opwaartse kracht toe zodat dust particles langzaam omhoog zweven.
Onder Gravity, zet de waarden:
X: 0
Y: 0.1 (zeer lichte opwaartse kracht)
Z: 0
Particle Scale
Dust particles zijn groter dan de andere particles.
Onder Scale, zet Min op 0.075
Nu voegen we een scale curve toe voor een fade-in/fade-out effect.
Klik het [empty] veld naast Scale Curve
Selecteer New CurveTexture
Klik op de nieuwe CurveTexture
Klik op het [empty] veld naast Curve
Selecteer New Curve
Klik op de nieuwe Curve om de curve editor te openen
De curve bepaalt de grootte van particles over hun levensduur. We maken een curve die snel groot wordt en dan langzaam verdwijnt.
Rechts-klik in de curve editor
Selecteer Add Point
Plaats een punt vroeg in de curve (X rond 0.25)
Sleep dit punt omhoog tot Y = 1
De linker en rechter punten blijven op Y = 0
Particle Mesh
Gebruik een speciale dust-mesh voor een wolkachtig effect.
Selecteer de ParticlesTrail node
In de Inspector, vind Draw Passes
Onder Pass 1, klik het dropdown > Load
Navigeer naar res://meshes/dust.res
Selecteer dust.res en klik Open
Sla de scene op
Particles Triggeren via Script
Nu moet je de particles aan- en uitzetten op basis van de snelheid van de player. Update het Player.cs script.
Open scripts/Player.cs
Voeg eerst een exported field toe voor de trail particles.
Update nu de particles in
_PhysicsProcessop basis van snelheid. Bereken de horizontale snelheid van de player (X en Z, niet Y want dat is springen). Als de player sneller beweegt dan de helft van de maximale snelheid, zet je de particles aan. Anders schakel je ze uit.
Trail Particles Toewijzen in de Editor
Nu moet je de ParticlesTrail node toewijzen aan het Player script.
Open objects/Player.tscn
Selecteer de Player root node
In de Inspector, zie je nu een nieuwe property: Trail Particles
Klik op Assign en selecteer de ParticlesTrail node
Sla de scene op
Test de Player Trail Particles
Test met F5!
Je zou nu moeten zien:
Wanneer je stilstaat, verschijnen er geen particles
Wanneer je begint te lopen, verschijnen dust cloud particles bij je voeten
Particles zweven langzaam omhoog en verdwijnen
Hoe sneller je beweegt, hoe meer particles er zijn
Particles stoppen zodra je stopt met bewegen
Als de particles niet verschijnen:
Check of Emitting UIT staat in de ParticlesTrail node (moet uit starten)
Controleer of alle material settings correct zijn
Zorg dat dust.res in de meshes folder staat
Controleer of de script code geen errors heeft
Controleer of de ParticlesTrail node correct is toegewezen in de Inspector
Test door snel te bewegen - particles verschijnen alleen bij hogere snelheid
Complete Script
Laatst bijgewerkt