簡體   English   中英

如何在3d之間將世界位置轉換為本地位置

[英]How to transform world position to local position in unity 3d for itween

我正在努力將世界位置轉換為本地位置的問題。 我正在統一使用iTween插件。 在iTween中有一個關於position的參數,該參數是世界位置,但是我想使用像素中的局部位置在iTween中移動對象。 我嘗試了transform.TransformPoint(new Vector3(0,0,0)我不認為它根據像素位置工作。

像這個例子:

iTween.MoveTo(gameObject,iTween.Hash("position",new Vector(0,0,0) , "time" ,.6, "easetype" ,"easeincubic"));

位置iTween的參數采用世界位置,但我想轉換像素位置。 就像我通過new Vector(450,50,0);

您的幫助將不勝感激。

記得添加: "islocal", true iTween.Hash "islocal", true參數

您可以嘗試使用Camera.current.WorldToScreenPoint(Vector3 vector) ,它返回在相機空間中x和y的Vector3,即介於0和1之間的值。

通過復接使用這些值Screen.widthScreen.height會給你的像素位置。

"islocal' = true在moveto函數中無法正常工作。還有另一種解決方案。

這是我的代碼:

iTween.MoveTo(gameObject,iTween.Hash("position",Target,"time",_Duration,"delay",_Delay,"easetype",_eEaseType,"islocal",true,"looptype",_eLoop));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM