[转载]unity3d学习2

一个偶然的机会,认识了unity3d,这也是我第一个接触到的3d引擎,与我想象中有很大的区别。我印象里一直以为是u3d也仅仅是个SDK而已,结果却令我大为欢喜,u3d居然都做成了自己的一套IDE,有点像最早前玩的韩国的一个2D游戏引擎一样方便

简单介绍下u3d:
高效渲染,跟虚幻2引擎相同级别,简单物理引擎,高度聚合的脚本。 
模型导入:支持3Ds,FBX等格式直接导入(太方便了,还记得当年自己写D3D时候导个3ds累得半死,最后都搞成x文件玩);贴图材质自动转换为u3d的格式,相当方便。 
脚本语言:js,c#,boo,其实3个没区别,语法而已,但是js是主打语言,写的方便;相信其他两个语言也只是为了吸引更多开发者而已。因为官网论坛人们都用js写,改成其他语言太麻烦,不仅是语法的麻烦,更主要的是这三个语言间有些函数用法不同,实属无奈。 
跨平台的开发:最早是Mac的引擎,现在进军了iphone市场,然后有兼容了windows,实在强大。(note:iphone不支持很多函数和组件,比如Terrian地形,刚得知的,其他以后再note了) 
物理引擎:简单,实用的物理引擎,高质量的粒子系统,简单但却逼真。

    有了以上几点,我开发注意力就可以完全集中在逻辑编写上了,不像以前搞d3d和openGL,导模型,排列模型搞的满头大汗,逻辑代码都没来得及写。。。 
最后再赞一个unity3d,然后开始研究与开发我的第一个赛车游戏了。

 

原来一直在往实例化类的地方考虑调用,发现实例化步骤都被封装了,无从下手,受到别人提醒,可以用static静态变量访问对方数据。

u3d的js脚本其实也只是自动封装成了类,不像c#,boo那样在代码里显示这个类的申明过程,但是js文件也是一个文件一个类的,其类名就是他的文件名,所以直接 

 
1static public var iTest:int = 102;

然后在目标文件中直接调用

1

print(test1.iTest);

 

posted @ 2012-03-28 12:23  火腿骑士  阅读(243)  评论(0编辑  收藏  举报