왜 내가 정점 버퍼의 배열을 활성화 할 수 있지만 하나의 인덱스 버퍼 만 설정할 수 있는지 혼란 스럽습니까? 하나의 인덱스 버퍼가 모든 정점 버퍼의 정점을 처리 할 수 있습니까? 그리고 만약 그렇다면 인덱스가 속한 버퍼를 어떻게 지정해야합니까?DX10 + 여러 개의 정점 버퍼, 단일 인덱스 버퍼
내가 가지고있는 또 다른 질문은 색인 된 삼각형 목록을 사용하고 있기 때문에 인덱스 데이터는 대략 메쉬 당 정점 데이터와 같은 크기입니다. 하나의 정점 버퍼 당 하나의 인덱스 버퍼를 만드는 것에 대해 생각하고있었습니다. 나는 하나의 버퍼가 없어 질 때까지 동적으로 메쉬를 추가하여 다른 쌍이 만들어 질 것입니다. 필연적으로이 작업을 수행하면 한 쌍의 버퍼 중 하나가 항상 다른 버퍼보다 먼저 채워지고 나머지 공간은 사용되지 않습니다. 그 공간은 실제로 gpu에서 예약 된 것으로 표시 되나요? 예를 들어, 32MB의 데이터를 포함하는 4 개의 버퍼를 수용 할 수 있지만 128MB의 vram에는 64MB의 바이트 폭으로 생성됩니까?
잘 정리하면, 여러 버퍼의 버텍스 데이터를 가져 오는 것이 성능에 어떤 영향을 줍니까? 또한 두 정점 버퍼에 위치 데이터가 있으면 어떻게됩니까? 둘 다 얻을 수 있고 애니메이션 등을 삽입 할 수 있습니까? –
DX10 +에는 고정 파이프 라인이 없으므로 동일한 버텍스에 대해 두 가지 위치로 수행하는 작업은 전적으로 쉐이더 작성시에 달려 있습니다. 애니메이션은 일반적으로 두 개의 버텍스 버퍼 사이의 보간보다는 월드 매트릭스 간의 보간법을 사용하여 수행됩니다. 그러나 이것은 다른 주제입니다! – gareththegeek