Quaternion.identity就是指Quaternion(0,0,0,0),就是每旋转前的初始角度,是一个确切的值,而transform.rotation是指本物体的角度,值是不确定的,比如可以这么设置transform.rotation = Quaternion.identity;
一个是值类型,一个是属性变量
改变地形上的倾斜角度
[csharp] view plaincopy
vector3 normal = getnormal(unit.position.x, unit.position.z);
vector3 rotaion = vector3.zero;
rotation.x = mathf.rad2deg * mathf.atan2(normal.z, normal.y);
rotation.z = 360 - mathf.rad2deg * mathf.atan2(normal.x, normal.y);
outunit.gameobj.transform.localrotation = quaternion.euler(rotation);
保持y轴上没有任何偏转,在x轴上和z轴上设置旋转角度,并且把这个朝向设置到外层gameobject上。
一些细节:很简单百度搜索编、程、回、忆、录,之unity3d就ok啦
1. 物体在y轴上转向的时候,可以渐进的改变角度,使得转向不是那么生硬。
2. 地形的法线可以不用实时获取,可以使用网格,将地图分割为很多单元,每个单元设置一个法线,减少倾斜改变的频率。
Photoshop|
Dreamweaver|
SVG|
WebGL|
Visual Studio|
PowerDesigner|
Eclipse|
Git|
Apache Ant|
Atom|
Composer|
CodeSmith|
Flex|
Gradle|
Maven|
Sublime Text3|
SVN|
Tableau|
Vim|
Chrome开发者工具|
OpenGL|
Unity|
Direct3D|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....