Tutorial OpenGL v2.0
Finalmente chegou! Após quase 1 ano depois de meu primeiro artigo sobre OpenGL, chegou a versão 2.0. Clique e fique mais Geek.
[ Hits: 17.471 ]
Por: Thiago Henrique Hüpner em 08/05/2015
// Inclui a biblioteca SDL #include <SDL/SDL.h> // Inclui a biblioteca do SDL que tem o OpenGL #include <SDL/SDL_opengl.h> // Função Principal int main(int argc,char *argv[]){ // Se a inicialização do e o Subsistema de video falhar ... if(SDL_Init(SDL_INIT_VIDEO) < 0){ // ... imprima a mensagem de erro e ... printf("Erro : %s ",SDL_GetError()); // ... encerre o programa com 'erro' return -1; } //Define alguns atributos do OpenGL, tais como ... // Numero minimo de bits da cor Vermelha ; SDL_GL_SetAttribute( SDL_GL_RED_SIZE, 8 ); // Numero minimo de bits da cor Verde ; SDL_GL_SetAttribute( SDL_GL_GREEN_SIZE, 8 ); // Numero minimo de bits da cor Azul ; SDL_GL_SetAttribute( SDL_GL_BLUE_SIZE, 8 ); // Tamanho do pixels da cor Alfa ; SDL_GL_SetAttribute( SDL_GL_ALPHA_SIZE, 8 ); // E o Buffer duplo ( 1 ligado , 0 desligado ) SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 1 ); // Cria a Janela SDL_Surface * tela = SDL_SetVideoMode(400,400,32,SDL_OPENGL); // Se algum erro acontecer com na criação da Janela... if(tela == NULL){ // ... imprima o erro ... printf("Erro : %s ",SDL_GetError()); // ... feche o SDL e ... SDL_Quit(); // ... encerre o programa com 'erro' return -1; } // Define o título da janela SDL_WM_SetCaption("Exemplo Básico SDL + OpenGL",NULL); // Variável para os eventos SDL_Event evento; // Controle do Loop int estaRodando = 1; // Loop Principal while(estaRodando){ // Lê a fila de eventos e põe o evento mais antigo em "evento" while(SDL_PollEvent(&evento)){ // Entre nos tipos de eventos ... switch(evento.type){ // ... caso o 'X' da janela foi apertado ... case SDL_QUIT: // ... então saia do Loop Principal. estaRodando = 0; break; // Outros eventos .... default: break; } } // Espera 30 milissegundos para não forçar uso do processador SDL_Delay(30); } // Encerra o SDL SDL_Quit(); // Nenhum erro ocorrido =D return 0; }
Ubuntu/Debian/Kali Linux e outros no Android
Utilizando a biblioteca NCURSES - Parte II
Utilizando a biblioteca NCURSES - Parte I
Como agendar um backup automático do PostgreSQL no Cron evitando o problema de senha
Como preparar o Vim/Neovim para corrigir ortografia em português
Dark Web e Malwares na internet, quanto custa?
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Como verificar o hash de um arquivo baixado da Internet e como criar um hash
Debian 12 - IPTABLES - removendo NFTABLES
OverWatch 2 - Abrindo portas do jogo no Iptables.
Como instalar o adaptador wifi USB Intelbras ACtion A1200 no Linux Mint
Como normalizar seus arquivos MP3 para que fiquem no mesmo volume
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba
[Shell Script] Tire screenshots com Scrot facilmente com Zscrot
[Shell Script] DioPSI - Script multidistro para instalar programas
[Shell Script] ARS Vídeos - Cortador de vídeos e webcam shooter