language:unity:코드조각:util
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
language:unity:코드조각:util [2014/05/22 17:28] – 만듦 kieuns | language:unity:코드조각:util [2024/04/23 22:45] (현재) – 바깥 편집 127.0.0.1 | ||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | <code csharp> | ||
+ | /// < | ||
+ | /// 퍼시펙티브 카메라 화면 크기에 맞는 오브젝트의 스케일 크기를 리턴. | ||
+ | /// 카메라 to 오브젝트의 거리에 맞게 스케일할 크기를 알려준다. | ||
+ | /// </ | ||
+ | /// < | ||
+ | /// < | ||
+ | static public Vector3 getScaleForPerspectiveCamera(GameObject targetObject_) | ||
+ | { | ||
+ | float _dist = Vector3.Distance(targetObject_.transform.position, | ||
+ | float _objDepth = targetObject_.transform.localScale.z; | ||
+ | | ||
+ | _dist -= (_objDepth * 0.5f); | ||
+ | | ||
+ | Vector3 v3ViewPort = new Vector3(0, 0, _dist); | ||
+ | Vector3 v3BottomLeft = Camera.main.ViewportToWorldPoint(v3ViewPort); | ||
+ | v3ViewPort.Set(1, | ||
+ | Vector3 v3TopRight = Camera.main.ViewportToWorldPoint(v3ViewPort); | ||
+ | | ||
+ | return new Vector3(v3BottomLeft.x - v3TopRight.x, | ||
+ | } | ||
+ | </ |