2013-06-08 3 views
-3

XNA를 사용하여 3D 게임을 프로그래밍하기 시작했습니다. 높이, 너비 및 깊이 속성별로 3D 큐브를 만드는 기능을 만들고 싶습니다. 나는 Google에서 그와 같은 것을 찾을 수 없었습니다. 그래서 내가 여기서 묻습니다.XNA 코드가있는 3D 큐브 모델 만들기

모델 유형 변수 (3D 상자)를 반환하는 함수가 필요합니다.

+0

내가 끈적 끈적 할 때 'xna 3d cube'에 대한 비명 소리 나는 많은 결과를 얻는다. 틀린 구글을 사용 해본 적이 있습니까? –

+0

먼저 [FAQ]를 읽으십시오. – David

+0

내가 도울 수있는 내장 함수를 보지 못했기 때문에 나는 너무 많이 시도하지 않았다, 나는 구글에서 검색을 해왔지만 좋은 것을 찾지 못했다. 그리고 나는 이미 "xna 3d cube"를 찾았지만 아무런 결과가 없다. – user2466186

답변

1

첫째 : 나는 믿고있어 당신은 입방되지 큐브합니다. 큐브의 높이, 너비 및 깊이는 항상 동일합니다. 직육면체는 직각 프리즘입니다.

두 번째 : XNA는 "모델"클래스를 동적으로 만들 수 없습니다 (또는 적어도 쉽지 않음). 따라서 여기에는 두 가지 선택 사항이 있습니다 :

옵션 A : (쉬운 수정) 완벽한 1x1x1 큐브 모델을 만들어 모든 것에 사용하지만, 그림을 그릴 때 높이/너비/깊이 선택 항목으로 설정된 Vector3으로 크기를 조정하십시오 .

옵션 B :합니다 (무의미한 어려운 방법)는 XNA의 3D 모델 (모델 및 ModelMesh 클래스에 대한 구체적 섹션)에 대해 알고 모든 것을 잊어 버려, 빌드 VertexPositionNormalTexture [] VertexArray INT [] IndexArray 및 당신이 옵션 B를 선택하면

는, 적절한 입방 8 개 정점, 12 개 삼각형 (36 개 지수)

을 가지고 있습니다 (... PrimitiveType.TriangleList,)를 BasicEffect 객체와 device.DrawUserIndexedPrimitives를 사용하여 렌더링