Scene Kit (翻译)

Scene Kit是苹果推出的3D渲染引擎框架,适用于iOS和OS X平台,结合OpenGL提供高级API。它支持骨架动画、粒子效果、物理模拟等功能。本文介绍了Scene Kit的基础概念,如结点、几何学对象、光、动画,以及如何使用Scene Kit进行游戏开发,包括输入源句柄处理和延迟着色技术的应用。
摘要由CSDN通过智能技术生成

前言

Scene Kit(SK)是WWDC12推出OS X平台的属于Cocoa类的3D渲染引擎框架。第一版已经有不错了并且后续又增加了一些强大的功能比如着色修改,限制。当苹果推出新系统Mavericks时又增加了骨架动画。今年,SK变得更加强大了,新增支持粒子效果,物理模拟,脚本事件,多程渲染,最重要得是支持iOS平台。

从一开始,我就发现SK最强大与区别是它与其他图形处理框架的整合,比如CI,CA还有SK。这意味着除了游戏工程师外一些有兴趣游戏开发的Cocoa开发也能对SK马上上手。

SK基础

SK以OpenGL为基石,对外开放高级API,你可以用OC或者swift创建出光,几何图形,物质,还有摄像机对象。如果你用过OpenGL早先没有着色器的版本,那估计会让你想起那段关于被系统限制而不能方便配置的不好的记忆。幸运的是,现在不会在这样了。高级配置对于大部分一般得任务已经足够了-甚至是更高级的东西比如动态着色还有层次效果。

甚至,SK还可以让你调用低级接口去调用OpenGL着色代码去进行渲染(GLSL)。

结点

除去光,几何体,物质还有相机,SK使用了节点层级来组织自身的内容。每个节点都包含位置,旋转度,还有相对父节点的缩放度,反过来也关联自身的父节点,如此特性递归到根节点。为了给其他对象中的某个一个3D坐标,每个节点被连接到节点群的某一个节点上。节点层级用如下的方法管理:

addChildNode(_:)
insertChildNode(_: atIndex:)
removeFromParentNode()

如同iOS以及OS X中管理视图层级的方式一样。

几何学对象

SK提出内置简单形状几何学对象比如像箱子,球体,飞机,圆锥体,对于游戏来说,大部分你要做的就是从一个文件中载入3D模型。你可以导入或者导出COLLADA文件采取关联文件名的方式引用文件:

let chessPieces = SCNScene(named: "chess pieces") // SCNScene?

若文件所包含得场景需要被完全展示,那它可以作为整个场景视图的场景。如果场景包含许多对象,并且这些对象只有部分是需要展示在屏幕上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值