我正在尝试在SceneKit场景中动画化我的模型:
- 创建一个简单的立方体模型并将其导出为
cube.dae
- 为立方体创建一个简单的骨骼,并使用骨骼进行简单的旋转动画,然后将其导出到animation.dae
- 使用苹果样本Fox demo (WWDC 2015),我尝试将模型放在场景中,它可以工作。
- 旋转框-它可以工作,但应用动画后,立方体的位置会更改为(0,0,0)
也许有人已经成功地使用其他3D工具(Maya,Blender,3D Max)完成了骨骼动画和SceneKit?
要将.dae转换为.scn,选择DAE文件,然后在Xcode中选择"editor"-->"convert to scenekit scene format"。
代码: init model node
let characterScene = SCNScene(named: "game.scnassets/cube.scn")!
let characterTopLevelNode = characterScene.rootNode.childNodes[0]
characterNode.addChildNode(characterTopLevelNode)
let idleAnimation = CAAnimation.animationWithSceneNamed("game.scnassets/cubeWithMeshSkeletonAnimation.scn")!
idleAnimation.usesSceneTimeBase = false
idleAnimation.repeatCount = Float.infinity
characterNode.addAnimation(idleAnimation, forKey: "idle")
在场景中添加模型。
let scene = SCNScene(named: "game.scnassets/Level1.scn")!
gameView.scene = scene
gameView.playing = true
gameView.loops = true
scene.rootNode.addChildNode(unrealCharacter.characterNode)
let startPosition = scene.rootNode.childNodeWithName("startingPoint", recursively: true)!
unrealCharacter.characterNode.transform = startPosition.transform
unrealCharacter
是什么,它与立方体有什么关系? - mnuages