Mauricio Emilio Gomez - mgomez1974

Curso de OpenGL - Visual c++ 6.0

Pagina Principal  Mauricio Emilio Gomez Sanabria 

Laboratorios correspondientes a la Materia de Multimedia y Computacion Grafica en Bogotá - Colombia. 

Como examen escrito del tema de opengl recomiendo la siguiente pagina y espero que Aide Jazmin Gonzalez Cruz se deje conocer porque hizo una excelente pagina y no coloco el correo electronico para contactarla :)

http://aide-comp-graf.blogspot.com/2007/03/previo-practica-2_06.html

Primera Clase:

El objetivo de esta clase es introducir al estudiante en el manejo del compilador visual c++ desde un basico "hola mundo" en "Win32 Console aplication", hasta el primer programa con OpenGL y glut.

Aprendiendo a programar en OpenGL a partir de O en visual c++ 6.O ,para que cualquiera de los siquientes ejemplos le funcione debe estar instalado  

glut32.dll en el directorio c:\windows\system32

glut.h en el directorio C:\Archivos de programa\Microsoft Visual Studio\VC98\Include\GL  

glut32.lib C:\Archivos de programa\Microsoft Visual Studio\VC98\Lib

Posterior mente con el click derecho del raton baje los siquientes programas colocandolos en su carpeta de mis documentos: 

main01.cpp  Programa para recordar Hola mundo en modo consola 

Para los primeros pasos en c le recomiendo primero estudiar este recorderis

Fin de la primera clase:  Como trabajo de laboratorio se plantea hacer los comentarios (documentacion) del codigo de main 07.cpp y colocarlo en su espacio de moodle.

Segunda Clase:

main08.cpp

main09.cpp

Para esta segunda clase es importante leer el minimanual de opengl compuesto por Daniel Barrero:

MiniIntroOpenGL.pdf  

main10.cpp

main11.cpp

main12.cpp

Construccion de un cubito a pedal:

cubo01.cpp   Con este ejemplo se muestra la construccion de un cubito sin luces y sin normales pero se ve en tres dimensiones gracias a que cada uno de sus vertices tiene un color diferente.

cubo02.cpp    El Cubo de este ejemplo ya tiene las normales activadas y las luces por lo que se puede ver.

cubo03.cpp   Como cortecia de la pagina  http://www.codecolony.de/opengl.htm#TexturesBfC     evolucionamos nuestro cubito para que tenga una textura cargada en formato bmp. tambien se necesitan los archivos: textures.cpp  y textures.h    y tambien la textura:  tex1.bmp

main12b.cpp

main13.cpp

main14.cpp

main15.cpp

Coloco aqui un codigo adicional para el manejo del push y el pop:  sistemasolarDiego_Cabra.cpp 

main16AlphaBlend2.cpp

main16AlphaBlend.cpp

Ahora para hacer las aplicaciones interactivas con metodos convencionales como el raton tenemos estos ejemplos de picking:

mainmenus04.cpp

Una de mis mayores obseciones y poco entendidos fenomenos de la naturaleza, el agua, a continuación les muestro en una forma muy muy simple como simular agua en OpenGL.  Poco a poco espero ir mejorando considerablemente la técnica porque para ser franco hasta la fecha la simulación de agua es de lo mas bizarro.

main18Agua.cpp 

main19Agua.cpp 

main20Agua.cpp 

main21Agua.cpp 

main22Agua.cpp 

main23Agua.cpp   

Para que este funcione se necesita: textures.cpp y textures.h y finalmente la textura tex2.bmp

main23texturas.cpp 

main30vectores.cpp 

main31vectores.cpp 

 Como complemento adicional coloco el codigo de como hacer un protector de pantalla en visual c++ y OpenGL. No he tenido el tiempo suficiente para limpiar realmente el codigo pero espero sea de su utilidad.

gl_Saver1_8088net.rar

Regresar a  la pagina principal

 

Voxeles

voxel.rar

voxel.zip

Primera publicacion del codigo de acceso a puerto serial incluido a OpenGL, la libreria de acceso al puerto serial es cortesia de la pagina:

http://wxcode.sourceforge.net/showcomp.php?name=wxCtb

se necesitan adicionar las librerias wxctb-0.8.lib WINMM.LIB  al proyecto y a 

windows/system32/wxctb-0.8.dll.

Tambien es necesario colocar estas librerias:  wx.rar  en el directorio C:\Archivos de programa\Microsoft Visual Studio\VC98\Include\wx

y stdafx.cpp y stdafx.h en la mismas carpeta donde se encuentre el main41_codigo_flexometro.cpp

cuando sale el warning de compilacion:

Linking...
LINK : warning LNK4098: defaultlib "LIBCMT" conflicts with use of other libs; use /NODEFAULTLIB:library

usted debe  entrar a :  proyect - settings - link category input y- ignore libraries y colocar LIBCMT.lib

recuerde cambiar wx/ctb/win32/timer.h y adicionarle la linea

#include "mmsystem.h"

El primer codigo que nos funciono fue:

main40_codigo_flexometro.cpp

Este codigo ya mueve un cubo en 3D mediante el flexometro.

main41_codigo_flexometro.cpp

 

Mis primeros  pasos en JOGL.

Bajar el Netbeans 6.0

entrar a la pagina http://blogbeebe.blogspot.com/2007/09/netbeans-6-beta-1-nano-review.html
 y seguir las instrucciones.