Mit dem unten gezeigten Code kann ich eine Kugel in meiner Szene.mit einem blauen Hintergrund ... Ich bin neu in SceneKit in iOS.Ich möchte wissen, wie wir dieses Objekt bewegen können (Ziehen Sie die Kugel) an eine andere Position (Drop).Scenekit - wie kann ich Drag & Drop
override func viewDidLoad() {
super.viewDidLoad()
sceneView = SCNView(frame: self.view.frame)
sceneView.scene = SCNScene()
self.view.addSubview(sceneView)
let groundGeometry = SCNFloor()
groundGeometry.reflectivity = 0
let groundMaterial = SCNMaterial()
groundMaterial.diffuse.contents = UIColor.blueColor()
groundGeometry.materials = [groundMaterial]
ground = SCNNode(geometry: groundGeometry)
let camera = SCNCamera()
camera.zFar = 10000
self.camera = SCNNode()
self.camera.camera = camera
self.camera.position = SCNVector3(x: -20, y: 15, z: 20)
let constraint = SCNLookAtConstraint(target: ground)
constraint.gimbalLockEnabled = true
self.camera.constraints = [constraint]
let ambientLight = SCNLight()
ambientLight.color = UIColor.darkGrayColor()
ambientLight.type = SCNLightTypeAmbient
self.camera.light = ambientLight
let spotLight = SCNLight()
spotLight.type = SCNLightTypeSpot
spotLight.castsShadow = true
spotLight.spotInnerAngle = 70.0
spotLight.spotOuterAngle = 90.0
spotLight.zFar = 500
light = SCNNode()
light.light = spotLight
light.position = SCNVector3(x: 0, y: 25, z: 25)
light.constraints = [constraint]
let sphereGeometry = SCNSphere(radius: 1.5)
let sphereMaterial = SCNMaterial()
sphereMaterial.diffuse.contents = UIColor.greenColor()
sphereGeometry.materials = [sphereMaterial]
sphere1 = SCNNode(geometry: sphereGeometry)
sphere1.position = SCNVector3(x: -15, y: 1.5, z: 0)
sceneView.scene?.rootNode.addChildNode(self.camera)
sceneView.scene?.rootNode.addChildNode(ground)
sceneView.scene?.rootNode.addChildNode(light)
sceneView.scene?.rootNode.addChildNode(sphere1)
}
Hai überprüfen .. Danke für den Code..Aber es funktioniert nicht gut ... Sphere ist SCNNode und ich kann SKAction nicht geben (Ich importierte SpriteKit und versuchte SKAction) und auch Problem mit der Position: Wie ich bekomme Position in SCNVector 3 ..conversion es zu CGPoint fehlgeschlagen .. – Mee
Mee .. sorry für die Bereitstellung von Code für SpriteKit anstelle von SceneKit. Ich hätte darauf achten müssen. – Jaideep
können Sie den Code für Scenekit aktualisieren – madLokesh