O formato de arquivo OBJ é um dos formatos de arquivo mais populares para armazenar modelos 3D. Ele é amplamente utilizado na indústria de jogos, animação e design de produtos. O formato OBJ é um arquivo de texto simples que contém informações sobre a geometria do modelo, como vértices, normais e coordenadas de textura. Neste artigo, discutiremos a estrutura do formato de arquivo OBJ, suas seções e instruções, e mostraremos como criar uma função em C++ que lê um arquivo OBJ e retorna um array de vértices que pode ser usado para renderizar o modelo 3D usando OpenGL.
Continuar lendo Definindo um objeto 3D com o formato de arquivo OBJTag: OpenGl
Definindo uma textura para um objeto 3D com o formato de arquivo MTL
O formato de arquivo MTL é usado para definir as texturas de um objeto 3D em um modelo 3D. Ele é geralmente usado em conjunto com o formato de arquivo OBJ, que define a geometria do modelo.
Continuar lendo Definindo uma textura para um objeto 3D com o formato de arquivo MTLTutorial de SDL – Parte 51 – SDL e o OpenGL moderno
Continuando nossa série de artigos traduzidos lazyfoo, agora veremos como usar o SDL de forma integrada com a versão mais moderna do OpenGL.
Continuar lendo Tutorial de SDL – Parte 51 – SDL e o OpenGL moderno
Tutorial de SDL – Parte 50 – SDL e OpenGL 2
Continuando nossa série de artigos traduzidos do site lazyfoo, veremos agora como combinar SDL com OpenGL.
Continuar lendo Tutorial de SDL – Parte 50 – SDL e OpenGL 2
OpenGL – Feedback de transformações
Até agora, em nossa série de artigos sobre OpenGL, sempre enviamos dados de vértices para o processador gráfico e produzimos apenas pixels para serem desenhados em framebuffers. E se quisermos recuperar os vértices depois de serem passados pelo vertex e geometry shaders? Nesse artigo, veremos uma forma de fazer isso, conhecida com feedback de transformações.
Continuar lendo OpenGL – Feedback de transformações
OpenGL – Geometry shaders
Até agora em nossa série sobre OpenGL, usamos
Continuar lendo OpenGL – Geometry shaders
OpenGL – Framebuffers
Nos artigos anteriores de nossa série sobre OpenGL, vimos diferentes tipos de buffers que o OpenGL oferece: cor, depth e stencil. Esses buffers ocupam a memória de vídeo da mesma forma que qualquer outro objeto OpenGL, mas até agora temos pouco controle sobre eles além da especificação de formatos de pixel quando criamos o contexto OpenGL. Essa combinação de buffers é conhecida como
Continuar lendo OpenGL – Framebuffers
OpenGL – Buffers adicionais: depth e stencil
Até agora, nesta nossa série sobre OpenGL, houve apenas um tipo de buffer de saída usada por nosso exemplos, o buffer de cores. Nesse artigo, discutiremos dois tipos adicionais, o buffer de depth e o buffer de stencil. Para cada um deles um problema será apresentada e resolvido em seguida com esse buffer especifico.
Continuar lendo OpenGL – Buffers adicionais: depth e stencil
OpenGL – Transformações
Como esse artigo tem como foco programação gráfica, não cobrirá boa parte da teoria por trás de matrizes. Apenas a teoria que é aplicada para gráficos computacionais será considerada e será explicada do ponto de vista de um programador. Se quiser aprender mais sobre esse tópico, esses videos da KhanAcademy são uma boa introdução sobre o assunto.
Continuar lendo OpenGL – Transformações
OpenGL – Aplicando texturas
Como no case dos VBOs e VAOs, texturas são objetos que precisam ser gerados primeiro pela chamada á uma função. Não deve ser uma surpresa nesse ponto como essa função é chamada.
GLuint tex;
glGenTextures(1, &tex);