2012-04-21 2 views
0

XNA 게임 배경을 모델로 만들었지 만 그 안에 더 많은 모델이 포함되어 있습니다. 예 : "땅에 공이 들어 있습니다." 자, 내가하고 싶은 것은 땅에 들어가 공을 가져 와서 크기를 조정하는 것입니다.XNA 모델 내에서 모델 크기 조정

이렇게 할 가능성이 있습니까? 아니면 땅과 공을 따로 가져 와서 크기를 조정해야합니까 (마지막 옵션이 좋을까요?).

답변

1

내 생각에 모델 내에 ModelMesh 특정 크기를 조정하고 싶다고 생각합니다. 이것은 Matrix 배열을 사용하여 수행 할 수 있습니다. 배열에는 개별 메쉬에 특정한 변환이 포함됩니다. 다음과 같은 내용 :

//In the class for the background, or the game class if there isn't one 
Matrix[] specificTransforms; 

//Initialize the array however you want, and assign the specific matrix for the ball to its corresponding index 

//Loop through the meshes like usual but add this below your code that multiplies the transform matrices: 
if (specificTransforms[(put your iterator variable here)] != null) 
{ 
    (put your BasicEffect here).World *= specificTransforms[put your iterator variable here]; 
} 

공의 적용을 원하는 특정 변형과 결합 된 세계 행렬을 결합합니다.

이것은 최선의 방법이 아니므로 사용중인 코드를 게시하면 예제를 제공하는 것이 더 쉬울 것입니다. 그렇게하지 않는 한, 이것이 효과가 있다는 보장은 없습니다.