文档章节

游戏开发SpriteKit基础

j
 jun9152143
发布于 2017/06/23 15:08
字数 1006
阅读 12
收藏 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

没有更多内容

加载失败,请刷新页面

加载更多

下一页

两道面试题,带你解析Java类加载机制

在许多Java面试中,我们经常会看到关于Java类加载机制的考察,例如下面这道题: class Grandpa{ static { System.out.println("爷爷在静态代码块"); }} cl...

1527 ⋅ 25分钟前 ⋅ 0

SpringCloud(Data Flow)

dataflow-server

赵-猛 ⋅ 35分钟前 ⋅ 0

深入理解Java虚拟机

这本书我读到第8章,之后就是在读不下去了。 读到后面是一种痛苦的体验,太多的东西是不全面的,大量的专有名词是没有解释的,读到最后很多东西仅仅是一个侧面,所以我觉得,这本书不适合初学...

颖伙虫 ⋅ 41分钟前 ⋅ 0

B树和B+树的总结

B树 为什么要B树 磁盘中有两个机械运动的部分,分别是盘片旋转和磁臂移动。盘片旋转就是我们市面上所提到的多少转每分钟,而磁盘移动则是在盘片旋转到指定位置以后,移动磁臂后开始进行数据的...

浮躁的码农 ⋅ 43分钟前 ⋅ 0

NanoPi NEO core/ Ubuntu16.04单网卡配置3个IP地址(2个静态,1个动态)

配置 root@NanoPi-NEO-Core:/etc/network# cat interfacesauto loiface lo inet loopbackallow-hotplug eth0iface eth0 inet static address 172.31.188.249 netmask 255.......

SamXIAO ⋅ 今天 ⋅ 0

三步为你的App集成LivePhoto功能

摘要:LivePhoto是iOS9新推出的一种拍照方式,类似于拍摄Gif图或录制视频片段生成图片。如果没有画面感,可以联想《哈利波特》霍格沃茨城堡的壁画,哈哈,很炫酷有木有,但坑爹的是只有iphone6S以...

壹峰 ⋅ 今天 ⋅ 0

centos7 git安装

由于centos中的源仓库中git不是最新版本,需要进行源码安装。 1、查看yum仓库git信息 [root@iZm5e3d4r5i5ml889vh6esZ zh]# yum info gitLoaded plugins: fastestmirrorLoading mirror s...

xixingzhe ⋅ 今天 ⋅ 0

input file 重复上传同一张图片失效的解决办法

解决办法 方法一:来回切换input[type='file']的type属性值,可以是‘text’,'button','button'....,然后再切换回来‘file’ 方法二:每次取消图片预览后,重置input[type='file']的value的...

时刻在奔跑 ⋅ 今天 ⋅ 0

Mahout推荐算法API详解

前言 用Mahout来构建推荐系统,是一件既简单又困难的事情。简单是因为Mahout完整地封装了“协同过滤”算法,并实现了并行化,提供非常简单的API接口;困难是因为我们不了解算法细节,很难去根...

xiaomin0322 ⋅ 今天 ⋅ 0

WampServer默认web服务器根目录位置

安装WampServer之后的web服务器根目录默认位置在WampServer安装目录下的www:

临江仙卜算子 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部