C#에서 옵셔널 체이닝 (ex A.?B)

 

옵셔널 체이닝 연산자(?.)는 C# 6.0 버전부터 도입된 문법이고,

이를 통해 null인 변수에 대한 속성이나 메서드 호출을 편리하게 처리할 수 있슴 이를 통해 null 체크를 간단하게 처리하면서 코드를 더 간결하게 만들 수 있슴

예를 들어, 객체가 null이 아닌 경우에만 메서드를 호출하고 그렇지 않으면 null을 반환하는 경우, 옵셔널 체이닝을 사용하면 다음과 같이 코드를 작성할 수 있슴

someObject?.SomeMethod();

 

만약 someObject가 null이라면 SomeMethod는 호출되지 않고, null이 아니라면 정상적으로 호출

 

유니티에서는 주로 GameObject나 Component 등이 null인지 확인하고 접근하는 경우에 옵셔널 체이닝을 활용 가능

 
Rect transform Utility 스크립팅
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

+ Recent posts