- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(讲稿五unity脚本语法
(五)游戏开发平台
(1)游戏开发平台的种类
(2)各种游戏开发平台的适用范围
(3)各种游戏开发平台介绍,如Torque,Unreal,Unity
(4)游戏开发平台Unity的基本操作,游戏开发平台Unity的脚本
(5)三维模型在游戏开发平台中的使用
(6)游戏开发平台的各种元素:GUI,地形引擎,刚体,碰撞器,粒子系统等
(7)人工智能
(8)FPS游戏案例分析
Unity脚本语法
#pragma strict,#pragma downcast、#pragma implicit在一些Unity脚本的开始经常可以看到 #pragma strict,#pragma downcast、#pragma implicit指令,而有的Unity脚本则没有这些指令,那这些指令有什么作用呢?#pragma strict,此指令的含义是强制输入,也就是我们在声明变量时,需要精确的声明变量是什么类型,而不是让编译器来自己推测变量的类型,因此,也不能随便的使用一个随机的名称并让编译器来为你实例化此变量。例如,在使用此指令后,我们随意声明一个变量:? ?? ?? ? private var bobby;//是不可以的,而需要这样:? ?? ?? ? private var bobby : GameObject;//这个可以?通过使用#pragma strict,可以强制我们养成良好的编程习惯,但这在Unity中也不是必须要这样做。? ?而#pragma downcast和#pragma implicit指令,则是可以与#pragma strict指令搭配使用,从而做到“严中有松”,真是有点意思。先看#pragma implicit指令,它的意思是在使用#pragma strict指令,搭配此指令又可以含蓄的声明变量,例如:? ? #pragma strict? ? foo = 5; // 不可以? ? #pragma strict? ? var foo = 5; //可以? ???#pragma strict? ???#pragma implicit? ???foo = 5; // 通过使用#pragma implicit,此句是可以的。? ?? ?而#pragma downcast语句则允许在使用#pragma strict指令时,使变量可以从super(父类型)到sub(子)类型的转换,例如:? ???#pragma strict? ???var go : GameObject;? ? var clone : GameObject = Instantiate(go); //此语句是不可以的,因为Instantiate后返回//的物体类型是Object,而不是GameObject? ???#pragma strict? ???#pragma downcast? ???var go : GameObject;? ? var clone : GameObject = Instantiate(go); //此语句是可以的,使用了#pragma downcast? ?下面的语句也是可以的:??#pragma strict??var go : GameObject;??var clone : GameObject = Instantiate(go) as GameObject; //此语句也是可以的,因为使//用了类型转换as。
UnityScript(即javascript for Unity)的教程网上千千万,中文的也不少,但是讲Unity3D界面操作的多,讲UnityScript这个语言的少,同时对于UnityScript的描述部分,也是入门的教程多,对语言特性的描述少,能够成系统的我就根本没有找到过。连续的看了不少的Unity3D的文章,书籍,但是发现写代码的时候,对UnityScript的细节掌握仍然不甚了了,也就是对怎么写UnityScript效率更高,更加符合语言设计的目的,风格等事情并还没有清晰的认识。这个对于习惯写脚本的人来说,可能是常态,对于习惯C++我来说,简直难以忍受。
看到这样的名字,学过编程的人都知道我是模仿了经典的C语言教材,目的也是一样。,本文的目的不是再多写一个教程,而是希望对UnityScript这个语言进行一个较为深入细节,并且准确的描述。也就是说,相对于教程,本文会更加像一个语言说明书。同时,更不用说的就是,本文会甚少涉及Unity3D本身的界面操作,仅仅关注于UnityScript这个语言,不要希望通过本文学会Unity3D,但是,当你对Unity3D有了些基本的了解后,希望写一个大型游戏时,本文会对你该怎么写脚本,怎么写对脚本,怎么样写好脚
文档评论(0)