smoke.ptf 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. self.reset()
  2. self.setPos(0.000, 0.000, 0.000)
  3. self.setHpr(0.000, 0.000, 0.000)
  4. self.setScale(1.000, 1.000, 1.000)
  5. p0 = Particles.Particles('particles-1')
  6. # Particles parameters
  7. p0.setFactory("PointParticleFactory")
  8. p0.setRenderer("SpriteParticleRenderer")
  9. p0.setEmitter("SphereSurfaceEmitter")
  10. p0.setPoolSize(10000)
  11. p0.setBirthRate(0.0500)
  12. p0.setLitterSize(10)
  13. p0.setLitterSpread(0)
  14. p0.setSystemLifespan(0.0000)
  15. p0.setLocalVelocityFlag(1)
  16. p0.setSystemGrowsOlderFlag(0)
  17. # Factory parameters
  18. p0.factory.setLifespanBase(2.0000)
  19. p0.factory.setLifespanSpread(0.2500)
  20. p0.factory.setMassBase(2.0000)
  21. p0.factory.setMassSpread(0.0100)
  22. p0.factory.setTerminalVelocityBase(400.0000)
  23. p0.factory.setTerminalVelocitySpread(0.0000)
  24. # Point factory parameters
  25. # Renderer parameters
  26. p0.renderer.setAlphaMode(BaseParticleRenderer.PRALPHAOUT)
  27. p0.renderer.setUserAlpha(0.13)
  28. # Sprite parameters
  29. p0.renderer.setTexture(loader.loadTexture('smoke.png'))
  30. p0.renderer.setColor(LVector4(1.00, 1.00, 1.00, 1.00))
  31. p0.renderer.setXScaleFlag(0)
  32. p0.renderer.setYScaleFlag(0)
  33. p0.renderer.setAnimAngleFlag(0)
  34. p0.renderer.setInitialXScale(0.0100)
  35. p0.renderer.setFinalXScale(0.0200)
  36. p0.renderer.setInitialYScale(0.0100)
  37. p0.renderer.setFinalYScale(0.0200)
  38. p0.renderer.setNonanimatedTheta(0.0000)
  39. p0.renderer.setAlphaBlendMethod(BaseParticleRenderer.PPBLENDLINEAR)
  40. p0.renderer.setAlphaDisable(0)
  41. # Emitter parameters
  42. p0.emitter.setEmissionType(BaseParticleEmitter.ETRADIATE)
  43. p0.emitter.setAmplitude(1.0000)
  44. p0.emitter.setAmplitudeSpread(0.0000)
  45. p0.emitter.setOffsetForce(LVector3(0.0000, 0.0000, 0.0000))
  46. p0.emitter.setExplicitLaunchVector(LVector3(1.0000, 0.0000, 0.0000))
  47. p0.emitter.setRadiateOrigin(LPoint3(0.0000, 0.0000, 0.0000))
  48. # Sphere Surface parameters
  49. p0.emitter.setRadius(0.0100)
  50. self.addParticles(p0)
  51. f0 = ForceGroup.ForceGroup('gravity')
  52. # Force parameters
  53. self.addForceGroup(f0)