C#程序员整理的Unity 3D笔记(三):Unity3D工具和VS 工具

      对于C#程序员而言,Visual Studio这个宇宙最牛的IDE肯定非常熟悉,编码、设计、代码着色等常用功能,用的还是很不错的,效率不是一般的高。本文就以VS IED作为参照物,进行和Unity IDE对比。

image    vs      image

 

 

Unity IDE

VS IDE

生产商

Unity科技(美国)

微软 (美国)

用户群体

游戏从业者

跨平台App开发者

.NET从业者(俗称微软阵营)

少数Web开发者

定价

Basic版本免费

Pro版本1500美金/平台

VS Express 免费

VS 2013 社区版免费

VS 旗舰版 3000美金

设计视图

有,且非常强大

代码视图

大纲视图

有 (视觉可见物体)

WinForm下无

Web开发有

属性视图

解决方案

独立文件夹(类似Eclipse)

*.sln

独立插件

场景

*.unity

程序集

*.exe、*.dll

亮点优势

游戏设计

跨平台

代码调试

UI控件

 

其中,在接触Unity 这个IDE后才知道,程序员仅仅编程是不够的,需要对各种模型(Model)、材质(Matrail)、纹理(Texture)要熟练掌握(导入、修改属性、3D空间内布局),同时还硬要了解一些物理学知识,如刚体、重力、碰撞。在Unity里面资源不叫Resource,而是叫Asset (好像任何东西在Unity都是这个称呼)。

GameObject和Component,GameObject是游戏对象,可独立操作的一个物体–一棵树或者一个人。 Componet是不见的,它类似GameObject的成员变量,游戏中90%的操作是控制GameObect的Component来完成的。

UI控件:Unity中的UI是我用过最难用的UI了,使用Winform开发的人可以很容易摆放UI控件、布局;但是在Unity中,只能代码控制。甚至难度超过Web中UI的布局,简直是毫无章法可依!呵呵,一下子UI回到解放前了。慢慢的,发现Unity中UI类似Web的流式渲染结构,从上往下、相对定位。

对Unity阵营而言,正在慢慢往C#方向迁移,如在Unity 5.0中,官方宣布要对默认的demo、文档用C#来写,要知道以前是JavaScript写的. (据不完全调查统计,Unity下C#脚本使用者占了7成比例)。同时,微软也在积极和Untiy靠近中,如今年年初收购了一家UnityVS插件欧洲公司,并免费对VS用户提供这个插件—有了这个插件用VS调试Unity 非常爽、非常爽。

VS开发的程序,无论是Winform还是Web,都有一定的规律可循,如通过事件响应触发函数。C#封装的几乎不用知道太多的细节—这个也是C#在VS下开发效率高的原因了。  而Unity下,采用的是游戏引擎驱动几个固定格式的函数按照游戏引擎一定的规律调用,函数之间,几乎完全靠全局变量来传递了–这个对OO编程而言比较不适应。我忙乎了1个月,Unity的Window UI还是没有能够掌握。 Start、Update等函数有起自身的规律,其内部的事件响应和注册有一些特殊的规律。

Unity里面有一个很酷的概念:时间。

 

Unity IDE

VS Winform

构造函数

Start

Construct

重绘函数

OnGUI

OnPaint (GUI+)

数学函数

Mathf

Math

驱动内核

时间驱动

事件驱动

Unity下之所以可以使用C#,一个很核心的原因是因为其内核在使用Mono.NET,一个不同于VS .NetFramework的C#。Mono是Linux下的,可移植的C#(截止本文写作,微软开源了其自己的.NET,貌似未来不久可使用.NEtFramework作为Unity的核心喽)

游戏开发有意思的地方是:其拟人化、寄托梦想的一个创新农场,容易上手、理解。

在多年开发中编码过的软件项目有3、5个,单个售价少的几万,多得上百万元人民币;但是,户数少的可怜,大多在几十个~几百之间,这个着实让我很不爽。啥时候可以开发上千人、上万人同时使用的软件系统,这个对我非常有意义。

微软阵营企稳的利好消息:.NET开源、Visual Studio免费

今天,各个IT社区,头版头条说的是微软.NET开源了、宇宙中最好的IED–Visual Studio Community 2013将免费提供给用户的消息。

今天各个IT社区,头版头条说的是微软.NET开源了、宇宙中最好的IED–Visual Studio Community 2013将免费提供给用户的消息。

宇宙中最强大的开发环境免费了!

微软开放.NET框架源代码和Mono

微软宣布.NET开发环境将开源 支持Mac OS X和Linux

VS 开始支持 Android 和 iOS 编程,并自带 Android 模拟器

Mono for Unreal Engine发布,C#进入虚幻引擎(Unreal Engine) 》—今天刚翻译的infoQ文章

image

白天我忙于发布新产品《ActiveReports 9报表控件及报表服务器正式发布》,晚上得空翻翻新闻、思考思考微软阵营的一些可喜的变化:微软的云战略已经初具规模,目前考虑到linux系统运行微软云的比较多,故为了扩展.NET战略到其他系统中,因而开源了.NET,从而实现了10年前微软布局的“三屏一云”战略的核心—.NET纽带。微软现在的现金牛有XBox、Office、Azure、Windows、Visual Studio等

曾经预言,微软要使得自己的阵营江山稳固,需要做2件免费事情:

  • Visual Studio免费,学习Eclipse、学习XCode。
  • Windows免费,学习苹果的OX 10策略

目前看,VS免费已经成型,且随着Mono的.NET可移植性大放异彩,在Unity、Unreal游戏引擎方面也有斩获。

Xamarin明天会宣布集成到Visual Studio 2015中,作为默认模板,且微软已经表态,会在年底推出免费的Xamarin的东东, 这个对于使用C#开发跨平台的App是非常利好的消息。 同时,Visual Studio完美支持PhoneGap(Cordova)也使得VS开发跨平台的App稳固了阵营。

 

企业,玩生态圈的,先要弄点基础设施,别人无法超越的,稳固自己的阵脚,才有机会做大。

 

看看这些评论,.NET从业人员被JAVA压抑成啥玩意了!

image

 

image