Programação com OpenGL/Modern OpenGL Tutorial 06: diferenças entre revisões

Origem: Wikilivros, livros abertos por um mundo aberto.
[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Linha 1: Linha 1:
== Carregando uma textura ==
== Carregando uma textura ==

[[File:OpenGL_Tutorial_Texture.jpg|thumb|Nossa textura, em 2D]]

Para carregar uma textura, nós precisamos de um decoficador para carregar uma imagens, em particular as do tipo JPEG ou PNG.
Normalmente, seu programa final usara uma biblioteca generica como o SDL_Image, SFML ou Irrlich, que suportam varios formatos de imagem, assim você não precisa escrever o código da imagem para carrega-lo. Bibliotecas especializadas como o SOIL(veja abaixo) pode ser interessante.

Para o primeiro passo, nós precisamos manipular uma imagem em nível-baixo para entender o basic, assim faremos um truque: O GIMP pode exportar uma imagem para um código fonte C. que poderá estar em nosso programa! Eu usarei a opção de salvamento igual a captura de tela.
[[File:OpenGL_Tutorial_Gimp_export_as_C.png|thumb|Exportando uma imagem como C pelo GIMP]]

Se tiver demanda, nós podemos providenciar um tutorial especial para leitura de formato simples como o PNM, ou do tipo como BMP ou TGA (este dois também são simples, mas suportam compressão e vários formatos por isto é um pouco difícil suportar todas as suas opções).

Nota: Agregar imagem em código C é muito eficiente em questão de memória, por isto não vamos usar sempre.
Tecnicamente: ela é armazenada em um segmento BBS do programa, em vez do heap, por isto não pode ser liberado.

Nota 2: você pode encontrar a fonte do GIMP em res_texture.xcf no repositório de códigos.

Ta compilar automaticamente o aplicativo quando você modificar o res_texture.c, coloque ele no Makefile:
<source lang="make">
cube.o: res_texture.c
</source>


== Criando uma texturo pelo OpenGL buffer ==
== Criando uma texturo pelo OpenGL buffer ==

Revisão das 21h03min de 12 de maio de 2013

Carregando uma textura

Nossa textura, em 2D

Para carregar uma textura, nós precisamos de um decoficador para carregar uma imagens, em particular as do tipo JPEG ou PNG. Normalmente, seu programa final usara uma biblioteca generica como o SDL_Image, SFML ou Irrlich, que suportam varios formatos de imagem, assim você não precisa escrever o código da imagem para carrega-lo. Bibliotecas especializadas como o SOIL(veja abaixo) pode ser interessante.

Para o primeiro passo, nós precisamos manipular uma imagem em nível-baixo para entender o basic, assim faremos um truque: O GIMP pode exportar uma imagem para um código fonte C. que poderá estar em nosso programa! Eu usarei a opção de salvamento igual a captura de tela.

Exportando uma imagem como C pelo GIMP

Se tiver demanda, nós podemos providenciar um tutorial especial para leitura de formato simples como o PNM, ou do tipo como BMP ou TGA (este dois também são simples, mas suportam compressão e vários formatos por isto é um pouco difícil suportar todas as suas opções).

Nota: Agregar imagem em código C é muito eficiente em questão de memória, por isto não vamos usar sempre. Tecnicamente: ela é armazenada em um segmento BBS do programa, em vez do heap, por isto não pode ser liberado.

Nota 2: você pode encontrar a fonte do GIMP em res_texture.xcf no repositório de códigos.

Ta compilar automaticamente o aplicativo quando você modificar o res_texture.c, coloque ele no Makefile:

cube.o: res_texture.c

Criando uma texturo pelo OpenGL buffer