C#에서 옵셔널 체이닝 (ex A.?B)
옵셔널 체이닝 연산자(?.)는 C# 6.0 버전부터 도입된 문법이고,
이를 통해 null인 변수에 대한 속성이나 메서드 호출을 편리하게 처리할 수 있슴 이를 통해 null 체크를 간단하게 처리하면서 코드를 더 간결하게 만들 수 있슴
예를 들어, 객체가 null이 아닌 경우에만 메서드를 호출하고 그렇지 않으면 null을 반환하는 경우, 옵셔널 체이닝을 사용하면 다음과 같이 코드를 작성할 수 있슴
someObject?.SomeMethod();
만약 someObject가 null이라면 SomeMethod는 호출되지 않고, null이 아니라면 정상적으로 호출
유니티에서는 주로 GameObject나 Component 등이 null인지 확인하고 접근하는 경우에 옵셔널 체이닝을 활용 가능
FlipLayoutAxes | RectTransform의 크기와 정렬을 수평 및 수직 축을 기준으로 뒤집는다. 옵션으로 자식 요소들도 함께 뒤집을 수 있다. |
FlipLayoutOnAxis | RectTransform의 정렬을 수평 또는 수직 축을 기준으로 뒤집는다. 옵션으로 자식 요소들도 함께 뒤집을 수 있다. |
PixelAdjustPoint | 주어진 스크린 좌표를 픽셀 정확한 좌표로 변환한다. |
PixelAdjustRect | 주어진 RectTransform에 대한 픽셀 정확한 모서리 좌표를 반환한다. |
RectangleContainsScreenPoint | RectTransform이 주어진 카메라에서 본 스크린 좌표를 포함하는지 여부를 반환한다. |
ScreenPointToLocalPointInRectangle | 스크린 좌표를 RectTransform의 로컬 좌표로 변환한다. |
ScreenPointToWorldPointInRectangle | 스크린 좌표를 주어진 RectTransform의 평면 상의 월드 좌표로 변환한다. |
일반 오브젝트는 Transform 사용
UI 오브젝트는 Rect Transform 을 사용함
UI에 관한 자세한 내용은 아래 블로그 작성자분이 자세하게 정리해놓으셨습니다
https://wergia.tistory.com/184
[Unity3D] UI 비법서 (4) - UI 개발자라면 제발 Rect Transform 애용합시다!
UI 비법서 (4) - UI 개발자라면 제발 Rect Transform 애용합시다! 작성 기준 버전 :: 2019.1-2019.2 [이 포스트의 내용은 유튜브 영상으로도 시청하실 수 있습니다] 유니티 개발을 처음으로 공부하는 개발자
wergia.tistory.com
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
Bounds
"Bounds는 좌표축과 정렬된 바운딩 박스를 나타냅니다. 이는 단순히 좌표축에 정렬된 상자로, 어떤 객체를 완전히 둘러싸고 있습니다. 이 상자는 좌표축과의 회전이 없기 때문에 중심점과 크기만으로 정의할 수 있거나, 최소 및 최대 지점으로도 정의할 수 있습니다.
Bounds는 Collider.bounds, Mesh.bounds, 그리고 Renderer.bounds에서 사용됩니다."
변수
center | 바운딩 박스의 중심점입니다. |
extents | 상자의 크기의 절반으로 항상 일정한 값입니다. |
max | 상자의 최대 지점으로 항상 center + extents와 같습니다. |
min | 상자의 최소 지점으로 항상 center - extents와 같습니다. |
size | 상자의 전체 크기로 항상 extents의 두 배입니다. |
Public 함수
ClosestPoint | 바운딩 박스에서 가장 가까운 점을 반환합니다. |
Contains | 주어진 점이 바운딩 박스 안에 있는지 여부를 확인합니다. |
Encapsulate | 바운드를 지정된 점을 포함하도록 확장합니다. |
Expand | 각 면을 따라 크기를 증가시켜 바운드를 확장합니다. |
IntersectRay | 레이가 이 바운딩 박스와 교차하는지 여부를 확인합니다. |
Intersects | 다른 바운딩 박스가 이 바운딩 박스와 교차하는지 여부를 확인합니다. |
SetMinMax | 바운드를 상자의 최소 및 최대 값으로 설정합니다. |
SqrDistance | 점과 이 바운딩 박스 간의 가장 작은 제곱 거리를 계산합니다. |
ToString | 바운드에 대한 서식이 잘된 문자열을 반환합니다. |
'Unity' 카테고리의 다른 글
[Unity] SerializeField ? 직렬화 ? (0) | 2024.01.22 |
---|---|
[Unity C#] Vector3 (0) | 2024.01.22 |
2024-01-10 (0) | 2024.01.10 |
2024_01_08 (0) | 2024.01.08 |
Unity2D) 기본캐릭터 이동조작 (0) | 2022.09.05 |