반응형
BoundsInt
Tilemap에서의 BoundsInt는 주로 Tilemap내의 유효한 cell영역을 나타내는데 사용된다. 각 cell은 하나의 tile을 나타낸다.
Properties
01 position
타일맵 내의 최소 지점
public Vector3Int position { get; set; }
02 size
타일맵 내의 경계의 크기
public Vector3Int size { get; set; }
03 min
position과 동일한 값으로 경계의 최소 지점
public Vector3Int min { get; set; }
04 max
position + size - 1로 계산되어 경계의 최대 지점
public Vector3Int max { get; set; }
05 allPositionsWithin
해당 경계내에 있는 모든 위치를 포함하는 PositionEnumerator를 반환한다. 이 PositionEnumerator는 BoudnsInt에 포함된 모든 위치를 열겨할 수 있는 기능을 제공한다.
public PositionEnumerator allPositionsWithin { get; }
PositionEnumerator 구조체
이 구조체는 BoudnsInt에 포함된 모든 위치를 열겨하기 위해 사용되며 특정 영역 내의 위치를 반복하고 처리하는 데 유용하다.
구성요소
01 생성자
min과 max를 사용하여 PositionEnumerator객체 생성
public PositionEnumerator(Vector3Int min, Vector3Int max);
02 Current
현재 열거 중인 위치
public Vector3Int Current { get; }
03 GetEnumerator
RectInt의 위치를 열거하는 반복자(Iterator)를 반환한다. 이를 통해 RectInt내의 모든 위치를 반복하여 접근하고 작업할 수 있다.
public PositionEnumerator GetEnumerator();
반복자(Iterator)란?
컬렉션 내의 요소를 순환하면서 접근할 수 있는 인터페이스를 제공하는 것이다. 컬렉션 내부 구조를 외부로 노출시키지 않으면서도 컬렉션의 각 요소에 접근하고 처리할 수 있다.
04 MoveNext
다음 요소로 이동시킨다. 다음 위치로 이동할 수 있으면 true 이동할 수 없으면 false를 반환한다.
public bool MoveNext();
05 Reset
PositionEnumerator 초기화
public void Reset();
반응형
'유니티 공부 > Unity' 카테고리의 다른 글
Unity - Physics.OverlapBox 설명(플레이어 바닥 체크에 이용해보기) (0) | 2023.09.09 |
---|---|
Unity - Bounds 속성 2D기준 설명 (0) | 2023.09.09 |
Unity - Tilemap Properites 및 관련 메서드 (0) | 2023.08.17 |
Unity - TileMap Collider 컴포넌트, 스크립트 두 가지 방법 알아보기 (0) | 2023.08.17 |
Unity - Tilemap Layer 순서 설정 (0) | 2023.08.16 |
댓글