Kollision bei Devil Particle System - Wie?
Übersicht

![]() |
faeXBetreff: Kollision bei Devil Particle System - Wie? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
ich habe mir das Particle Engine Devil Particle System heruntergeladen. Die Bluteffekte die ich dafür "designed" habe laufen flüssig und sehen toll aus. Allerdings möchte ich das bei Collision mit der Scene der jeweilige Partikel "kleben" bleibt, sich also nicht mehr bewegt. Mit der SetTemplateFloor Funktion konnte ich zwar einstellen, dass es dann auf dem Boden liegen bleibt (das klappt aber nur wenn die Map auf einer konstanten Höhe bleibt, was nicht der Fall ist), aber ich möchte, dass es dann einfach an Wänden hängen bleibt. Ich habe in der Manuel etwas über das System gelesen, wurde daraus auch nicht so richtig schlau und als ich mir den Code angesehen habe, hab ich versucht dort herauszufinden wie ich das erweitern könnte, aber ich schaffe es nicht, dass eine Kollision erkannt wird. Danke im Voraus ![]() EDIT: Das Blut Code: [AUSKLAPPEN] t[2] = CreateTemplate() SetTemplateEmitterBlend(t[2], 1) SetTemplateInterval(t[2], 1) SetTemplateParticlesPerInterval(t[2], 10) SetTemplateMaxParticles(t[2], 5) SetTemplateEmitterLifeTime(t[2], 10) SetTemplateParticleLifeTime(t[2], 1000, 1000) SetTemplateTexture(t[2], "Particle-087.png", 2, 3) SetTemplateVelocity(t[2], -.05, .05, -.05, .05, -.05, .05) SetTemplateGravity(t[2], .012) SetTemplateAlphaVel(t[2], True) SetTemplateFloor(t[2],-6.5,0,.1,0, True) SetTemplateSize(t[2], .4, .4) SetTemplateColors(t[2], $FF0000, $880000) Der umprogrammierte SetTemplateFloor: Code: [AUSKLAPPEN] Function SetTemplateFloor(template, floor_y#, floor_bounce_x# = 0.5, floor_bounce_y# = 0.5, floor_bounce_z# = .5, Static = False) tmp.Template = Object.Template(template) tmp\floor_y# = floor_y# tmp\floor_bounce_x# = floor_bounce_x# tmp\floor_bounce_y# = floor_bounce_y# tmp\floor_bounce_z# = floor_bounce_z# tmp\floor_static = static End Function Änderung in UpdateParticles: Code: [AUSKLAPPEN] If p\y# <= p\emitter\tmp\floor_y# p\xv# = p\xv# * -p\emitter\tmp\floor_bounce_x# p\yv# = p\yv# * -p\emitter\tmp\floor_bounce_y# p\zv# = p\zv# * -p\emitter\tmp\floor_bounce_z# If p\emitter\tmp\floor_static Then p\y = p\emitter\tmp\floor_y# EndIf |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group