在unity3d里无法移动物体

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在unity3d里无法移动物体相关的知识,希望对你有一定的参考价值。

我在unity3d里通过transform.Translate(Vector3(0,0,1)和transform.position.z+=1来移动物体,但有些物休能动,另一些从UNITY3D官网上下载的物体却不能移动,通过属性窗口能看到物体的POSITION值是在变化,但视图窗口中物体是不动的,只有物体的collider线框在动,请问上是怎么回事?如何才能让这种物体动起来?
似乎当一个物体(指UNITY3D官网上下载的物体)是由多个物体组成时,就移动不了

这个问题,我估计是不是你的脚本位置挂错了。看看是不是挂在了父类对象上。小写transform的协会是这样的this.transfrom,很多时候我们省略了this。那样的话,tranform指的是什么就很清楚了,它和大写的Tranfrom不一样,用小写的,会得到你挂在脚本的对象的tranform组件然后操作其属性。你说的多个物体不能移动应该就是没有得到渲染模型的tranfrom导致或者是因为不是挂载在父对象上。来自:求助得到的回答 参考技术A C#中貌似用transform.position.z+=1的方法会有问题。
如果是人,声明一个chanractercontroller,获取组件,然后用move或者simplemove方法移动
其他就用transform.Translate(ector3 temp×time.detailtime*speed);追问

不是人,不能用角色控制器。transform.Translate方法试过了,只能看到物体的collider线框在动,物体本身没动。

参考技术B

下方“ w我是QQ糖”网友已给出答案 是  物体 Inspector 属性面板 Static 被勾上了。

实测(去除),是对的。

三.js 移动物体时的相机、物体和场景原点

【中文标题】三.js 移动物体时的相机、物体和场景原点【英文标题】:Three.js camera, object and scene origin when moving object 【发布时间】:2015-02-25 01:30:43 【问题描述】:

在移动对象后,我无法弄清楚如何将对象设置为 three.js 场景原点。发生的情况是,我构建了一个场景,其中一个对象位于原点,一个相机指向它。 我正在使用鼠标在场景中的对象周围移动。 然后我尝试重置对象位置,使其回到场景原点,就像相机指向它一样:

camera.position.x = 10;
camera.position.y = 10;
camera.position.z = 10;
camera.lookAt( scene.position );
group.position.set(0, 0, 0);

一开始我看起来还不错。但是当我尝试用鼠标围绕对象旋转相机时,对象会移回之前的位置,并且相机不会以它为中心。

【问题讨论】:

【参考方案1】:

我正在使用控件。只需这样做:

controls.target.set( 0, 0, 0 );

【讨论】:

以上是关于在unity3d里无法移动物体的主要内容,如果未能解决你的问题,请参考以下文章

在unity3d里怎样隐藏物体?

unity3d里怎么给动态添加的物体添加贴图

unity3d我想把物体拖拽到脚本里为啥不行呢?如图

[Unity3D]移动的 Static Collider 无法产生碰撞的问题

unity3d 中如何让一个物体一端固定,另一端随另一物体运动,就像弹簧一样

unity3d用键盘控制物体移动的工具