Mais
O que é o "Use VBOs" configuração?
No instantâneo 14w29b há uma nova opção no "Video Settings" menu chamado "Use VBOs":
O snapshot update diz que habilitar "Vertex Buffer Objects" deve aumentar o seu FPS em 5% a 10% em média.
Estou à procura de uma explicação simples do que as VBOs fazem visualmente e como funcionam.
21
3
A resposta dada por Flaunting é correta, mas caso alguém esteja interessado porquê pode ser mais eficiente, aqui vai uma explicação.
No modo imediato (acho que este é o caso padrão em minecraft) quando você quer renderizar dizer um quadrado:
Você emitiria os seguintes comandos para cada frame (em pseudo código)
Para um quadrado, isto não é muito, mas pode haver milhões de vértices em uma cena, e eles podem ter mais atributos (cor, normal, etc.). Isto é um monte de dados para enviar para a GPU cada quadro.
Usando VBOS, você carregaria todos os dados do vértice na memória da GPU no início. Pseudo código pode ser parecido com isto:
O código OpenGL irá devolver-lhe um 'name' para esta VBO (um iirc inteiro não assinado a zero). Você pode então referenciar isto quando você quiser desenhar o quadrado. Então, cada frame, você só precisa emitir um comando de desenho:
Você pode ter que configurar o estado de desenho para que ele use pares de vértices para linhas, mas para cada VBO adicional, você só precisa de uma chamada extra de desenho. Na verdade, para a geometria de nível estático (provavelmente não aplicável no caso de minecraft) você pode combinar todos esses vértices em um VBO maciço, se você tiver memória GPU suficiente.
I'estou surpreso que a aceleração seja de apenas 5-10%. Isto é provavelmente por causa da geometria dinâmica do nível.
VBO significa Vertex Buffer Object
Do artigo da Wikipedia
*Em termos simples**
Em minecraft especificamente oferece um aumento de desempenho de ~10% quando ajustado para ON
Ele faz isso reduzindo a carga de trabalho no seu CPU & RAM e reatribuindo-o à sua memória gpu, isso só é recomendado se você tiver uma placa gráfica ok para decente
Ele aumenta substancialmente a velocidade, reduzindo a necessidade de trabalho do processador e da memória do sistema (RAM). Em vez disso, utiliza a memória da sua placa gráfica para aumentar o desempenho.