Unity3D

2016-09-20 15:05
中文名优美缔3D
英文名Unity3D
分类游戏引擎、游戏开发工具
开发公司Unity Technologies
支持维度3D,2D
编程语言C#和JS

技术简介

  Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件。其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、Windows phone 8和Android平台。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows的网页浏览。它的网页播放器也被Mac widgets所支持。

  Unity 是基于GNOME桌面环境的用户界面, 由Canonical公司开发,主要用于Ubuntu操作系统。 Unity 最初出现在Ubuntu Netbook 10.10中。它最初的目的是更有效地利用上网本有限的屏幕尺寸。和 GNOME, KDE 不同,Unity并非一个完整桌面程序安装包,而采用了现有的方案。

  Unity 环境利用了来自 GNOME 3 中的一些关键组件,包括 Mutter 混合型窗口管理器和 Zeitgeist活动记录引擎。其启动器使用 Clutter 建立,这与构建 GNOME Shell所用的图形框架相同。虽然底层的技术相似,但 Unity 用户界面完全是不同的实现,它并没有使用来自 GNOME Shell 的任何代码。

  Unity 这个新 Shell 主要被设计成可更高效的使用屏幕空间,与传统的桌面环境相比,消耗的系统资源更少。Unity 将成为 Ubuntu Netbook 版本及新的 Ubuntu Light 即时(instant-on) 计算平台的关键组件。Unity 环境打破了传统的 GNOME 面板配置。它的左边包括一个类似 Dock 的启动器和任务管理面板;而顶面板则由应用程序 Indicator、窗口 Indicator、以及活动窗口的菜单栏组成。截至2010年Unity开发人员使用的一个名叫Nux的工具替代了Clutter,实现了Unity变成了Compiz的窗口管理器一个插件,且运行速度要比Mutter快。2011年1月14日又发布了一个技术预览版规范的基于Qt的Unity 2D版本。

  Ubuntu原本使用的是完整的GNOME桌面环境。由于Ubuntu创始人Mark Shuttleworth对用户体验的哲学理念与GNOME团队有不同的理解,从2011年4月的Ubuntu 11.04起,Ubuntu使用Unity作为默认的用户界面,而不采用全新的GNOME Shell。但Ubuntu可通过PPA来安装GNOME Shell 。

版本介绍

游侠网

  Windows版本:Unity3d 4.6.3

  Mac版本:Unity3d 4.6.3

  大陆发布版本

  Unity3D PRO虚拟现实、跨平台应用程序开发引擎(商业版)

  Unity iOS Pro移动终端发布平台

  Unity3D PRO 虚拟现实、跨平台应用程序开发引擎(教育版)

  2012年11月15日,Unity Technologies公司正式推出Unity 4.0版本,新加入对于DriectX 11的支持和Mecanim动画工具,以及为用户提供Linux及Adobe Flash Player的部署预览功能。

  目前Unity5已经推出。

  Unity是免费的,官方为Unity Pro和Unity iOS Pro提供30天全功能试用期

如何学习

  第一步首先了解unity3d的菜单,视图界面。这些是最基本的基础,可以像学word操作一样,大致能明白有几个菜单,几个基本的视图,各自起什么作用的就可以了。当然还要了解人物基本的比例和结构。

游侠网

  第二步理解场景里面的坐标系统,输入系统,简单的向量概念。Unity3D的坐标系统及向量概念如果不理解清楚,不理解世界坐标,局部坐标的关系,即使一个简单的移动,缩放,旋转的几行代码,也会困惑你半天。

  第三步学习创建基本的场景的一些基本概念:游戏对象,组件,脚本。在界面上分别体现在层次视图,项目视图及属性视图,要理清楚彼此之间的关系

  第四步学习资源导入方面的一些基本元素:网格,材质,贴图,动画等。

  第五步学习脚本的生命周期,Start,UpDate,ONGUI这些基本的方法。了解,预制,时间,数学等常用的类及相关方法。理解游戏对象,组件,脚本彼此之间的关系。

  第六步进一步学习摄像机,灯光,地形,渲染,粒子系统,物理系统等等,这些每一个深入进去都是一个很复杂的主题。

  第七步一些更高级的概念:向量的加减法点乘叉乘,光照法线贴图,内存管理,图形优化等等。Unity3D入门容易,真的要精通,那是相当难的。

