mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 10:54:24 -04:00
updated direct/particle to import from panda3d.physics
This commit is contained in:
parent
0aa0f34c74
commit
07e73672db
@ -12,7 +12,7 @@ class ForceGroup(DirectObject):
|
|||||||
|
|
||||||
def __init__(self, name=None):
|
def __init__(self, name=None):
|
||||||
if (name == None):
|
if (name == None):
|
||||||
self.name = 'ForceGroup-%d' % ForceGroup.id
|
self.name = 'ForceGroup-%d' % ForceGroup.id
|
||||||
ForceGroup.id += 1
|
ForceGroup.id += 1
|
||||||
else:
|
else:
|
||||||
self.name = name
|
self.name = name
|
||||||
@ -65,7 +65,7 @@ class ForceGroup(DirectObject):
|
|||||||
def getNodePath(self):
|
def getNodePath(self):
|
||||||
return self.nodePath
|
return self.nodePath
|
||||||
|
|
||||||
# Utility functions
|
# Utility functions
|
||||||
def __getitem__(self, index):
|
def __getitem__(self, index):
|
||||||
numForces = self.node.getNumForces()
|
numForces = self.node.getNumForces()
|
||||||
if ((index < 0) or (index >= numForces)):
|
if ((index < 0) or (index >= numForces)):
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
"""
|
"""
|
||||||
Contains the global particle system manager
|
Contains the global particle system manager
|
||||||
"""
|
"""
|
||||||
from pandac.PandaModules import ParticleSystemManager
|
from panda3d.physics import ParticleSystemManager
|
||||||
|
|
||||||
particleMgr = ParticleSystemManager()
|
particleMgr = ParticleSystemManager()
|
||||||
|
@ -1,27 +1,27 @@
|
|||||||
from pandac.PandaModules import *
|
from pandac.PandaModules import *
|
||||||
|
|
||||||
from pandac.PandaModules import ParticleSystem
|
from panda3d.physics import ParticleSystem
|
||||||
from pandac.PandaModules import BaseParticleFactory
|
from panda3d.physics import BaseParticleFactory
|
||||||
from pandac.PandaModules import PointParticleFactory
|
from panda3d.physics import PointParticleFactory
|
||||||
from pandac.PandaModules import ZSpinParticleFactory
|
from panda3d.physics import ZSpinParticleFactory
|
||||||
#from pandac.PandaModules import OrientedParticleFactory
|
#from panda3d.physics import OrientedParticleFactory
|
||||||
from pandac.PandaModules import BaseParticleRenderer
|
from panda3d.physics import BaseParticleRenderer
|
||||||
from pandac.PandaModules import PointParticleRenderer
|
from panda3d.physics import PointParticleRenderer
|
||||||
from pandac.PandaModules import LineParticleRenderer
|
from panda3d.physics import LineParticleRenderer
|
||||||
from pandac.PandaModules import GeomParticleRenderer
|
from panda3d.physics import GeomParticleRenderer
|
||||||
from pandac.PandaModules import SparkleParticleRenderer
|
from panda3d.physics import SparkleParticleRenderer
|
||||||
#from pandac.PandaModules import SpriteParticleRenderer
|
#from panda3d.physics import SpriteParticleRenderer
|
||||||
from pandac.PandaModules import BaseParticleEmitter
|
from panda3d.physics import BaseParticleEmitter
|
||||||
from pandac.PandaModules import ArcEmitter
|
from panda3d.physics import ArcEmitter
|
||||||
from pandac.PandaModules import BoxEmitter
|
from panda3d.physics import BoxEmitter
|
||||||
from pandac.PandaModules import DiscEmitter
|
from panda3d.physics import DiscEmitter
|
||||||
from pandac.PandaModules import LineEmitter
|
from panda3d.physics import LineEmitter
|
||||||
from pandac.PandaModules import PointEmitter
|
from panda3d.physics import PointEmitter
|
||||||
from pandac.PandaModules import RectangleEmitter
|
from panda3d.physics import RectangleEmitter
|
||||||
from pandac.PandaModules import RingEmitter
|
from panda3d.physics import RingEmitter
|
||||||
from pandac.PandaModules import SphereSurfaceEmitter
|
from panda3d.physics import SphereSurfaceEmitter
|
||||||
from pandac.PandaModules import SphereVolumeEmitter
|
from panda3d.physics import SphereVolumeEmitter
|
||||||
from pandac.PandaModules import TangentRingEmitter
|
from panda3d.physics import TangentRingEmitter
|
||||||
|
|
||||||
import SpriteParticleRendererExt
|
import SpriteParticleRendererExt
|
||||||
|
|
||||||
@ -464,7 +464,7 @@ class Particles(ParticleSystem):
|
|||||||
t_b = seg.getTimeBegin()
|
t_b = seg.getTimeBegin()
|
||||||
t_e = seg.getTimeEnd()
|
t_e = seg.getTimeEnd()
|
||||||
mod = seg.isModulated()
|
mod = seg.isModulated()
|
||||||
fun = seg.getFunction()
|
fun = seg.getFunction()
|
||||||
typ = type(fun).__name__
|
typ = type(fun).__name__
|
||||||
if typ == 'ColorInterpolationFunctionConstant':
|
if typ == 'ColorInterpolationFunctionConstant':
|
||||||
c_a = fun.getColorA()
|
c_a = fun.getColorA()
|
||||||
@ -560,7 +560,7 @@ class Particles(ParticleSystem):
|
|||||||
file.write('# Tangent Ring parameters\n')
|
file.write('# Tangent Ring parameters\n')
|
||||||
file.write(targ + '.emitter.setRadius(%.4f)\n' % self.emitter.getRadius())
|
file.write(targ + '.emitter.setRadius(%.4f)\n' % self.emitter.getRadius())
|
||||||
file.write(targ + '.emitter.setRadiusSpread(%.4f)\n' % self.emitter.getRadiusSpread())
|
file.write(targ + '.emitter.setRadiusSpread(%.4f)\n' % self.emitter.getRadiusSpread())
|
||||||
|
|
||||||
def getPoolSizeRanges(self):
|
def getPoolSizeRanges(self):
|
||||||
litterRange = [max(1,self.getLitterSize()-self.getLitterSpread()),
|
litterRange = [max(1,self.getLitterSize()-self.getLitterSpread()),
|
||||||
self.getLitterSize(),
|
self.getLitterSize(),
|
||||||
@ -573,9 +573,9 @@ class Particles(ParticleSystem):
|
|||||||
print 'Litter Ranges: ',litterRange
|
print 'Litter Ranges: ',litterRange
|
||||||
print 'LifeSpan Ranges: ',lifespanRange
|
print 'LifeSpan Ranges: ',lifespanRange
|
||||||
print 'BirthRate Ranges: ',birthRateRange
|
print 'BirthRate Ranges: ',birthRateRange
|
||||||
|
|
||||||
return dict(zip(('min','median','max'),[l*s/b for l,s,b in zip(litterRange,lifespanRange,birthRateRange)]))
|
return dict(zip(('min','median','max'),[l*s/b for l,s,b in zip(litterRange,lifespanRange,birthRateRange)]))
|
||||||
|
|
||||||
|
|
||||||
def accelerate(self,time,stepCount = 1,stepTime=0.0):
|
def accelerate(self,time,stepCount = 1,stepTime=0.0):
|
||||||
if time > 0.0:
|
if time > 0.0:
|
||||||
@ -585,14 +585,13 @@ class Particles(ParticleSystem):
|
|||||||
else:
|
else:
|
||||||
stepCount = int(float(time)/stepTime)
|
stepCount = int(float(time)/stepTime)
|
||||||
remainder = time-stepCount*stepTime
|
remainder = time-stepCount*stepTime
|
||||||
|
|
||||||
for step in range(stepCount):
|
for step in range(stepCount):
|
||||||
base.particleMgr.doParticles(stepTime,self,False)
|
base.particleMgr.doParticles(stepTime,self,False)
|
||||||
base.physicsMgr.doPhysics(stepTime,self)
|
base.physicsMgr.doPhysics(stepTime,self)
|
||||||
|
|
||||||
if(remainder):
|
if(remainder):
|
||||||
base.particleMgr.doParticles(remainder,self,False)
|
base.particleMgr.doParticles(remainder,self,False)
|
||||||
base.physicsMgr.doPhysics(remainder,self)
|
base.physicsMgr.doPhysics(remainder,self)
|
||||||
|
|
||||||
self.render()
|
self.render()
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
from pandac.PandaModules import SpriteParticleRenderer
|
from panda3d.physics import SpriteParticleRenderer
|
||||||
|
|
||||||
|
|
||||||
class SpriteParticleRendererExt(SpriteParticleRenderer):
|
class SpriteParticleRendererExt(SpriteParticleRenderer):
|
||||||
@ -126,4 +126,3 @@ class SpriteParticleRendererExt(SpriteParticleRenderer):
|
|||||||
m.removeNode()
|
m.removeNode()
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
__all__ = ['physicsMgr']
|
__all__ = ['physicsMgr']
|
||||||
|
|
||||||
from pandac.PandaModules import PhysicsManager
|
from panda3d.physics import PhysicsManager
|
||||||
|
|
||||||
physicsMgr = PhysicsManager()
|
physicsMgr = PhysicsManager()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user