遊戲世界座標轉化為UGUI螢幕座標

2021-07-09 09:17:55 字數 479 閱讀 7279

很多時候,我們需要把遊戲場景裡面的座標轉化為在ugui中顯示的座標。比如,血條的製作。這種方式和思路是一種通用思路,不論是ngui和ugui,思路都適用。下面針對於ugui 貼一下座標系轉化關係。 **如下;

///

/// 遊戲場景裡的物件的世界座標轉化到ui介面上的座標

/// 賦值操作  物件.transform.position =返回值

///

/// 需要轉化到的uicanvas

/// 物件在遊戲場景中的世界座標

/// 轉化到ui檢視下的座標

public static vector3 worldtouipoint(canvas canvas,transform worldgo)

思想是,首先遊戲場景中的攝像機中的物體座標,也就是世界座標轉化為螢幕座標;然後,找到canvas上繫結的uicamera ,從ui攝像機中將螢幕座標轉化為世界座標。這個轉化是以ui攝像機為目標視野進行轉化的 。

UGUI世界座標轉螢幕座標

在使用ngui中有專用的方法將3d場景中的世界座標轉換為ui螢幕中的2d座標,在unity新版的ugui中,將世界座標轉換為螢幕座標需通過以下幾步來實現 第一 將ui的錨點設為左下角,有的ui無法設定錨點是因為你的該元件或該元件的父物體沒有新增rectransform元件,新增該元件後調整它的錨點為...

螢幕座標轉換到UGUI座標

recttransformutility.screenpointtolocalpointinrectangle 將乙個螢幕空間點轉換為 recttransform 的本地空間中位於其矩形平面上的乙個位置。cam 引數應為與此螢幕點關聯的攝像機。對於設定為 screen space overlay 模...

unity中關於世界座標與螢幕轉化

在unity中 我我們有的時候需要用到相關的座標轉化。今天使用到了 worldtoscreenpoint maincamera getcomponent worldtoscreenpoint new vector3 世界座標的遊戲物體的世界座標 有一點需要說一下的是,這個是世界左邊的原點是與canv...