常见问题

  1:天空盒有接缝怎么解决?

  答:在贴图导入设置里设置Wrap Mode为"Clamp"。

  2:DDS格式怎么不显示?

  答:Unity不支持DDS格式,Unity会将除DDS外的其他格式图片具有为DDS同样的优化。

  3:Unity如何动态载入外部模型等文件?

  答:可以使用AssetBundle。

  4:脚本编辑器有语法提示吗?

  答:有的,Win版使用Ctrl+I,Mac版使用Ctrl+>。

  5:如何使用烘焙贴图(多重纹理)?

  答:不要使用Shell贴图,直接将烘焙图赋予贴图的"自发光"通道之上。

  6:为什么水面没有实时反射效果?

  答:只有专业版才支持这种反射效果。

  7:怎么做摄像机漫游动画?

  答:Max正常制作摄像机漫游动画,导到Unity中后,将Unity的Camea拖拽到Max导出的摄像机Gameobject物体之上,作为其子物体即可。
  8:GUI上怎么使用中文字?

  答:导入任意中文字体,然后定义GUISkin字体为该字体即可。

  9:购买一个授权可以安装几台电脑?

  答:可以安装于2个系统之上比如一个Win版一个Mac版。

  10:Max文件扔到Unity中怎么说导入失败?

  答:下载最新版Fbx插件,用Max导出Fbx文件然后扔Unity中。

  11:如何不让摄像头穿透模型,离模型近了就像模型露面了?

  答:设置相机的Near clip plane,调小一点,但是不要给负数。

  12:怎么用双面贴图?

  答:Unity中可设置双面Shader,最简单有效的办法是直接做成双面的实体模型.复杂一点的方法可以在材质脚本中的相应的SubShader中的一个Pass块中加入cull off,即关闭反面裁剪。

  13:导入的Fbx模型尺寸小于Max中的尺寸?

  答:在Unity中该文件的导入设置中设置缩放因子为1。

  14:如何给相机添加Glow效果?

  答:选中相机对象,在菜单中选中Component-Image Effects-Glow赋予该组件即可(专业版才支持此特效)。

  15:怎么设置Webplayer默认尺寸?

  答:到菜单Edit-Project Settings-Player中设置Default Web Screen尺寸即可。

  16:怎么设置可执行文件的启动Banner?

  答:到菜单Edit-Project Settings-Player中设置Resolution Dialog Banner。

  17:如何设置雾效?

  答:到菜单Edit-Render Settings中开启Fog及设置Fog Color等即可。

  18:如何设定默认Skybox天空盒?

  答:到菜单Edit-Render Settings中设置Skybox Material即可. (欢迎加入unity3d百度唯一问答团队,参考资料)

  19:如何下载Unity3d游戏开发工具?

  Unity3D下载软件开发工具和游戏引擎套件(Unity) v4.5.5 下载Unity3d 4.5.5下载是一个让你轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎综合编辑通过Unity简单的用户界面

  20:unity3d虚拟现实的设计流程?

  答:max 制作模型,导出fbx,导入unity,设计相机代码,设计ui,build 。

发展现状

游侠网

  Ubuntu原本使用的是完整的GNOME桌面环境。由于Ubuntu创始人Mark Shuttleworth对用户体验的哲学理念与GNOME团队有不同的理解,从2011年4月的Ubuntu 11.04起,Ubuntu使用Unity作为默认的用户界面,而不采用全新的GNOME Shell。但Ubuntu可通过PPA来安装GNOME Shell 。

应用领域

  创建诸如三维视频游戏、建筑可视化、实时三维动画等

分享到: