De repente, sinto que não tenho absolutamente nenhuma idéia de como implementar objetos / ossos invisíveis.
No momento, uso o instanciamento de hardware para armazenar a matriz mundial de todos os ossos em um buffer de vértice e depois enviá-los para o pipeline. Mas, ao lidar com a seleção de frustum, ou tê-los invisíveis pela minha simulação por outras razões, significa que alguns deles serão invisíveis aleatoriamente.
Isso significa que eu preciso efetivamente preencher novamente o buffer a partir do zero todos os quadros apenas com as matrizes da unidade visível? Parece-me que isso envolveria muita largura de banda desperdiçada.
Respostas:
É melhor colocar isso como resposta ... Eu tentaria implementar o que sugeri e ter unidades ou objetos que você deseja que sejam invisíveis fazem referência a um osso com escala zero. Realmente isso é apenas para unidades que têm vários ossos e você quer apenas tornar parte dele invisível. Caso contrário, basta remover o deslocamento da posição ou alterá-lo para muito longe quando quiser tornar a unidade invisível. Tente deixar a placa de vídeo resolver o que desenhar.
Você não pode se preocupar muito com o desempenho ainda. Pelo menos tente essas coisas antes de desconsiderá-las como caras. Otimização prematura e tudo isso.
fonte