文档章节

游戏开发SpriteKit基础

j
 jun9152143
发布于 2017/06/27 14:00
字数 977
阅读 7
收藏 0
点赞 0
评论 0

       要想入行学习游戏的开发,基本的游戏框架还是需要了解清楚的,总的来说,游戏的开发是一个综合化的课程学习,不仅要求学习者要有一定的编程能力,更多的还是需要掌握基本的技术框架,搭建好一定的架构,这样才可以有效的进行开发,本文将为大家介绍的是SpriteKit框架的入门学习。

  苹果很早在iOS7系统中是内置了一个新的SpriteKit框架,使用这个框架它最主要用来开发2D游戏。目前已经支持的内容包括:精灵、很酷的特效(比如视频、滤镜和遮罩等这些特效),并且还是集成了许多物理库等一系列的东西。

  实际上在iOS7中附带了一个非常棒的SpriteKit示例工程,名字是叫Adventure。该示例工程是有一点的复杂,并不适合初学者,本文主要是给大家带来SpriteKit使用的初级教程。

  使用SpriteKit的优点:

  1、该框架它是内置到iOS中的,所以它并不需要去下载额外的库又或者其它一些外部依赖,因为它是由苹果开发的,它的支持和更新这一点是并不需要担心,它的更新还是比较好的支持的。

  2、并且它内置的工具是支持纹理和粒子。

  3、它也是可以让你做一些其它框架很难做到的事情,比如把视频当做精灵一样处理,又或者使用很酷的图形效果和遮罩。

  但是SpriteKit的缺点:

  1、当使用了SpriteKit,那么你讲会是被iOS生态圈所绑架,这也是将导致你无法很容易对你开发的游戏移植到Android上。

  2、需要知道的是SpriteKit是出于初级的阶段,它提供的相关功能还没有别的框架丰富,比如Cocos2D。最缺的东西就是暂不支持写自定义的OpenGL代码,相信在日后的更新可以更加的完善。

  该如何去选择多种框架?

  priteKitvsCocos2D-iPhonevsCocos2d-xvsUnity

  这个时候我们也想会去想“我该选择使用哪个2D框架呢?”最主要的还是根据自己的一个实际情况,下面是一些好的建议可以帮助学习者:

  1、若是一个初学者,并且只关注iOS,就使用内置的SpriteKit,它学习起来也算是比较简单,也可以是把工作给做好。

  2、如果想要自己写OpenGL代码,则是使用Cocos2D,或者其它框架,因为在目前SpriteKit它并不支持自定义OpenGL代码。

  3、如果要进行跨平台开发,则是可以选择Cocos2D-X或者Unity。Cocos2D-X它的表现是非常出色,它是可以用它来构建2D游戏。Unity则更加的灵活,可根据实际的需要来增加3D的一个效果。

  构建一个简单的helloworld工程

  下面我们就开始利用Xcode5内置的SpriteKit模板来构建一个简单的HelloWorld工程,大家可以跟着来实验一下。

  (1)首先是启动Xcode,然后是选择File\\New\\Project,接着选中iOS\\Application\\SpriteKitGame模板,然后单击Next,进行下一步的操作。

游戏开发SpriteKit基础_SpriteKit基础_游戏开发_开发框架_课课家

  (2)可以输入ProductName为SpriteKitSimpleGame,Devices就选择iPhone,接着单击Next:进行下一步的操作

x2

  (3)最后是选择工程保存的路径,点击Create。然后点击Xcode中的播放按钮来运行工程。稍等一下,可以看到如下运行画面:

x3

  要想学习好游戏的开发,先掌握好基础的游戏开发语言是比较重要的,然后是掌握熟悉游戏框架的使用,根据自己的实际需求来进行框架的选择。

© 著作权归作者所有

共有 人打赏支持
j
粉丝 0
博文 113
码字总数 84802
作品 0
南通
Sprite Kit编程指南(0)-简介

说明:此系列教程翻译自Apple开发者中心的官方文档《Sprite Kit Programming Guide》,利用Chome浏览器的自动翻译功能作初译,然后在一些语句不顺或容易造成误解的地方作局部修正。方便英文不...

长平狐 ⋅ 2013/08/21 ⋅ 0

超全面!iOS 和 Swift 开发资源整理

本文摘自同行说用户“星空”分享的文章,原文链接:http://codecloud.net/ios-and-swift-4383.html,如涉及版权问题请及时联系小编! 1.官方资料 The Swift programming language online官方...

程序猿联盟 ⋅ 2016/02/27 ⋅ 0

使用TexturePacker 制作动画的贴图 导出在 SpriteKit 中使用.

作为经常使用的工具, TexturePacker的确是很方便的打包贴图的工具. 打包可以减少DrawCall次数.对于提升性能有很大作用.而且作者很友好,如果是开发阶段使用, 可以申请免费的授权. 当然,如果产...

MrLovelyCbb ⋅ 2014/04/01 ⋅ 0

