swift - 在 SceneKit 中制作发光节点

标签 swift scenekit glow

我有一个节点(只是一个具有 SCNCapsule 几何结构的简单节点,只是为了更具体),我希望它像星球大战光剑一样发光:

image

我尝试添加一个具有相同几何形状、稍大一点、0.5 的不透明度和不同颜色的子节点,但这并不是我想要的。还有另一种方法吗?

最佳答案

我发现在 scenekit 中使用 cifilters 几乎没有用。除非场景极其简单,否则表演将是垃圾。

如果您打算对此进行动画处理,最简单的方法是将其设为白色。我使用两个动画粒子发射器。一个红色的、附加的、烟雾纹理只是为了给它一些红色/白色的覆盖,让粒子在局部空间中存在 15-30 秒。第二个不断吐出较小的,以产生脉动效果,但生命周期很短。

如果你看一下苹果飞船的演示,引擎的 react 堆粒子系统就像一把很短的光剑。你只是想让它更长,颜色不同。通过使用烟雾/云系统为您提供覆盖,您不需要来自主发射器的那么多粒子。一旦它发光,移动它就很容易了,因为所有的粒子都在局部空间中。您只需移动节点。虽然这不是最适合性能的方式,但它是最好看的方式。你可以有粒子 Spark ,运动期间发射的粒子以产生拖尾效果,并且脉冲,生动的外观将比你可以掀起的任何过滤器/发射/反射/着色器更好。与苹果演示中的 react 器系统一样,它看起来很棒。如果你能用灯光/发射/着色器制作出在 3d 场景中看起来一样好的东西,我会感到惊讶。

关于swift - 在 SceneKit 中制作发光节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31230377/

相关文章:

ios - 如何为 UILabel 应用 2 行限制,ios

Objective-C API : Can an NSNumber become an Int in Swift?

swift - 将 GIF 添加到 Swift Playground

swift - 关闭 View Controller 后,OSX deinit 不会被调用

ios - 在物理模拟过程中节点的位置看起来恒定

objective-c - SceneKit 检测给定区域的触摸

Java图像/文本脉动发光效果(图形)

cocoa - 按钮周围发光

swift - SCNKit : Hit test doesn't hit node's dynamically modified geometry

带外发光的 Android 按钮