学习u3d笔记(三)u3d中对象位置变换
2017-02-13 13:52
169 查看
实例
有个物品在保证原来位置和方位不变的情况下,放入一个格子中(物品的坐标不乱)。
几种方法实现:
GameObject item = Resources.Load<GameObject> ("gold"); //读取资源中的预置物品“gold”
GameObject go = Instantiate(item) as GameObject;//创建预置物体对象实例
一般都是从Resources.Load后实例化的。实例化完毕后把item里面预先设置的拷贝给Instiate()后的对象。
=================================================================
go.transform.localPosition
=
item.transform.position;
go.transform.localRotation
= item.transform.rotation;
go.transform.localScale
=
item.transform.localScale;
====================================================================
大多数情况下 都用 localPostion:000 localRotation:000 localScale:111。如下
go.transform.parent = cells[i].transform;//将新预置物体对象的父级变换组件定位到cell上
go.transform.localPosition = Vector3.zero;
go.transform.localRotation = Quaternion.Euler(Vector3.zero);(
go.transform.localScale = Vector3.one;
==============================================================
也可直接调用setParent方法,将第二个bool设置为false,如下
go.transform.SetParent(cells[i].transform, false);
=============================================================
也可利用NguiTools.addchild(父级,子级)方法,如下
NguiTools.addchild(cells[i],item);
有个物品在保证原来位置和方位不变的情况下,放入一个格子中(物品的坐标不乱)。
几种方法实现:
GameObject item = Resources.Load<GameObject> ("gold"); //读取资源中的预置物品“gold”
GameObject go = Instantiate(item) as GameObject;//创建预置物体对象实例
一般都是从Resources.Load后实例化的。实例化完毕后把item里面预先设置的拷贝给Instiate()后的对象。
=================================================================
go.transform.localPosition
=
item.transform.position;
go.transform.localRotation
= item.transform.rotation;
go.transform.localScale
=
item.transform.localScale;
====================================================================
大多数情况下 都用 localPostion:000 localRotation:000 localScale:111。如下
go.transform.parent = cells[i].transform;//将新预置物体对象的父级变换组件定位到cell上
go.transform.localPosition = Vector3.zero;
go.transform.localRotation = Quaternion.Euler(Vector3.zero);(
go.transform.localScale = Vector3.one;
==============================================================
也可直接调用setParent方法,将第二个bool设置为false,如下
go.transform.SetParent(cells[i].transform, false);
=============================================================
也可利用NguiTools.addchild(父级,子级)方法,如下
NguiTools.addchild(cells[i],item);
相关文章推荐
- lverlight学习笔记之使用TranslateTransform控制对象位置
- Silverlight学习笔记之使用TranslateTransform控制对象位置
- Silverlight学习笔记之使用TranslateTransform控制对象位置
- OpenGL学习笔记3:变换,矩阵,更多对象
- OpenGL学习笔记3:变换,矩阵,更多对象
- [学习笔记]ASP.NET需注意数据对象的释放
- Chap 10 学习笔记-ASP.NET中的对象
- java对象序列化学习笔记
- C++学习笔记(1)——基类、派生类的对象空间
- Delphi 对象模型学习笔记
- 《面向对象基础:C++实现》学习笔记之五
- Delphi 对象模型学习笔记
- Chap 8 学习笔记-对象概述
- java学习笔记(六)----对象的类型转换, 匿名内置类
- JAVA学习笔记(二)-面向对象程序设计
- 《面向对象基础:C++实现》学习笔记之三
- Chap 11 学习笔记-对象和结构化数据
- java对象序列化学习笔记(z)
- [Java]java对象序列化学习笔记
- Inside The C++ Object Model 学习笔记 -- 关于对象