IOS-SpriteKit 播放序列帧-改变每帧位置问题

最近在尝试使用 IOS- SpriteKit 来开发一款2D游戏, 遇到了一个播放序列帧的问题无法解决.来此寻求帮助,麻烦大家了. [1] 首先我采用 atlas图集的方式,将一套动作的所有序列帧放入一个 folder...

DioCC ⋅ 2014/02/18 ⋅ 0

SpriteKit解坑系列(一):scene栈列表

最近做SpriteKit游戏,发现了好多坑,虽然是苹果开发的库,但是由于冷门,问题还是很多的。既然用了,我就解解相关的坑吧。 首先遇到的问题就是,scene场景加载的问题:一般情况是这样的 UI...

余成海 ⋅ 2015/12/09 ⋅ 0

SpriteKit(概述)

简介: SpriteKit,首先简单概述一下,使用优化的动画系统、物理模拟和事件来处理2D精灵游戏。Sprite本身具有精灵的意思,可以用SpriteKit来进行图形渲染与动画处理,提供了一个传统的渲染循环...

吃粑粑的毕教授 ⋅ 2017/10/03 ⋅ 0

FlappyRect

用SpriteKit制作的模仿 FlappyBird 的小游戏

红薯 ⋅ 2014/11/03 ⋅ 0

iOS 进度条--ProgressNode

ProgressNode 是一个用 Swift写成的圆形的计时进度条,用于 SpriteKit 游戏。 使用示例: let example = ProgressNode()example.radius = 20.0example.width = 5.0example.color = SKColor(......

sikkx ⋅ 2015/06/11 ⋅ 0

ios7主要新特性(功能代码)

1.改进的AutoLayout2.多任务支持3.SpriteKit(原生的二维游戏引擎)苹果想把所有的游戏引擎都干掉哦!4.UIKit Dynamics (物理仿真)5.AirDrop(蓝牙的一个扩展)6.二维码(图像的滤镜功能实...

哥特复心 ⋅ 2014/03/11 ⋅ 0

iOS Sprite Kit教程之真机测试以及场景的添加与展示

iOS Sprite Kit教程之真机测试以及场景的添加与展示 IOS实现真机测试 在进行真机测试之前,首先需要确保设备已经连在了Mac(或者Mac虚拟机)上,在第1.9.1小节开始,设备就一直连接在Mac(或...

大学霸 ⋅ 2015/07/27 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 28分钟前 ⋅ 0

大数据入门基础:SSH介绍

什么是ssh 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码...

董黎明 ⋅ 47分钟前 ⋅ 0

web3j教程

web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 汇智网最新发布的web3j教程,详细讲解...

汇智网教程 ⋅ 54分钟前 ⋅ 0

谷歌:安全问题机制并不如你想象中安全

腾讯科技讯 5月25日,如今的你或许已经对许多网站所使用的“安全问题机制”习以为常了,但你真的认为包括“你第一个宠物的名字是什么?”这些问题能够保障你的帐户安全吗? 根据谷歌(微博)安...

问题终结者 ⋅ 54分钟前 ⋅ 0

聊聊spring cloud gateway的RedisRateLimiter

序 本文主要研究下spring cloud gateway的RedisRateLimiter GatewayRedisAutoConfiguration spring-cloud-gateway-core-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/gateway/con......

go4it ⋅ 今天 ⋅ 0

169. Majority Element - LeetCode

Question 169. Majority Element Solution 思路:构造一个map存储每个数字出现的次数,然后遍历map返回出现次数大于数组一半的数字. 还有一种思路是:对这个数组排序,次数超过n/2的元素必然在中...

yysue ⋅ 今天 ⋅ 0

NFS

14.1 NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本 NFS数据传输基于RPC协议,RPC...

派派菠菜 ⋅ 今天 ⋅ 0

18.进入编辑模式 vim命令模式 实践

5.5 进入编辑模式 5.6 vim命令模式 5.7 vim实践 5.5 进入编辑模式: i 在当前字符前插入 I 在光标所在行的行首插入 a 在当前字符后插入 A 在光标所在行的行尾插入 o 在当前所在行的下一行插入...

王鑫linux ⋅ 今天 ⋅ 0

阻塞队列(2)--LinkedBlockingDeque底层实现

2.1 LinkedBlockingQueue是什么? 1.1 LinkedBlockingQueue是一个阻塞式的队列,继承自AbstractBlockingQueue,间接的实现了Queue接口和Collection接口。底层以链表的形式保存数据(双向链表,...

yokol ⋅ 今天 ⋅ 0

NFS介绍 NFS服务端安装配置 NFS配置选项

14.1 NFS介绍 14.2 NFS服务端安装配置 14.3 NFS配置选项 NFS介绍 NFS是Network File System的缩写;这个文件系统是基于网路层面,通过网络层面实现数据同步 NFS最早由Sun公司开发,分2,3,4三...

lyy549745 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部