Skip to main content

O que é um Octree?

Um octree é uma estrutura de árvore digital usada para criar criações tridimensionais (3D) e poligonais, principalmente para a indústria de jogos. Na estrutura octree, cada nó interno não possui filhos ou oito filhos - nada entre eles - e cada nó filho pode armazenar informações de cores para o perfil de cores vermelho-azul-verde (RGB). Toda a estrutura começa como um cubo, e cubos internos vazios são usados ​​para informações de colisão. Essa estrutura é muito eficiente em termos de memória, porque há uma quantidade relativamente pequena de dados mantidos em cada filho e a árvore pode ter um tamanho limitado.

Quando um modelo é feito para um videogame, ele precisa ter informações de textura e cor e deve poder colidir com outros modelos. Uma das estruturas utilizadas nesta indústria é a octree. Às vezes chamado de árvore de outubro, esse nome significa a importância do número oito nessa estrutura de árvore. Como criar estruturas de árvore, o octree possui nós pai e filho. Ao contrário de outras árvores, há muito pouca variedade em quantos nós filhos podem ser criados a partir do pai.

Cada pai pode incluir oito nós ou nenhum. Ambos os tipos de cubos são importantes na criação de um modelo totalmente renderizado. Os cubos mais intensivos são aqueles com oito nós. Cada nó interno inclui informações de cor e textura, para que o modelo possa ter uma aparência complexa. Por exemplo, se o modelo for uma árvore, cada um dos nós internos deverá incluir uma cor marrom para o tronco e informações de sombreamento para criar uma textura realista.

Enquanto os cubos com oito nós são importantes para uma octree, os cubos vazios são igualmente importantes. Toda a estrutura começa como um grande cubo vazio, no qual outros cubos menores podem habitar. Este cubo, juntamente com outros cubos vazios, é usado principalmente para informações de colisão. Por exemplo, se um modelo esbarrar nesse modelo, os cubos vazios dirão ao modelo que ele não pode avançar, porque cria uma colisão.

A criação de um modelo adequado com uma octree é intensiva e muitas informações são necessárias, mas a própria estrutura usa a memória com muita eficiência. Uma razão para isso é que, embora haja muita codificação, as informações são apenas informações de cores e texturas e, portanto, bastante pequenas. Outro motivo é que a árvore possui níveis diferentes que mantêm dados desnecessários e, se removidos, a memória pode ser reduzida ainda mais.