transform.localScale += new Vector3(-0.01f, -0.01f, -0.01f);
移动
transfer 世界坐标 相对父对象的坐标
Debug.DrawRay(坐标,长度,颜色);
//画射线
Transform.TransDirection(向量);
//Transform沿用方向
target.position - trans.position 点到目标的向量 赋值给 up(Y轴)
Transform.Rotate(Vector3,Space);
Transform.RotateAround(点Vector3,轴向y,速度);
Transform.LookAt(Transform);
Transform.rotation = Quaternion.Euler(0,0,0);//固定度数
Transform.rotation *= Quaternion.Euler(0,0,0);//旋转不能用deltaTime
transform.rotation = Quaternion.Euler(transform.eulerAngles.x + Time.deltaTime * speed,transform.eulerAngles.y,transform.eulerAngles.z);
//每一帧会增加x轴的speed度Time.deltaTime * speed可以加到任何轴向
Transform.eulerAngles += Time.deltaTime * speed * Vector.forward;
//这个角度 = 角度 * 每桢时间 * 速度 * 轴向(X轴)每秒移动speed度
Transform.Translate(Vector3,Space) //Space==World&&Self如Space.World
Transform组件
1.position位置-Position LocalPosition
Transform.rotation;
旋转角度函数,使用的是四元数,
如果想使用欧拉角来旋转,需要转换成四元数
Transform trans;
trans.rotation = Quaternion.Eular(x,y,z);//相对世界坐标
trans.localRotation = Quaternion.Eular(x,y,z);//相对父物体坐标
旋转:函数方法
Transform trans;
//Rotate沿着z轴每秒旋转speed度(自身旋转)
trans.Rotate(Vector3.forward * Time.deltaTime * speed);
2.//围绕旋转RotateAround();
trans.RotateAround(Vector3(x,y,z),target.up,Time.deltaTime * speed);
当物体间没有父子关系是,世界坐标就是本地坐标,显示的是世界坐标
当物体被当成子物体时,显示的是相对于父物体的本地坐标
2.角度-eulerAngles localEulerAngles(欧拉角)rotatetion localRotatetion(四元数旋转角度)
transform组件中的Rotatetion是欧拉角 欧拉角与四元数的转换
3.scale缩放 localScale lossyScale 与Position一样
localScale相对于父级物体
lossyScale相对于世界
private void OnGUI()
{
GUILayout.Label(string.Format("Transform's position :{0}", transform.position));
GUILayout.Label(string.Format("Transform's position :{0}", transform.localPosition));
}
显示当前位置
GUILayout.Label为查询
DetachChildren();
将所有子物体分离出来
Find(childName);
根据子节点的名字获取子物体
GetChild(childIndex);
根据索引值来获取子物体
child.IsChildOf(trans);
判断trans是否是子物体
缩放函数
localScale;
trans.localScale += (缩放方向) * Time.deltaTime * speed;
直接改变物体的朝向(任意轴)
Transform target1,target2;
获得target1指向target2的向量
Vector3 dir = target1.position - target2.position;
//让target1指向target2
target1.up = dir;
//y轴指向target2,z轴target1.forward,x轴:target1.right
旋转:函数方法
Transform trans;
//Rotate沿着z轴每秒旋转speed度(自身旋转)
trans.Rotate(Vector3.forward * Time.deltaTime * speed);
2.//围绕旋转RotateAround();
trans.RotateAround(Vector3(x,y,z),target.up,Time.deltaTime * speed);
//参数1:围绕的点,参数2:绕哪个轴旋转,参数3:旋转速度
3.//LookAt()看向某物体(z轴指向某物体);
trans.LootAt(target);
Transform.rotation;
旋转角度函数,使用的是四元数,
如果想使用欧拉角来旋转,需要转换成四元数
Transform trans;
trans.rotation = Quaternion.Eular(x,y,z);//相对世界坐标
trans.localRotation = Quaternion.Eular(x,y,z);//相对父物体坐标
Transform.Translate(Vector3,Space)
参数1:每一帧移动的距离
参数2:移动参考方向
(Space.self:自身z方向--默认是自身,Space.world:世界z方向)
Transform的成员:
1.position是相对于世界的坐标,
2,localPosition是相对于父物体的坐标
move,
vector3的一些用法
常用变量4 方向向量
向右 right
向上 up
向前 forward
负数值为相反方向,上下左右向前向后都齐全了
子父级相关
父物体 parent
根物体 root
子物体数量 childCount
常用变量3
相对父级缩放比例 localScale
相对实际缩放比例 lossyScale
常用变量2
欧拉角 enlerAngles, localEnlerAngles
四元数旋转角度 rotation,localRotation
常用变量之一
position 世界坐标
localPosition 相对坐标
1、常用变量和属性
2、移动,旋转和放缩
3、常用函数
#!/usr/bin/python # -*- coding: UTF-8 -*- counter = 100 # 赋值整型变量 miles = 1000.0 # 浮点型 name = "John" # 字符串 print counterprint print miles print name
问问
<html></html>
了解 unity 3d