Gracias. Ya está subido aquí:
MicroPixel
Gracias. Ya está subido aquí:
MicroPixel
gracias por casi-terminar tu programa, seguro que pasa a formar parte de mis preferidos en la SD. Por cierto le queda algun detalle importante por pulir para ser una version defenitiva o simplmente alguna pincielada?
Bueno hay varias cosas que quiero hacer como mejorar la selección de colores, permitir guardado en formato PNG, implementar las herramientas de lineas, poligonos, etc. A partir de ahí pues cualquier cosa que fuera surgiendo.
Mi principal problema es que tengo muy poco tiempo libre para dedicarlo a esto, por eso puedo tardar bastante entre una versión y otra. Esta "me corría más prisa" porque quería subir una versión funcional, ya que la que subí de desarrollo aun no podía cargar imágenes, por lo que no era realmente usable.
Sugerencia , haz que se pueda utilizar la cruzeta y los botones para pintar las cuadriculas es mucho mas preciso que pintar sprites a mano en una pantalla de 320*240 con un palo de plastico.
aunque te falten cosas por poner es un buen programa.
Gracias jduranmaster. Es mi primer programa para la scene y la verdad, comentarios como ese son los que animan a seguir haciendo cosas.
Hola a todos, voy a escribir en este hilo para no abrir un hilo nuevo para cada duda que tenga, os cuento.
En mi programa MicroPixel, he detectado un problema en la función de relleno, y a ver si alguien tiene idea de lo que puede estar pasando. El caso es que al rellenar con un color una imagen grande, el programa se cierra. En el PC no se da el problema, pero en la consola si.
Creo que no es problema de la función porque si no fallaría con una imagen de cualquier tamaño.
No sé si estoy a punto de decir una tontería pero... ¿Hay algún límite en cuanto al número de llamadas a una función recursiva?
La función en cuestión es esta:
Gracias de antemano. Saludos.Código:int do_fill(SDL_Surface* surface, int x, int y, Uint32 src_color, Uint32 dst_color) { // Lo primero es saber que las coordenadas son correctas if(x >= 0 && x < surface->w && y >= 0 && y < surface->h) { // La ejecución de la herramienta se basa en colorear el pixel // solicitado y comprobar si los cuatro pixeles cardinales de // alrededor tienen el mismo color y se vuelve a llamar a la // herramienta para cada uno de casos afirmativos Uint32 pixel_color = GetPixel(surface, x, y); if(pixel_color == src_color) { PutPixel(surface, x, y, dst_color); // La función vuelve a ser llamada para los puntos de alrededor if(GetPixel(surface, x - 1, y) == src_color) do_fill(surface, x - 1, y, src_color, dst_color); if(GetPixel(surface, x, y - 1) == src_color) do_fill(surface, x, y - 1, src_color, dst_color); if(GetPixel(surface, x + 1, y) == src_color) do_fill(surface, x + 1, y, src_color, dst_color); if(GetPixel(surface, x, y + 1) == src_color) do_fill(surface, x, y + 1, src_color, dst_color); } } return 0; }
Mis Proyectos: MicroPixel(WIZ), iTunes App Store, Google Play Store
Hombre no hay un límite como tal, pero está claro que la recursividad come mucha CPU. En el PC puede que no lo notes porque es algo potente, pero en la wiz...
Procura evitarlo todo lo que puedas
No he mirado tu función pero si quieres podemos intentar pasarla a un proceso iterativo para ver si realmente el fallo es de la recursividad
Intentaré reescribir la función para que vaya pintando por líneas a ver si puedo reducir el número de llamadas recursivas.
Edito: Por cierto. Estoy trabajando en el control con los botones además del lápiz.
Última edición por turco; 06/12/2010 a las 13:15
Mis Proyectos: MicroPixel(WIZ), iTunes App Store, Google Play Store
Cierto, come memoria más que CPU me equivoqué en mi afirmación anterior xD
Y también aumenta la complejidad del algoritmo (no si es fácil o difícil de implementar, sino la complejidad logarítmica). A mi siempre me han recomendado que en sistemas poco potentes si se puede hacer iterativo mejor que recursivo (bueno y en general, pero hay casos en los que no se puede o es mucho más difícil de hacer iterativo).
Ohhh que buena pinta tiene!!!!
Perdon por el reflote gente, pero alguien tiene alguna novedad sobre este programita?
La verdad que venia excelente...
Se subió una nueva versión en el concurso relámpago, hace unos meses... creo. Yo recuerdo haber subido todos los programas de menos de 10MB a la zona de descargas, y algunos aun estaban pendientes de ser validado por los administradores.
PROYECTOS REALIZADOS: FrikiMusic, Motor Scroll Tileado v3.2, Venturer2X (GP2X/WIZ), Echo, Screen Break Time
PROYECTOS EN MARCHA (algunos): Bennu GP2X: 95% (necesito ayuda) ¡Antes de Halloween!: 92% SpaceH2H: 8%
Marcadores