Unity入门知识
参考书:《Unity3D 游戏开发》
● scene图中按F键:放大,居中当前选中的物体
● 坐标轴:红-x轴,绿-y轴,蓝-z轴
● 逐帧运行程序:
● OnGUI:可以用来画界面
● 高级控件 or 低级控件?
● Label控件也可以贴图
● 只有脚本的公有变量才可以在编辑器中直接赋值。Texture、String等
● 游戏界面可以由若干个窗口组成,而每个窗口又由若干个视图组成。创建窗口时需要设定他的显示区域,在窗口中可以添加任意组件,前提是组件的显示区域必须在窗口当中,否则无法显示。另外,窗口中的所有控件都采用相对坐标,相对窗口左上角的坐标。
● 改变默认GUI的样式:
1、在 Project 中新建一个 GUISkin,叫做 BeautifulSkin,设置好各个项。
2、脚本中定义一个全局变量 var mySkin : GUISkin;
3、在OnGUI函数中画界面时,调用 GUI.skin = mySkin; 设置当前使用的皮肤
4、在编辑器中,对脚本的 mySkin 变量赋值为 BeautifulSkin。
● 自定义风格组件?
● GUILayout?
● 实际上,在开发2D游戏时,不能使用GUI来实现。GUI的渲染效率比较低,并且也无法使用Unity引擎中独具特色的功能,比如物理引擎、粒子系统等。
● 建议初学者使用JS进行入门阶段学习,但是进阶阶段推荐使用C#,因为C#在编辑思想上更符合Unity引擎的原理。
● MonoDevelop脚本编辑器并不是Unity公司开发的,它是一个开源项目,任何人或公司都可以使用。由于该编辑器具有强大的跨平台功能,并且使用起来非常方便,所以很快就被Unity公司作为核心脚本开发环境来使用。
● MonoDevelop不仅可以编辑脚本,也可以调试脚本。
● FixedUpdate的调用时间设置:Edit -> Project Settings -> Fixed Timestamp
● 使用脚本来调用游戏对象的方式有2种,它们是:1、可以将脚本绑定在一个游戏对象上,2、也可以在代码中动态绑定脚本和删除脚本。任何一个对象都可以绑定多个脚本,并且这些脚本互不干涉,各自完成各自的生命周期。
● 创建游戏对象有2种:1、将模型预先放入 Hierachy视图中,然后在视图中任意拖动该模型在3D世界中的位置,运行游戏后该模型就会出现在Game视图中。
2、在代码中动态创建和删除对象,这种比较灵活。
● 获取对象的方式:1、名字 2、标签 3、通过标签获取多个对象
● 添加组件时,可以使用AddComponent方法。由于组件自身没有对应的删除方法,需要用父类执行Object.Destroy()方法才能删除它。其中该方法的参数为需要删除的游戏对象或游戏组件。在删除某一对象时,将连带将该对象的所有组件一并删除。
● Unity3.5 不支持 c#命名空间,不知道4.5是不是支持了。
● “这里需要注意的是js脚本必须放在 Standard Assets 中文件夹中,否则无法编译通过”?
● Unity提供了3种光源,点光源、聚光灯、平行光。它们可以模拟自然界中任何一种光。
● 因为摄像机照射的面正是游戏显示的内容,所以可在摄像机上绑定一个Skybox组件,用于在Game视图中直接显示天空盒子贴图。需要注意的是,如果游戏中只存在一个摄像机对象,这样添加天空盒子没有任何问题,但是如果游戏中存在多个摄像机对象,在摄像机之间进行切换后天空盒子贴图的位置就会出出问题,因为贴图资源只是相对于当前摄像机对象的,多个摄像机对象无法模拟同一个天空盒子。
● 在游戏场景中直接添加天空盒子。
● 自定义菜单项?
● 修改了预设的,所有对象都会跟着改变。
● 可以通过创建一个空的GameObject然后绑定audio来实现播放音乐。
Unity入门知识的更多相关文章
- Httpd服务入门知识-http协议版本,工作机制及http服务器应用扫盲篇
Httpd服务入门知识-http协议版本,工作机制及http服务器应用扫盲篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Internet与中国 Internet最早来源于美 ...
- unity入门—五分钟制作一个理论上的游戏
unity入门 前言:这可不是标题党,虽然都是基础的操作,不过含括了基本的流程,比起脑海中的五花八门的画面,入门还是这个现实一点. 这里插两句,unity国外官网下载会推荐你看一个简短的视频,国内官网 ...
- [置顶] Mysql存储过程入门知识
Mysql存储过程入门知识 #1,查看数据库所有的存储过程名 #--这个语句被用来移除一个存储程序.不能在一个存储过程中删除另一个存储过程,只能调用另一个存储过程 #SELECT NAME FROM ...
- Unity入门
Unity入门 用unity做一个最简单的交互.(相当于Hello World)仅仅要最后能执行就算入门了. 第一步,要先用三维制作软件制作出我们须要的场景. 这儿使用的是Max2012(软件大小3. ...
- 移动H5开发入门知识,CSS的单位汇总与用法
说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着手机的流行,web app和hybrid a ...
- H5移动端开发入门知识以及CSS的单位汇总与用法
说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着手机的流行,web app和hybrid a ...
- Java web 入门知识 及HTTP协议详解
Java web 入门知识 及HTTP协议详解 WEB入门 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资 ...
- Java基础入门知识
Java编程入门知识 知识概要: (1)Java入门基本常识 (2)Java的特性跨平台性 (3)Java的编程环境的搭建 (4)Java的运行机制 (5)第一个Java小程序入门 (1)Java ...
- zabbix入门知识
zabbix入门知识 zabbix中文手册 https://www.zabbix.com/documentation/3.4/manual/ 1.zabbix介绍 Zabbix 是一个企业级的分布式开 ...
随机推荐
- CSS网页布局:网站整体居中 转
body{ margin:0 auto; padding:0 auto; text-align:center;} 只设置body属性对ie浏览器有效果,但是对火狐等不起作用 body{ ...
- 永不消逝的电波(三):低功耗蓝牙(BLE)入门之如何调戏别人的小米手环
0×00 前言 蓝牙(Bluetooth),一种无线技术标准,用来让固定与移动设备,在短距离间交换数据,以形成个人局域网(PAN).其使用短波特高频(UHF)无线电波,经由2.4至2.485 GHz的 ...
- 技术分享:如何用Solr搭建大数据查询平台
0×00 开头照例扯淡 自从各种脱裤门事件开始层出不穷,在下就学乖了,各个地方的密码全都改成不一样的,重要帐号的密码定期更换,生怕被人社出祖宗十八代的我,甚至开始用起了假名字,我给自己起一新网名”兴才 ...
- IOS @2X.png
[UIImage imageNamed:@"xxx.png"] 或者xib里iPhone4会自动找*@2x.png initWithContentOfFile:pathToImag ...
- @synthesize的使用
利用@synthesize可以给在.m文件中给.h文件中的属性重新定义新的名称如 @synthesize firstname = anothername:firstname是在.h文件中定义的,新定义 ...
- cout 计算顺序问题
cout输出流的执行顺序 下面是IBM的一道笔试题 #include <iostream> using namespace std; int fun( ) { cout << ...
- The Separator in Grid_BFS
Description Given a connected, undirected graph G = (V, E), where V is the vertex set consisting a c ...
- js打印方法总结
前段时间做web项目用到了页面打印,在网上找了些资料,自己也试了很多方法,将这些方案列出下: 1.window.print()方法打印,所有主要浏览器都支持 print() 方法 这个方法很实用,只需 ...
- [转]Table-Driven and Data Driven Programming
What is Table-Driven and Data-Driven Programming? Data/Table-Driven programming is the technique of ...
- Unity3d Shader
Unity3d Shader 预览Surface Shader主要用来实现光照相关处理,可能更简洁. Vertex and Fragment Shader 如果不与光照交互, 则可以用这个shader ...