小编Jos*_*eph的帖子

Swift SceneKit照明和影响发射纹理

我正在开发一个关于太阳系的应用程序.我试图关闭发射纹理,光线照射到行星表面.但问题是,默认情况下,发射纹理总是显示发射点,无论光线是否存在.

我的要求简而言之:(我想隐藏发光点,在光线照射到表面的地方) 在此输入图像描述

override func viewDidLoad() {
    super.viewDidLoad()

    let scene = SCNScene()

    let earth = SCNSphere(radius: 1)
    let earthNode = SCNNode()
    let earthMaterial = SCNMaterial()
    earthMaterial.diffuse.contents = UIImage(named: "earth.jpg")
    earthMaterial.emission.contents = UIImage(named: "earthEmission.jpg")
    earth.materials = [earthMaterial]
    earthNode.geometry = earth
    scene.rootNode.addChildNode(earthNode)

    let lightNode = SCNNode()
    lightNode.light = SCNLight()
    lightNode.light?.type = .omni
    lightNode.position = SCNVector3(x: 0, y: 10, z: 5)
    scene.rootNode.addChildNode(lightNode)

    sceneView.scene = scene


}
Run Code Online (Sandbox Code Playgroud)

ios scenekit swift

4
推荐指数
1
解决办法
1118
查看次数

标签 统计

ios ×1

scenekit ×1

swift ×1