你这个应该是用3D界面来映射外部采集的数据,用SendMessage传入坐标吧
生成物体:
Instantiate(myPrefab, new Vector3(fX,fY,fZ), Quaternionidentity);这里fX,fY,fZ是你需要生成物体的坐标,如果外界坐标系与场景的不一致需要转换,Quaternionidentity表示生成物体没有旋转角度,如果想设置角度可以换成QuaternionEuler(xAngle, yAngle, zAngle)参数是需要旋转的欧拉角,prefab是预先导入的模型资源,最简单的方式是通过pulic字段传入:
public GameObject myPrefab;当然你还可以动态删除这个物体:
Destroy(myPrefab);
将你要旋转的物体 比如“门” 放在 要旋转的点里面,让门成为旋转点的子物体,这样在旋转点上编辑动画就可以,可以直接转旋转点,也可以直接旋转“门”,建议使用后者,这样你的动画才有通用性:)
>
FileStream aFile = new FileStream(@"basicsavedat", FileModeOpenOrCreate );
StreamReader sw = new StreamReader (aFile);
objname= swReadLine ();//赋值给你需要的地方,有些请注意格式转换
swClose ();
新手,如果见解不当,请指正。
if (zz <= -2 && zz >= -06)你不觉得这个判断条件很矛盾么
你不管怎么改变坐标也只能进入不了这个判断语句,那么你怎么改变n值?
可以尝试一下:float x = back GetComponent <UISprite > ()width (XXtransform position x / 地图最大X轴坐标); float y = back GetComponent <UISprite > ()height (XX transform position z / 地图最大Z轴坐标);获取XY之后就可以使用??GUI画点了。我是用这种方式和NGUI做很粗糙的小地图的,希望能对你有点帮助吧。如果有好方法,请一定告诉我吧。
我猜测你是想做的是文件里面有多个坐标点,然后想让物体依据这些坐标点形成的轨迹进行移动吧。
如果没猜错的话,你在Awake里写读取,然后把坐标点保存起来,然后在Update里面判断是否到达当前目标点,到达后就换下一个目标点。
如果不是的话,那就先Debug看看你的temp有没有问题吧。
以上就是关于Unity3D在外界读取的坐标上显示模型全部的内容,包括:Unity3D在外界读取的坐标上显示模型、Unity3d怎么获得孙物体相对于父物体的旋转坐标、Unity3d如何读取txt里的三维坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)