Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Compatibilidad Win32 y SDL??

Iniciado por Mcur, 03 de Marzo de 2007, 10:52:27 AM

« anterior - próximo »

Mcur

Hola a todos, soy un antiguo programador que he vuelto a la carga desde hace 6 meses. Después de bichear C y C++, quiero meterme con una librería gráfica. Opciones, DirectX, Opengl, Allegro y SDL. Llevo 2 semanas con Allegro y me resulta muy asequible, no quiero profundizar más en ella y quiero probar Sdl.

La pregunta es sencilla, es compatible trabajar con las API de Windows teniendo activado Sdl, en el caso de Allegro creo que es totalmente incompatible. Lo cierto es que ni lo he probado, básicamente porque aun no he realizado nada con Win32. Como Sdl dicen que es para videojuegos y aplicaciones, no se si dichas aplicaciones tienen compatibilidad con las ventanitas.

No se si lo que pregunto es una salvajada, pero para que os hagáis una idea, la ultima vez que programe fue en un Spectrum un programita en ensamblador.

Oye, muchas gracias por todo y me alegro estar de nuevo entre programadores.

tewe76

Hola, currilingo :)
Yo no te sé contestar a tu pregunta, pero aprovecho para darte la bienvenida a estos foros. He estado mirando tu blog y ¡resulta que eres dibujante! Y bastante bueno. Siempre es agradable ver nuevos grafistas por aquí, que son los que más escasean ;)

Lo dicho, bienvenido :)
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Mcur

Gracias. Sí, soy dibujante profesional, vivo de ello desde hace uno 14 años. Es el dibujo animado el que me da de comer, pero también he hecho mis pinitos en diseño e ilustración. Lo cierto es que he vuelto a la programación para airearme un poco. Además tengo la intención de hacer un pequeño juego tipo ajedrez (Estrategia) dotándolo de animaciones y un desarrollo rápido. Es un viejo sueño que espero realizar de aquí a un par de años. Sin prisas pero sin pausas.

El tema es ver que librería gráfica cojo. DirectX es solo para Windows, y cada día que pasa odio más al "ventanas". OpenGL no me hacen falta las 3D.  
Creo que Allegro y SDL son las idóneas, pero la duda era... ¿Puedo trabajar ventanas en modo gráfico? No se si SDL tiene para hacer ventanas, personalizarlas, etc.

Un saludo.

tewe76

Hombre, si tienes claro que lo que quieres no es aprender programación, sino hacer un juego, probablemente te convenga usar un game maker, ya que te dan resultados mucho más rápidos. Te aconsejo o Blitzmax ( http://www.blitzmax.com , ahora mismo no va el enlace, qué cosa más rara  :shock: ) o Torque Game Builder ( http://www.garagegames.com/products/torque/tgb/)
Son 2D, multiplataforma, muy testeados, relativamente fáciles de aprender y bastante baratos (~100$), así que creo que se ajustan exactamente a lo que necesitas.

Espero que te sirva :) (aunque sigo sin contestar a tu pregunta inicial  :roll: )
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos


Mcur

OK, muchas gracias. Me meto de cabeza en SDL, ya os contaré como me va y cuando le tenga cogido el tranquillo espero ayudar en lo que pueda.

Bueno, estaré por aqui bicheando. Llevo 3 dias metido en la web y estoy enganchao con toda la información que hay en ella.

Lo dicho, gracias.

Harko

Y ya si quieres puedes probar la CRM32Pro que ha hecho TheAzzazel, esta basada en SDL y lo que hace es complementarla con algunas de las cosas que le faltan y mejorar aun mas su manejo. Deberias, como minimo, hecharle un vistazo.

De todas formas seguro que TheAzzazel te lo explica mejor. De echo me extraña que aun no haya comentado algo, estara ocupado ;).

Harko.
-=Harko´s Blog=-
Fui el primer civil en probar el "Lord of Creatures" y ademas usaban mis cascos. :D

-=Portfolio=-

Alguno de mis juegos:
-=Feed The Frog=-

