SceneKit材质中的玻璃效果

时间:2017-10-13 01:42:42

标签: ios swift scenekit ios11 arkit

我想在SceneKit中制作玻璃效果。 我在谷歌搜索但没有完美的答案。 所以我找到了可以清楚解决问题的SceneKit战士。 我想要制作一张图片。

Final

它看起来应该是真实的。 玻璃效果,反射和阴影是这里的重点。 我已经有了obj和dae文件。

那么,有没有人帮助我?

1 个答案:

答案 0 :(得分:8)

创建SCNMaterial并配置以下属性并将其分配给SCNNode的瓶子几何图形:

.lightingModel = .blinn
.transparent.content = // an image/texture whose alpha channel defines
                       // the area of partial transparency (the glass)
                       // and the opaque part (the label).
.transparencyMode = .dualLayer
.fresnelExponent = 1.5
.isDoubleSide = true
.specular.contents = UIColor(white: 0.6, alpha: 1.0)
.diffuse.contents =    // texture image including the label (rest can be gray)
.shininess =           // somewhere between 25 and 100
.reflective.contents = // glass won’t look good unless it has something
                       // to reflect, so also configure this as well.
                       // To at least a gray color with value 0.7 
                       // but preferably an image.

根据场景中的其他内容,背景和使用的灯光,您可能需要调整上面的值以获得所需的结果。如果您想要一个没有标签的瓶子,请使用.transparency属性(将其内容设置为灰色)而不是.transparent属性。