Unity3D Keynote
【Unity3D Keynote】
1、场景文件扩展名为.unity。
2、up为Y正方向,down为Y负方向,right为X正方向,left为X负方向,forward为Z正方向,back为z负方向。基础物体本身坐标系。
3、在Scene工具条中可以设置Scene视图绘制模式:

4、给一个GameObject添加RigidBody,即可实现碰撞效果。
5、按以下代码添加GUI:
//模型移动速度
var TranslateSpeed = 20;
//模型旋转速度
var RotateSpeed = 1000;
//游戏绘制UI
function OnGUI()
{
//设置GUI背景颜色
GUI.backgroundColor = Color.red; //按钮点击旋转、平移事件
if(GUI.Button(Rect(10,10,70,30), "向左旋转")){
transform.Rotate(Vector3.up *Time.deltaTime * -RotateSpeed);
} if(GUI.Button(Rect(90,10,70,30), "向前移动")){
transform.Translate(Vector3.forward * Time.deltaTime *TranslateSpeed); } if(GUI.Button(Rect(170,10,70,30), "向右旋转")){
transform.Rotate(Vector3.up *Time.deltaTime * RotateSpeed);
} if(GUI.Button(Rect(90,50,70,30), "向后移动")){
transform.Translate(Vector3.forward * Time.deltaTime * -TranslateSpeed);
} if(GUI.Button(Rect(10,50,70,30), "向左移动")){
transform.Translate(Vector3.right * Time.deltaTime *-TranslateSpeed);
} if(GUI.Button(Rect(170,50,70,30), "向右移动")){
transform.Translate(Vector3.right * Time.deltaTime * TranslateSpeed);
} //将旋转平移的系数显示在屏幕中
GUI.Label(Rect(250, 10,200,30),"模型的位置" +transform.position); GUI.Label(Rect(250, 50,200,30),"模型的旋转" +transform.rotation);
}
6、所有GameObject都可以添加GUI,均显示在屏幕上。不同GameObject添加的GUI如果位置重叠可能会相互覆盖。
7、Control appearances are dictated with GUIStyles. When you have a large number of different GUIStyles to work with, you can define them all within a single GUISkin. A GUISkin is no more than a collection of GUIStyles.
8、使用GUISkin
// JavaScript
var mySkin : GUISkin; function OnGUI () {
// Assign the skin to be the one currently used.
GUI.skin = mySkin; // Make a button. This will get the default "button" style from the skin assigned to mySkin.
GUI.Button (Rect (10,10,150,20), "Skinned Button");
}
9、In Fixed Layout, you can put different Controls into Groups. In Automatic Layout, you can put different Controls into Areas, Horizontal Groups, and Vertical Groups。Notice that inside an Area, Controls with visible elements like Buttons and Boxes will stretch their width to the full length of the Area.
10、Unity 2.0 introduced UnityGUI, a GUI Scripting system. You may prefer creating user interface elements with UnityGUI instead of GUI Texts.
GUI Text是老技术,Unity官方建议优先使用UnityGUI。
11、A GUI Layer Component is attached to a Camera to enable rendering of 2D GUIs.
When a GUI Layer is attached to a Camera it will render all GUI Textures and GUI Texts in the scene. GUI Layers do not affect UnityGUI in any way.
GUI Layer跟GUI Textures, GUI Texts有关,跟UnityGUI的显示无关,是一项老技术,官方建议淘汰。
12、Text Meshes can be used for rendering road signs, graffiti etc. The Text Mesh places text in the 3D scene. To make generic 2D text for GUIs, use a GUI Textcomponent instead.
13、通过对象的 .renderer.material.mainTexture 可以修改GameObject的对象的贴图,以此可以实现动画。
14、Unity脚本生命周期:


