当我使用
Swift语言创建一个新的Scene Kit游戏时,已经出现了一些结果:
原文链接:https://www.f2er.com/swift/319467.html我想要关闭照亮立方体的环境光,但我不知道如何做到这一点,因为没有明确附加到任何节点的任何光.
她的游戏视图控制器代码:
import SceneKit import QuartzCore class GameViewController: NSViewController { @IBOutlet var gameView: GameView override func awakeFromNib(){ // create a new scene let scene = SCNScene() // create and add a camera to the scene let cameraNode = SCNNode() cameraNode.camera = SCNCamera() scene.rootNode.addChildNode(cameraNode) // place the camera cameraNode.position = SCNVector3(x: 0,y: 0,z: 2) // create and add a 3d Box to the scene let BoxNode = SCNNode() BoxNode.geometry = SCNBox(width: 1,height: 1,length: 1,chamferRadius: 0.02) scene.rootNode.addChildNode(BoxNode) // create and configure a material let material = SCNMaterial() material.diffuse.contents = NSImage(named: "texture") material.specular.contents = NSColor.whiteColor() material.specular.intensity = 0.2 material.locksAmbientWithDiffuse = true // set the material to the 3d object geometry BoxNode.geometry.firstMaterial = material // animate the 3d object let animation: CABasicAnimation = CABasicAnimation(keyPath: "rotation") animation.toValue = NSValue(SCNVector4: SCNVector4(x: 1,y: 1,z: 0,w: M_PI*2)) animation.duration = 5 animation.repeatCount = MAXFLOAT //repeat forever BoxNode.addAnimation(animation,forKey: "") // set the scene to the view self.gameView!.scene = scene // allows the user to manipulate the camera self.gameView!.allowsCameraControl = true // show statistics such as fps and timing information self.gameView!.showsStatistics = true // configure the view self.gameView!.backgroundColor = NSColor.blackColor() } }