我正在使用
Swift SceneKit制作一些爆炸的3D文本.这是文字:
let text = SCNText(string: "Exploding Text",extrusionDepth: 5) let node = SCNNode(geometry: SCNText) scene.rootNode.addChildNode(node)
这是我的粒子系统:
let exp = SCNParticleSystem() exp.loops = false exp.birthRate = 5000 exp.emissionDuration = 0.01 exp.spreadingAngle = 180 exp.particleDiesOnCollision = true exp.particleLifeSpan = 0.5 exp.particleLifeSpanVariation = 0.3 exp.particleVeLocity = 500 exp.particleVeLocityVariation = 3 exp.particleSize = 0.05 exp.stretchFactor = 0.05 exp.particleColor = UIColor.blueColor() scene.addParticleSystem(exp,withTransform: SCNMatrix4MakeRotation(0,0))
现在,粒子从文本中心的单个点发出.有没有办法将粒子锁定到文本的表面,然后运行系统来模拟爆炸文本?
如果没有,这可以用任何其他几何对象如立方体完成吗?
解决方法
您可以使用指定发射器形状
particleSystem.emitterShape = aGeometry;
然后指定“birthLocation”
SCNParticleBirthLocationSurface
要么
SCNParticleBirthLocationVertex
从文本/立方体的表面或顶点发射