技术细节:配置Extreme Particles - FrankYang6921/extreme-particles Wiki

Extreme Particles有一些配置指令,你可以通过/exp configure <项目> <值>在设置这些配置项。这里介绍它们的用途。

"setParticleConstructionPaused"

当设置为true时,暂时禁用任何的粒子构造。这意味着任何Extreme Particles粒子构造指令仍然会继续工作,但不会产生任何效果。你可能会问:这有什么用?我用这个模组不就是为了创建粒子的吗?确实是这样。但是这个指令有以下两个用处:第一,当你不小心创建了一个高频红石,使得大量粒子一直被创建,你可以使用这个指令来禁用粒子构造,以此来给你机会排除故障。第二,当你用Extreme Particles制作了一个红石音乐,你可以先禁用粒子构造,以此获得更清晰流畅的音频。

"setParticleConstructionAsync"

当设置为true时,使得所有的粒子构造与动画被异步执行。这意味着,任何Extreme Particles指令的执行不再会影响Minecraft的逻辑性能(注意,不是渲染性能)。

"setParticleLifeAnimationFixed"

当设置为true时,给所有粒子统一的消失动画。如果你有观察过末影棒粒子消失时的动画,你会发现它在即将消失时没有你指定的颜色和透明度。这在制作一些特效时会是恼人的。因此我设计了这个功能。当启用时,所有粒子会在它们寿命的最后一秒缩小并淡出。Pro's Tip!这个功能时通过额外的守护线程与定时器来实现基于软件的动画,这意味着使用它会带来额外的性能损耗。在有极其大量的粒子死亡时,可能会占用大量CPU时间,并导致游戏卡顿甚至崩溃。在AMD Ryzen 7 4800H上的测试表明它完全可以流畅应对16384个粒子。

"setRendererUnsafelyOptimized" (已于0.5.5弃用)

当设置为true时,使得粒子渲染器的渲染流程被精简化。这会使得粒子的亮度不随光照而改变,部分粒子(如红石粉粒子)还会出现一些渲染异常。但是,这是值得的,因为它可以很大程度上优化极端情况下的粒子渲染性能,对于粒子特效来说很有用。如果它没有让你的粒子正常渲染,关闭它。

"setGlobalAnimationTargetFrameRate"

这个参数可设置为任意的双精度浮点值。它决定全局动画的帧率。这些动画包括函数曲线动画、动画引擎和粒子消失动画。所有动画都是基于软件的,这意味着这个参数不应被设定至60或以上,以避免不必要的性能损失。