在国内,如果你没有听说过《王者荣耀》,那你一定是古董级的人物了。
可以断定,有unity的功劳。
有的小伙伴可能会有疑问,为啥不用JavaScript呢在JavaScript这么火爆/span>
其实unity使用的JavaScript和我们做web开发使用的JavaScript非常不同,或者我们干脆分别称呼为unityScript和JavaScript也不为过。
这里在segmentfault的看到的一段:
- unity中的js与其说是js,不如说是Unity Script。unity中的js是会经过编译的,其性能和本地速度差不多。在官方教材《unity 4.x从入门到精通》中unity称C#,Boo,JS的性能是差不多的。
- unity中的js脚本是可以和C#脚本等值替换的,所以自然也有一大堆数据类型,对象继承等传统语言及OOP的概念。不过这么写也是可以的,因为编译器会自动理解成。但是其他数据类型比如、就不行了,必须在声明变量时指定数据类型。
- 自然,很多标准js中的特性在unity中也不支持,比如高阶函数,闭包等。
- Unity3D中的Math对象叫做Mathf。
- Unity中的js可以直接调用Mono,C#封装的dll等。
- Unity中的调试语句用Debug.Log。
- 每行后面必须有分 。
总之,Unity中的js是会在运行前被编译成本地代码的。和标准js仅是写法比较相似,内在是完全不同的。比如js是非阻塞的,而unity中的js是阻塞的;js是动态语言,而unity中的js则是不折不扣的静态语言。
总之,使用unity + C#来进行开发。
二.游戏入门
关于游戏,有以下几个特点:
- 把游戏想象成一个动画片,它是一帧一帧播放的
- 它的逻辑是可以变化的
- 你的程序控制它的画面
综合来看,游戏包括两大要素:逻辑、显示。
(一)什么是逻辑
简单来说,就是游戏是怎么控制的,玩法是什么样的。
- 游戏逻辑:游戏的玩法,用户的输入等。
- AI:NPC,自动寻路,追逐敌人等。
- 物理运算:碰撞,速度,加速度,重力等物理计算。
(二)什么是显示
顾名思义,显示就是把游戏的画面、内容展现给玩家。
- 动画系统:控制游戏动画的播放。
- 底层渲染:告诉硬件该怎么样把图像显示(渲染)出来。
用一幅图归纳:
四.unity介绍
上面说过,原生开发游戏耗时耗力,想象一下,整个游戏从底层的渲染,一直到上层的动画声音,简直要了命。而且有一点,原生开发不利于组件的重用。
有些东西,在A游戏上可以用,在B游戏上也可以使用。那么我们为什么不把这些可以重用的部分提取出来,到时候再开发其他游戏的时候直接调用就可以了啊。
基于这么一种“偷懒”的思想,Duang~,游戏引擎就诞生了。
游戏引擎减少了重复开发,降低了技术门槛,对于那些游戏开发者简直是“神器”。现在优秀的游戏引擎有很多非常有用的模块。

ok,今天就先到这里。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!