Neroncity

Mcur

Con CRM32PRO se pueden escalar y rotar los sprites?? Llevo todo el día intentando instalar el SDL_gfx y nada de nada, no tengo ni papa. Copio la DLL en system, las .h dentro de las includes del dev-c++ y los archivos . a y .am dentro de lib. No sé si tengo que hacer algo más.

EL CRM32 tiene muy  muy buena pinta, pero no sé yo si para los que empezamos es algo lioso. La web es muy completa y tiene toda la pinta que para personas que estén metidas en la programación tiene que ser superclara, pero los que empezamos necesitamos ejemplos. Sí, hay ejemplos, pero tampoco he conseguido arrancarlos.

La frustración me persigue a diario desde que he decidido aprender a programar, pero la satisfacción al resolver los problemas es tan grande que vale la pena estar delante de la pantalla tantas horas. Ahora pido un poco de ayuda. Gracias por todo.


[EX3]

Cita de: "Lex"y de todas formas no son operaciones gratuitas para hacer alegremente en medio de un videojuego.
Si hablamos de hacerlo por software pues no es algo recomendable, pero haciendolo por aceleracion via hardware por que no?

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

TheAzazel

Buenas!

compilar los ejemplos de la lib lo considero algo bastante trivial, tanto en VisualStudio, como con GNU C(ya sea en linux o windows) por lo que tendras que estudiar un poco mas el tema de como compilar un proyecto, utilizar una libreria y enlazar contra ella, etc..

cierto que alguien con conocimientos lo podra utilizar mucho mejor pero te aseguro que una vez controles lo mas basico, veras que no es nada dificil hacer las cosas.

Por otro lado, Lex tiene razon, a dia de hoy, ni se rotan ni se escalan sprites, lo intente hace unos meses pero iba demasiado mal y no puedo hacer eso via hardware, luego mas impedimentos...
Que hago yo? pues el sprite tiene todas las rotaciones posibles y ya esta, asunto arreglado, ahora si quieres una rotacion perfecta de grado en grado..creo que esta solucion sera un poco tediosa.

Warwolf y Harko hicieron pequenos tutoriales, plantillas y demas, puedes encontrar links a ello en la web, tambien, en la red, hay varios documentos para newbies en SDL y una vez controles SDL, controlaras CRM32Pro :)

Elijas lo que elijas.. mucho animo y sigue con ello :)

Sante05

Si usas una libreria 2D como SDL no suele ser una buena idea el rotar o escalar sprites, porque las operaciones hay que hacerlas a nivel de software y es bastante lento (al igual que el alpha blending).

Como te han dicho, una solución es preparar ya los sprites rotados de antemano y solo tener que dibujarlos. Pero si realmente te interesa escalar y rotar en tiempo real, quizas deberías mirar el pasar a OpenGL (o Direct3D) que si soportan todas estas operaciones a nivel de hardware.

Tu mismo :lol:. Un saludo


Sante

Otra opción sería usar una librería al estilo de glSDL, que si no me equivoco es una implementación de SDL sobre OpenGL, y debería permitir todas estas operaciones. Aunque nunca lo he probado, solo hablo de oidas.

[EX3]

Cita de: "Lex"En XNA si hay para rotar, escalar y hacer lo que sea con aceleración hardware, pero claro ya hablaríamos de tener que usar algún lenguaje de .NET.
Sera que no hay librerias que aprovechan OpenGL para hacer rotaciones y escalados fluidamente :P

Y weno, no, no es muy comun encontrar juegos que abusen de rotaciones y escalados, pero pudiendo aprovechar estas funcionalidades no veo por que no hacerlo, en algunos casos puede ser mas util que tener varios frames del sprite rotado, dado que tienes mas libertad, y encima al ser via hardware puedes suavizar los pixeles del sprite al rotarlo. Vamos, que depende de lo que vayas hacer y como lo quieras hacer te puede o no merecer la pena pero si es cierto que sin rotaciones tambien se pueden hacer juegos.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.