|
|
3D의 기초
ActionScript의 3D 소개2차원 화면에 투영되는 2차원(2D) 객체와 3차원(3D) 객체의 주요 차이점은 객체에 세 번째 차원이 추가된다는 것입니다. 세 번째 차원을 통해 객체를 사용자가 보는 시점에서 가까이 또는 멀리 이동할 수 있습니다.
표시 객체의 z 속성에 숫자 값을 명시적으로 설정하면 3D 변형 행렬이 자동으로 만들어집니다. 이 행렬을 변경하여 해당 객체의 3D 변형 설정을 수정할 수 있습니다.
또한 3D 회전은 2D 회전과 다릅니다. 2D에서 회전 축은 항상 x/y 평면에 수직, 즉 z축에 있습니다. 3D에서 회전 축은 x, y 또는 z축을 기준으로 합니다. 회전을 설정하고 표시 객체의 크기 속성을 조절하여 3D 공간에서 객체를 이동할 수 있습니다.
일반적인 3D 작업이 장에서는 다음과 같은 일반적인 3D 관련 작업에 대해 설명합니다.
3D 객체 만들기
3D 공간에서 객체 이동
3D 공간에서 객체 회전
원근 투영을 사용하여 깊이 표시
상대적 z축에 일치하도록 표시 목록을 재배열하여 객체를 사용자의 정면에서 뒤쪽으로 나란히 표시
3D 행렬을 사용하여 3D 객체 변형
벡터를 사용하여 3D 공간에서 객체 조작
Graphics.drawTriangles() 메서드를 사용하여 원근감 만들기
UV 매핑을 사용하여 3D 객체에 비트맵 텍스처 추가
Graphics.drawTriangles() 메서드의 컬링 매개 변수를 설정하여 렌더링 속도 향상 및 3D 객체에서 현재 시점의 반대쪽을 향하는 부분 숨기기
중요한 용어 및 개념다음 참조 목록에는 이 장에 사용된 중요한 용어가 포함되어 있습니다. 원근: 2D 평면에서 깊이 및 거리 효과를 주기 위해 평행선들이 소실점에 수렴하도록 표현하는 것입니다.
투영: 2D 이미지를 보다 높은 차원의 객체로 제작하는 것으로, 3D 투영의 경우 3D 점을 2D 평면에 매핑합니다.
회전: 객체에 포함된 모든 점을 원형 모션으로 이동하여 객체의 방향과 위치를 변경하는 것입니다.
변형: 평행 이동, 회전, 크기 조절, 기울이기 또는 이러한 액션의 조합을 통해 3D 점 또는 점 집합을 변경하는 것입니다.
평행 이동: 객체에 포함된 모든 점을 동일한 방향으로 같은 거리만큼 이동하여 객체의 위치를 변경하는 것입니다.
소실점: 선형 원근으로 표시될 때 평행선이 뒤쪽에서 서로 만나는 것처럼 보이는 부분입니다.
벡터: 3D 벡터는 직교 좌표(x,y,z)를 사용하여 3차원 공간에서의 점 또는 위치를 나타냅니다.
정점: 꼭지점을 나타냅니다.
텍스처 메쉬: 3D 공간에서 객체를 정의하는 점입니다.
UV 매핑: 3D 표면에 텍스처 또는 비트맵을 적용하는 방법입니다. UV 매핑은 이미지 상의 좌표에 가로(U) 축 및 세로(V) 축의 백분율로 값을 지정합니다.
T 값: 객체를 현재 시점에서 앞으로 또는 뒤로 이동할 때 3D 객체의 크기를 결정하기 위한 비율 인수입니다.
컬링: 특정 굴곡이 있는 표면을 렌더링하거나 렌더링하지 않는 것입니다. 컬링을 사용하면 현재 시점에서 보이지 않는 표면을 숨길 수 있습니다.
|