Transform.positionis 的类型Vector3,是一个struct.这意味着当您访问它时,您将获得该值的副本.然后ScreenToWorldPoint获取该值并返回另一个值Vector3.改变这个值不会有用 - 它不会改变变换中的任何东西,这可能是你想要实现的.听起来你可能想要这样的东西:
var transform = GameObject.FindWithTag("Object").transform;
var position = Camera.main.ScreenToWorldPoint(transform.position);
position.x -= 10;
transform.position = Camera.main.WorldToScreenPoint(position);
Run Code Online (Sandbox Code Playgroud)
请注意从世界到屏幕坐标的转换,以保持原始上下文中的所有内容.
写完所有这些之后,应该注意到我从未做过任何Unity3d编码 - 这只是基于常规的C#.
| 归档时间: |
|
| 查看次数: |
77 次 |
| 最近记录: |