15、prefab就是一个存储在磁盘上的GameObject。
Unity3D Keynote的更多相关文章
- Unity3D Script Keynote
[Unity3D Script Keynote] 1.创建GameObject if(GUILayout.Button("创建立方体",GUILayout.Height(50))) ...
- Unity3D Physics Keynote
[Unity3D Physics Keynote] 1.在哪设置Layer Collision Matrix? "Edit"->"Project Settings& ...
- 杂项:Unity3D
ylbtech-杂项:Unity3D Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具 ...
- NavMesh KeyNote
[NavMesh KeyNote] 1.NavMesh.CalculatePath(srcPos, desPos) 若srcPos,desPos相等,则CalculatePath返回false. 2. ...
- Unity3d学习 预设体(prefab)的一些理解
之前一直在想如果要在Unity3d上创建很多个具有相同结构的对象,是如何做的,后来查了相关资料发现预设体可以解决这个问题! 预设体的概念: 组件的集合体 , 预制物体可以实例化成游戏对象. 创建预设体 ...
- Unity3d入门 - 关于unity工具的熟悉
上周由于工作内容较多,花在unity上学习的时间不多,但总归还是学习了一些东西,内容如下: .1 根据相关的教程在mac上安装了unity. .2 学习了unity的主要的工具分布和对应工具的相关的功 ...
- “.Net 社区虚拟大会”(dotnetConf) 2016 Day 3 Keynote: Scott Hanselman
美国时间 6月7日--9日,为期三天的微软.NET社区虚拟大会正式在 Channel9 上召开,美国时间6.9 是第三天, Scott Hanselman 做Keynote.今天主题围绕的是.NET ...
- “.Net 社区虚拟大会”(dotnetConf) 2016 Day 2 Keynote: Miguel de Icaza
美国时间 6月7日--9日,为期三天的微软.NET社区虚拟大会正式在 Channel9 上召开,美国时间6.8 是第二天, Miguel de Icaza 做Keynote,Miguel 在波士顿Xa ...
- “.Net 社区虚拟大会”(dotnetConf) 2016 Day 1 Keynote: Scott Hunter
“.Net 社区虚拟大会”(dotnetConf) 2016 今天凌晨在Channel9 上召开,在Scott Hunter的30分钟的 Keynote上没有特别的亮点,所讲内容都是 微软“.Net社 ...
随机推荐
- HTML5_智能表单
1.HTML5中为了方便排版,可以使from中的表单标签脱离from的嵌套.方法:from指定ID,所有表单标签均添加from=id属性. <form action="http://l ...
- GUI for git|SourceTree|入门基础
原文链接:http://www.jianshu.com/p/be9f0484af9d 目录 SourceTree简介 SourceTree基本使用 SourceTree&Git部分名词解释 相 ...
- PHP后台执行
php中实现后台执行的方法: ignore_user_abort(true); // 后台运行set_time_limit(0); // 取消脚本运行时间的超时上限后台运行的后面还要,set_time ...
- 五款好玩又好用的Linux网络测试和监控工具
五款好玩又好用的Linux网络测试和监控工具 [51CTO精选译文]在这篇介绍几款Linux网络测试实用工具的文章中,我们使用Bandwidthd.Speedometer.Nethogs.Darkst ...
- 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )
原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...
- POJ 2983 Is the Information Reliable? 信息可靠吗 (差分约束,spfa)
题意:有n个站排成一列,针对每个站的位置与距离关系,现有多个约束条件,约束条件分两种:(1)确定的.明确说明站a距离站b多少个单位距离.(2)不确定的.只知道a在b的左边至少1个单位距离. 根据已知 ...
- 详解Android动画之Frame Animation(转)
在开始实例讲解之前,先引用官方文档中的一段话: Frame动画是一系列图片按照一定的顺序展示的过程,和放电影的机制很相似,我们称为逐帧动画.Frame动画可以被定义在XML文件中,也可以完全编码实现. ...
- HDU 3078 Network
简单的 RMQ: 先预处理得到 所有 节点的 公共祖先 和 dfs 得到所有节点的父亲节点: 然后 询问时,从自己出发向上找父亲, 然后 得到所有的节点:排序一下 不知道 这题这样也 ...
- 大数据时代的技术hive:hive介绍
我最近研究了hive的相关技术,有点心得,这里和大家分享下. 首先我们要知道hive到底是做什么的.下面这几段文字很好的描述了hive的特性: 1.hive是基于Hadoop的一个数据仓库工具,可以将 ...
- FastJson只序列化java对象的部分属性
public class Student { private int id; private String name; private int age; //get set方法略 } 如下方法: St ...