TvT粒子系统如何调整属性值?比如控制大小,控制透明度等

发布于 2025-01-07 14:13:36

官方示例中:火F特效:1.如何控制粒子数量,原版有些稀疏?2.如何动态调整整体火焰大小?3.如何动态调整整体火焰的透明度,想实现逐渐消失的灭火特效。

查看更多

关注者
0
被浏览
91
1 个回答
地虎降天龙
地虎降天龙 图形社区官方人员 2025-01-07
也许宇宙中最反直觉的真理是,你给别人的越多,你得到的也越多。

这些精确的动态调整 控制 都需要在例子系统中 做精确 调整
具体引用的库在:
https://github.com/mkkellogg/Photons2

补上你之前需要的增加和删除方法:

const addFire = () => {
    const scale1 = 2.6
    const flamePosition1 = new THREE.Vector3(-1.121, 0.88, 4.723)
    PhotonsManager.addParticleSystem(setupEmbers(scale1, flamePosition1))
    PhotonsManager.addParticleSystem(setupBaseFlame(scale1, flamePosition1))
    PhotonsManager.addParticleSystem(setupBrightFLame(scale1, flamePosition1))
    PhotonsManager.addComponent(setupLights(flamePosition1, 20))
}

const removeFire = () => {
    PhotonsManager.particleSystems[3].particleSystemRenderer.dispose()
    PhotonsManager.particleSystems[4].particleSystemRenderer.dispose()
    PhotonsManager.particleSystems[5].particleSystemRenderer.dispose()
    PhotonsManager.particleSystems.splice(3, 3)

    PhotonsManager.componentContainer.components[1].dispose()
    PhotonsManager.componentContainer.components.splice(1, 1)
}

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览