我正在尝试使用SceneKit,并尝试使用它制作迷宫式的游戏。但是,问题之一是当您在盒子(管子,球体等)中移动时,盒子的投影消失了。
我已经多次浏览了文档,或者措辞不正确或不正确。
您如何填充盒子的内容,以便在移动盒子时会陷入黑暗?
谢谢!
最佳答案
SCNMaterial
具有isDoubleSided
属性,该属性是:
一个布尔值,该值确定SceneKit是否应同时渲染两个
表面的正面和背面。
默认情况下,此设置为false
,这意味着您的内容仅显示在一侧,例如外。
如果将此属性的值更改为YES,则SceneKit会同时渲染
每个多边形的正面和背面。
这样,可以实现双面渲染的示例,如下所示:
func createBoxNode(){
//1. Create An SCNNode With An SCNBox Geometry
let boxNode = SCNNode(geometry: SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0))
//2. Set The Colour Of All Sides To Cyan
boxNode.geometry?.firstMaterial?.diffuse.contents = UIColor.cyan
//3. Enusre That Both Sides Are Rendered
boxNode.geometry?.firstMaterial?.isDoubleSided = true
//4. Place Our BoxNode & Add It To The Hierachy
boxNode.position = SCNVector3(0, 0, -1.5)
self.augmentedRealityView?.scene.rootNode.addChildNode(boxNode)
}
希望能帮助到你...