Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Para los entendidos en gráficos y OpenGL en Delphi (https://www.clubdelphi.com/foros/showthread.php?t=40604)

kakarotv5 21-02-2007 22:27:43

Para los entendidos en gráficos y OpenGL en Delphi
 
Como ya sabreis la programación de gráficos puede que sea uno de los campos más poco tocados y a la vez más difíciles de la programación.

Estoy estudiando la carrera de Ingeniería Técnica en Informática de Gestión, he aprobado ya todas las programaciones y me considero un programador con recursos suficientes para hacer bastantes cosas, bien es cierto que en la carrera no hemos tocado absolutamente nada de gráficos pero yo quiero por mi cuenta aprender.

El caso es que no se por dónde empezar, ando un poco perdido, de momento me he bajado el tutorial de Carlos García Trujillo sobre la programación con Delphi y OpenGL, tengo un tutorial sobre OpenGL entre mis favoritos, también he visitado la página de NeHe que dicen que es muy buena a pesar de estar en inglés y en C (si estuviera en español y en Delphi me tiraba de cabeza a esta), también tengo en mis favoritos la página de Andrómeda Studios esta en español, como veis tengo una mezcla de información.

Lo suyo sería seguir un orden para de momento saber de que va el tema y luego poco a poco poder "andar" yo sólo, supongo que será lo mismo que empezar a programar por lo menos tengo la misma sensación de estar perdido que cuando empecé a programar en Pascal.

Por ahora lo único que he hecho ha sido bajarme la unit OpenGL.pas y compilar algunos ejemplos que he visto por la red, hay algunos asombrosos como el delfín que sale del agua de la web de NeHe.

Bueno espero vuestros consejos.

Por cierto, ¿hasta dónde habéis llegado vosotros?. ¿Habeis hecho cosas difíciles?.

A mi me gustaría llegar por lo menos a crear un espacio tridimensional (supongamos un espacio vacío) donde poder ir insertando objetos (cosas sencillas, esferas, prismas, etc) en tiempo de ejecución y poder variar la posición de la cámara también en tiempo de ejecución. ¿Lo veis difícil?

Un saludo.

kuan-yiu 22-02-2007 10:19:21

En este tema más te vale entender bien el inglés porque el 90% de la documentación está en ese idioma y sólo de vez en cuando encontrarás algo en castellano.
Yo te sugeriría que buscases algo muy, muy teórico en castellano para tener claros los conceptos básicos y luego tratases de hacer tú un programa que sea una combinación de dos demos, así siempre tienes una referencia.

Por otra parte yo detesto OpenGL. Ya intenté programar con él y me dio muchos problemas, así que me pasé a GLScene, que se integra mucho mejor con Delphi.

Si buscas un poco en el foro encontrarás un montón de hilos sobre ambos temas.

kakarotv5 22-02-2007 15:03:11

Cita:

Empezado por kuan-yiu
En este tema más te vale entender bien el inglés porque el 90% de la documentación está en ese idioma y sólo de vez en cuando encontrarás algo en castellano.
Yo te sugeriría que buscases algo muy, muy teórico en castellano para tener claros los conceptos básicos y luego tratases de hacer tú un programa que sea una combinación de dos demos, así siempre tienes una referencia.

Por otra parte yo detesto OpenGL. Ya intenté programar con él y me dio muchos problemas, así que me pasé a GLScene, que se integra mucho mejor con Delphi.

Si buscas un poco en el foro encontrarás un montón de hilos sobre ambos temas.

Acabo de leer algo de GLScene, a simple vista parece más fácil de usar que OpenGL, ¿estoy en lo cierto?.

Pero al tener todo un poco más "mascado" ¿no irá esto en contra a la hora de hacer grandes cosas?.

De todos modos me ha gustado mucho, tal vez empiece por aquí que parece más fácil. Gracias y un saludo.

kuan-yiu 22-02-2007 17:12:18

Es más sencillo y directo, te permite inicializar de un plumazo el área de trabajo: lo que en OpenGL supone decenas de líneas de inicialización en GLScene se solventa poniendo un componente en el formulario, y aúnque sólo sea por eso ya merece la pena.
Por otra parte están disponibles las rutinas OpenGL, todas o al menos yo no he notado que falte ninguna, para usar directamente si lo necesitas.

kakarotv5 22-02-2007 19:01:18

Me acabo de instalar el GLScene y me he puesto manos a la obra a hacer un cubo que gira en un espacio tridimensional negro, la verdad es que es sorprendente que sin tocar código se pueda hacer esto, me imagino que con OpenGL "a pelo" hubiera tardado unos cuántos días, primero porque no tengo ni idea y segundo porque seguro que no es tan fácil como aparenta ser hacer un cubo que gira.

De todos modos voy a intentar sacar el máximo partido a GLScene a ver que sale. Muchas gracias.

Ñuño Martínez 22-02-2007 19:23:49

En realidad OpenGL no es tan difícil. Lo más complejo de OpenGL es la creación del puerto de salida (la ventana o el buffer), pero una vez conseguido esto no es difícil dibuja un cubo, por ejemplo. Eso sí, OpenGL es de "bajo nivel" (Matrices, vértices, caras...) mientras que GLScene es de "alto nivel" (Escenas, puntos de vista, meshes...).

kakarotv5 22-02-2007 19:30:46

Ñuño Martínez, ¿qué me recomiendas? OpenGL o GLScene , la verdad es que estoy seguro al 100% que con un documento/libro/manual/tutorial en español y en Delphi no habría OpenGL que se me resistiese pero claro eso es pedir casi la Luna.

Espero estar por aquí dentro de un año y hablar de cosas más serias sobre el tema y enseñaros mis aplicaciones en 3D.

Gracias a todos.

kuan-yiu 22-02-2007 19:36:08

Yo perdí 3 meses de tiempo de mi proyecto de fin de carrera intentando usar OpenGL y lo dejé porque a la hora de inicializar el espacio de representación el orden de activación de una serie de flags modificaba el comportamiento radicalmente... Y a día de hoy aún no sé por qué.

Lo peor es depurar el código OpenGL, lo recuerdo como una tortura.

Ñuño Martínez 22-02-2007 20:09:14

Cita:

Empezado por kakarotv5
Ñuño Martínez, ¿qué me recomiendas? OpenGL o GLScene

Yo te recomiendo que uses GLScene. Eso sí, aprende qué son y cómo utilizar vectores, matrices de transformación y toda esa parafernalia geométrica. Al principio es complicado y aburrido, pero te ayudará a sacar el mejor partido a la librería y a corregir errores tontos.

Lo cierto es que sí se echa en falta un buen manual OpenGL en castellano. Al menos yo sigo sin encontrarlo. :(
Cita:

Empezado por kuan-yiu
Yo perdí 3 meses de tiempo de mi proyecto de fin de carrera intentando usar OpenGL y lo dejé porque a la hora de inicializar el espacio de representación el orden de activación de una serie de flags modificaba el comportamiento radicalmente... Y a día de hoy aún no sé por qué.

Como digo OpenGL es de bajo nivel. De hecho, muchas llamadas a sus procedimientos se traducen directamente en accesos a los registros de la tarjeta de vídeo (salvo en Windows Vista, que realiza una traducción a DirectX incluso si la tarjeta entiende OpenGL de forma nativa). De ahí que sea tan complicado activar el espacio de representación, por ejemplo. En cierto modo OpenGL es algo así como el ensamblador de los microprocesadores gráficos (GPU), aunque no de todos, claro.

Yo siempre he utilizado OpenGL junto con AllegroGL, ya que facilita mucho trabajos tediosos y repetitivos como inicializar el buffer de salida, configurar la tarjeta gráfica, cargar texturas en la memoria de vídeo, etc. Otras librerías que también facilitan estas operaciones son GLUT, SDL y, evidentemente, GLScene. Yo voy bien con AllegroGL y OpenGL porque me va eso de trabajar en bajo nivel, pero para la gente que no le gusten esas cosas la mejor opción es, como ya he dicho, GLScene.

kakarotv5 22-02-2007 21:28:44

Pues nada, he decidido que me pondré con GLScene a sacarle todo el jugo posible.

El caso es que quiero tomarme esto como un hobby, ir haciendo poco a poco algo mío, un entorno en tres dimensiones hecho por mi.

Por ahora estoy siguiendo "Guía de Iniciación al GLScene" de David Martín de Vidales.

Para los que se quieran iniciar: bajaos el GLScene, seguid este o este tutorial para instalarlo y para iniciaros en este mundillo. Suerte.

EDITO: Bueno, ya me he acabado el tutorial "Guía de Iniciación al GLScene" de David Martín de Vidales, es impresionante lo que se puede hacer, no he tenido apenas complicaciones pero si alguien quiere que le guíe porque se ha quedado atrancado que me pregunte (si es ahora mejor, ya que lo tengo reciente) que se lo intentaré resolver.

Saludos.


La franja horaria es GMT +2. Ahora son las 07:26:27.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi