一直在研究Scenekit上的照明,现在我可以应用照明节点来照明某些物体,而我正在寻找一种从对象内部照明的方法。
例如,想象一下霓虹灯或将光投射到其他物体上的灯泡。
任何想法如何实现这一目标?
非常感谢。
最佳答案
正如@DavidRönnqvist在注释中提示的那样,有多种方法可以使对象看起来发光。您可以一起或单独执行这些操作-您可能需要调整如何将它们组合在一起以获得所需的效果。
emission
通道为对象赋予颜色或纹理,使其可以覆盖其他光源的阴影。 (如果使用纹理,则较亮的部分将看起来发光,如前述文档中的示例所示。)emission
材质属性只是防止对象因照明/阴影而变暗,而不会使其成为光源。要获取光源,您需要至少在包含对象的节点树中添加一个SCNLight
。根据您的场景,您可能只需要一个光源就可以逃脱。例如如果对象是灯泡,则可以将灯放在其中心并进行处理。 (那么,您可能还需要使用节点的类别位掩码和灯光,以确保灯光通过灯泡发出而不是被灯泡遮挡。)如果您有一个大型而复杂的霓虹灯,可能需要创建多个光源-否则,标牌附近物体上的照明将出示它是单点光源。 (如果附近没有任何东西被它点亮,那么单点灯可能就足够了。)
SCNParticleSystem
,因为它可以在整个几何曲面上生成粒子。 emission
进行救援。)关于ios - iOS SceneKit NEON 发光,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35723946/