Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-11-2018
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 101
Poder: 14
FENIXadr Va por buen camino
GLScene : los objetos no mantienen los colores

Hola gente.. que tal.. acá estoy de nuevo con unos problemitas de programación.. hace unos días que estoy haciendo una aplicación gráfica con GLScene y la verdad es una librería muy buena.. pero tengo un inconveniente que ya he buscado por la red y no he encontrado como solucionarlo.. la cosas es así..

Mi aplicación carga una imagen vectorial y en tiempo de ejecución crea un MultiPolygon para representar los diferentes polígonos de la figura.. luego creo otras figuras (GLLines) una por cada polígono para marcar los bordes (lo hago de esta forma porque no se si se puede hacer que MultiPoligon muestre los bordes de otro color) ... bueno hasta aquí todo bien...

El problema surge cuando le pongo los colores..

El primer MultiPoligon queda joya.. cada polígono con su color y cada borde con el suyo.. pero los MultiPoligon`s que creo desde ahí en adelante, o sea si cargo otra imagen vectorial, no respetan su propio material.. sino que se pone el material del borde..
o sea si la primera imagen vectorial tenía sus polígonos verdes y los bordes negros (por decir algo).. las demás imágenes vectoriales se cargan de color negro con bordes negros... alguien sabe porque el ultimo color es el que se usa siempre después de cargar la primera imagen???

Desde ya muchas gracias!!.
Responder Con Cita
  #2  
Antiguo 30-11-2018
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Yo diría que olvidas aplicar el material del nuevo MultiPoligon, o que no se lo asignas correctamente. Sin código, difícil decir algo más.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 30-11-2018
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 101
Poder: 14
FENIXadr Va por buen camino
Hola Ñuño .. gracias por responder.. lo pude solucionar... es un comportamiento de OpenGL que no llego a comprender del todo.. te cuento ..

Como todos ya sabemos OpenGL es una máquina de estados .. por lo tanto si asigno colores de materiales y bordes antes de dibujar los polígonos, se aplicarán correctamente una vez dibujados.. este inconveniente de que la primera vez funcione correctamente y después deje de funcionar ya lo había tenido cuando hice algunas cosas sobre OpenGL directamente. Después de renegar un buen tiempo, de repente empezó a funcionar bien y nunca supe porque se había solucionado.. Pero en la programación nada se soluciona solo..
Cuando comencé a trabajar con GLScene.. rápidamente vi lo solucionado que tienen algunos procesos tediosos de OpenGL y me gustó bastante..
La aplicación que estoy haciendo ahora es una aplicación para CNC donde es todo 2D y no necesito sombras, por lo tanto decidí trabajar sin luces para que los colores quedaran brillantes sin ninguna regulación de nada, ESE fue mi gran error... porque si bien los colores quedan más brillantes al no calcular las luces, tienen el inconveniente de que asigna bien los colores la primera vez, pero después no funciona correctamente y es un inconveniente que no logro entender del todo... de todos modos agregando luces se soluciona, y si éstas luces se manejan correctamente los colores quedan brillantes como uno desee..

En resumen.. mi problema fue en aquel momento y ahora NO COLOCAR LUCES..

Lección aprendida!!..
Responder Con Cita
  #4  
Antiguo 09-12-2018
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Mira que estuve a punto de poner "recuerda que OpenGL es una máquina de estados", pero pensé que iba a pasarme de condescendiente...

Me alegra que lo hayas arreglado y hayas aprendido. Enhorabuena.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #5  
Antiguo 09-12-2018
FENIXadr FENIXadr is offline
Miembro
 
Registrado: may 2010
Ubicación: Córdoba - Cba. - Argentina
Posts: 101
Poder: 14
FENIXadr Va por buen camino
..
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
GLScene: Guardar y cargar objetos 3D LuisAlf:: Gráficos 1 26-01-2012 09:46:38
Un pedido a los que mantienen ClubDelphi Lord Delfos La Taberna 2 18-02-2010 02:48:09
Glscene:indicador De Objetos LuisAlf:: Gráficos 5 21-01-2010 10:13:21
Duda sobre destrucción de objetos compuestos por otros objetos noob OOP 11 16-02-2009 01:28:33
GlScene Rabata Gráficos 2 12-06-2006 17:16:32


La franja horaria es GMT +2. Ahora son las 18:04:26.


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
Copyright 1996-2007 Club Delphi