Creando al Planeta tierra con GLScene [Delphi 2010]

Buenas tardes a todos los lectores de balusoft!, en este post vamos a ver algo interesante! y facil de hacer!, vamos a hacer nuestro planeta tierra estilo Google Earth, claro solo el planeta tierra sin ninguna funcionalidad!.

En este post aprenderemos:

  • Cargar texturas en runtime
  • Usar la clase Atmosphere
  • Iluminar superficies texturizadas
  • Utilizar la clase GLEarthSkyDome para simular el espacio

Pero para este post! es necesario tener la ultima version de GLScene!, no es necesario tener Delphi 2010, con Delphi 7 o con lazarus se puede hacer esto mismo.

Primero les mostrare lo que haremos en este post!:

image

image

Continuar leyendo “Creando al Planeta tierra con GLScene [Delphi 2010]”

Anuncios

Mas sobre GLScene escena basica (continuacion) [Delphi 7]

Buenas noches a todos! este post es de seguimiento inmediato del post anterior, y veremos mas cosas basicas de GLScene, como poner un skyBox, mas objetos y poder seleccionarlos.

Agregando mas figuras basicas

Lo que vamos a hacer es agregar unas cuantas figuras mas, para poder interactuar con ellas, poder seleccionarlas y moverlas con las flechas del teclado. Nuestro editor GLScene quedara de la siguiente manera:

1

Agregamos un GLPlane,GLSphere y un GLCone, en la imagen podemos encontrar las coordenadas que les asignamos a cada uno en la propiedad Position. Ademas al Plano le cambiamos mas propiedades, en direction le ponemos 1 en Y, como es un vector normalizado si le cambiamos los valores talvez se cambien a numeros extraños, simplemente si se cambian 2ponemos un 0 a los demas (X y Z), el tamaño le cambiamos a 10 en Width y en Height, ademas en la propiedad Material la expandimos y expandimos FrontProperties y en diffuse elegimos cualquier color que queramos ( esto se puede hacer con cualquier objeto, pero al momento solo al plano)

 

 

Continuar leyendo “Mas sobre GLScene escena basica (continuacion) [Delphi 7]”

Primera escena 3D basica con GLScene [OpenGL & Delphi]

Buenas noches a todosOpen-mouthed smile!, espero y hayan tenido unos buenos festejos! Hot smileen estas epocas. Para esta entrada crearemos nuestra primera escena 3D con GLScene, pero para esto es recomendable que hayas leido este post y este(este en especial), para tener GLScene instalado en nuestro Delphi.

GlScene nos facilita mucho al momento de trabajar con OpenGL, una serie de componentes faciles de usar, y a la vez un poco complicado al momento de profundizarseNerd smile!.

Escena basica 3D

Para crear nuestra escena basica 3D, pues necesitamos un lugar donde plazmar nuestros dibujos! y una camara para verlos!, asi estaremos trabajando. Para iniciar agregaremos un GLScene que esta en nuestra pestaña GLScene

1

Al aver agregado nuestro GLScene( que es el que nos maneja todo), crearemos un visor que es el que esta enseguida un GLSceneViewer, simplemente lo seleccionamos y lo arrastramos igual a nuestro form. Este visor lo aliniamos al cliente en la propiedad Align

Y ahora nos faltaria una camara para completar nuestra escena, damos doble click al componente glscene que agregamos y nos aparecera lo siguiente: Continuar leyendo “Primera escena 3D basica con GLScene [OpenGL & Delphi]”

Instalacion de GlScene en Delphi7

Buenas noches a  todos!, en esta entrada les quiero dejar una guia para la instalacion de Delphi 7 y una pequeña practica para probar que funciona, el GlScene que yo uso para delphi7 lo pueden descargar de aqui, la guia esta hecha en delphi6, pero es basicamente lo mismo, y este es la guia. Un saludo y pronto estare posteando de muy buenos ejemplos en glscene

Proximamente OpenGL y GLScene

Buenas noches a todos!, ultimamente solo hemos estado viendo cosas sobre OpenGL con delphi con puro codigo, pero existe una gran solucion y facilitar el uso de openGL para delphi y es GLScene, pronto empezare a postear sobre GLScene, pero… que es GLScene?

¿Que es GLScene?

GLScene es una librería 3D para Delphi basada en OpenGL que proporcionan unconjunto de componentes y objetos que permiten el renderizado de escenas 3D de un modo sencillo. Esta en desarrollo desde 1999 (creada inicialmente por Mike Lischke), es decódigo abierto y bajo la Licencia Publica Mozilla.Actualmente esta soportada por las versiones 5, 6 y 7 de Delphi, además existen versionespara Borlad C++ Builder versiones 5 y 6. También tiene cierta compatibilidad con Kylix (laversión para Linux de Delphi), pero aun no están disponibles todas las características y esta en desarrollo.GLScene está en continuo desarrollo, y casi diariamente salen nuevas versiones y mejoras de la librería, para poder obtener la ultima versión se ha de acudir al CVS (ConcurrentVersion System) del proyecto, que se encuentra en sourceforge: http://cvs.sourceforge.net/viewcvs.py/glscene/

Lo que muestra el vídeo a continuación lo hice en unas dos horas con GLScene, pero por que tuve algunos problemas con la simulación de la física, pero en si GLScene te facilita mucho al momento de programar con OpenGL

Este otro vídeo muestra un proyecto que desarrollamos en el tecnológico, que trata de crear escenarios virtuales de algun lugar del mundo con algún monumento representativo, pero el escenario se creara a partir de las condiciones del clima que existe en ese lugar en tiempo real

Sistema solar con OpenGL [Delphi 7]

Buenas noches!!, aqui estoy una vez mas tratando de no dejar en el olvido este blog! y claro sigo de obsesionado con OpenGL y delphi y ahora les traigo una aplicacion de post anteriores!, sera un sistema solar( o almenos algunos planetas) utilizando luz y texturas que ya lo hemos visto en post anteriores. De nuevo para no entrar con detalles de post anteriores el contexto lo haremos siguiendo este proyecto. En este proyecto tenemos todo el contexto creado con las librerias necesarias y ademas tiene dibujado un cubo en el comentario “//Aqui podremos dibujar lo que queramos” en delante podremos dibujar asi que borramos las 3 lineas de codigo (glutSolidCube u otras que esten) y empezemos a graficar 😀

Creando el Sol y Mercurio.

Primero que nada crearemos en nuestro evento “OnPaint” los primeros trazos para simular nuestro sistema solar, para eso dibujaremos una esfera central que sera nuestro sol, por el momento sera de color amarilla y una esfera mas diminuta que este girando alrededor del sol que sera mercurio. Para eso nos dirigimos a nuestro procedimiento onPaint y debajo del comentario //Aqui podremos dibujar lo que queramos, ponemos lo siguiente:

 //Aqui podremos dibujar lo que queramos
     glTranslatef(0,0,-10);
     glRotatef(115,1,0,0);
 glPushMatrix;
    glColor3f(1,1,0);
    glutSolidSphere(1,20,20);
 glPopMatrix;

 glPushMatrix;
    glColor3f(0.5,0.5,0.5);
    glRotatef(angle,0,0,1);
    glTranslatef(3,0,0);
    glutSolidSphere(0.1,20,20);
 glPopMatrix;

Continuar leyendo “Sistema solar con OpenGL [Delphi 7]”

Objetos con texturas OpenGL [Delphi 7]

Buenas noches!, en esta entrada veremos ahora como aplicar texturas a nuestros objetos en OpenGL asi usando una librería casera para poder facilitar el uso de la aplicación de texturas. Tal vez esta librería no es un poco efectiva pero sirve para acentar bases.

Primero que nada y como post anteriores, yo uso delphi 7 y estas librerias son las que uso OpenGL, Glut(API,DLL), Geometry y esta es la libreria para aplicar las  texturas.

Para comenzar vamos a crear nuestro contexto como lo hemos hecho en los 2 posts anteriores, creando varios eventos(OnCreate,OnDestroy,OnPaint,OnResize) asi que les pido porfavor que vean este post para crear el contexto hasta antes de comenzar a dibujar, o si bien quieren descargar este proyecto que contiene todas las librerias y el codigo necesario que se ha visto en post anteriores ( el proyecto esta listo para comenzar este post, recomiendo mejor que lo bajen)

Para comenzar pues haremos algo sencillo como una esfera texturizada:

La textura que se va a utilizar es importante que sea de tamaño de múltiplos de 2 debido a que así fue programada la librería casera, osea la imagen debe de ser BMP 64×64  o 128×128  descargar textura
Continuar leyendo “Objetos con texturas OpenGL [Delphi 7]”