Table of Contents

Struct BlockInfo

네임스페이스
easyar
어셈블리
EasyAR.Sense.dll

조밀 재구축으로 얻은 모델은 삼각형 메쉬로 표현되며, 이를 메쉬(mesh)라고 합니다. 메쉬는 자주 업데이트되기 때문에 효율성을 보장하기 위해 전체 재구축 모델의 메쉬는 매우 많은 메쉬 블록(mesh block)으로 분할되어 있습니다. 하나의 메쉬 블록은 한 변의 길이가 약 1미터인 정육면체로 구성되며, 버텍스(vertex)와 인덱스(index) 등의 요소를 포함합니다.

 BlockInfo는 하나의 메쉬 블록 내용을 설명하는 데 사용됩니다. 여기서 (x,y,z)는 메쉬 블록의 인덱스이며, (x,y,z)에 각 메쉬 블록의 물리적 크기를 곱하면 이 메쉬 블록의 원점이 월드 좌표계에서의 좌표를 얻을 수 있습니다. 렌더링에 필요한 시간을 절약하기 위해 표시해야 할 부분을 사전에 필터링하기 위해 메쉬 블록이 월드에서의 위치를 사용할 수 있습니다.
 </p>
public struct BlockInfo

생성자

BlockInfo(int, int, int, int, int, int, int, int)

public BlockInfo(int x, int y, int z, int numOfVertex, int startPointOfVertex, int numOfIndex, int startPointOfIndex, int version)

매개 변수

x
y
z
numOfVertex
startPointOfVertex
numOfIndex
startPointOfIndex
version

필드

numOfIndex

메시 블록이 포함하는 인덱스의 개수로, 연속된 세 개의 정점이 하나의 삼각형 면을 구성합니다.

public int numOfIndex

numOfVertex

하나의 mesh block이 보유한 정점의 수.

public int numOfVertex

startPointOfIndex

startPointOfVertex와 유사합니다. 인덱스 데이터가 index buffer에 저장되는 시작 위치로, 몇 번째 인덱스부터 현재 mesh block에 속하는지 나타냅니다. 오프셋의 바이트 수와는 다르며, 시작 위치의 오프셋은 startPointOfIndex*3*4 바이트입니다.

public int startPointOfIndex

startPointOfVertex

정점 데이터가 vertex buffer에 저장되는 시작 위치로, 몇 번째 정점부터 현재의 mesh block에 속하는지를 나타냅니다. 오프셋의 바이트 수와는 다르며, 시작 위치의 오프셋은 startPointOfVertex*3*4바이트입니다.

public int startPointOfVertex

version

현재 mesh block 업데이트 횟수로, version이 클수록 업데이트 횟수가 많음을 의미합니다. `DenseSpatialMap.updateSceneMesh`_ 호출 후 mesh block의 version이 증가했다면 해당 내용에 변경이 발생한 것입니다.

public int version

x

메시 블록의 인덱스 (x,y,z) 중 x.

public int x

y

메시 블록의 인덱스 (x,y,z) 중 y.

public int y

z

mesh block의 인덱스 (x,y,z)에서 z입니다.

public int z