企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# **程序化生成的风格化火焰** ## **零、需求分析** **H子**:**AOI**老师!有个问题,我想要做火焰特效,但是我对特效绘制有点不在行。而且购买或者的话,总是很难得到足够数量的素材,风格的协调也又点问题呢。 **AOI**:你可以找熟悉特效朋友帮忙画适合风格的素材嘛。 **H子**:但是我没有朋友呢。 **AOI**:...... **H子**:嗯??? **AOI**:好吧,程序就是我们最好的朋友。来尝试做程序化的火焰特效吧。 还是惯例的先进行需求分析。 首先确定一下火焰到底是什么。 **H子**:唔~火焰嘛,是一种能量发光发热的表现。 **AOI**:嗯,具体形态上的表现呢。 **H子**:会扩张并且上升,还会摇曳,上升过程还会收缩......唔,大概是这样子?还有就是焰心和外焰的温度不同导致颜色不同? **AOI**:对了,对于外观虽然说是有那么一套整理出来的定义,但是实际上还是根据实际情况有不同的主观理解。具体的就自己感性的或者理性的去认识吧。 首先把需求整理一下: 1. 火焰的形态 2. 能量(燃料)的中心 3. 火焰的摇曳 4. 燃烧范围的限制 5. 能量的上升 6. 火焰的颜色定义 可以从中见到,火焰的形态,能量中心,摇曳效果等的,都有对纹理的依赖。所以根据实际情况,我们要进行程序化生成的软件选择。虽然Blender确实可以程序化生成一部分的纹理,但是在便利性上依旧不如SubstanceDesigner,而且,使用SubstanceDesigner也可以暴露出参数,在游戏引擎里面根据需要生成和编辑随机纹理,而无需回到SubstanceDesigner的流程。 因此选定**SubstanceDesigner**作为创建纹理的软件。而游戏引擎方面则使用Unity以及可视化Shader开发插件**ShaderForge**进行火焰特效的制作。