DefSprite, otro programa que hice antaño.
Este programa sirve para definir sprites. Los sprites son multicolor y con transperencia. Se pueden tener en edición varios sprites a la vez. El código para poner los sprites en la pantalla está en Sprite_maq, pero lamentablemente perdí el código fuente y hay que mirar el programa DefSprite_bas para ver cómo se usa. Igualmente en BigSprite_maq está el código para mostrar el sprite pero más grande, sólo útil para la edición.
He enviado el fichero a Badaman para que lo ponga junto a DefCarac, así que espero que él os dé el enlace para descargarlo.
Lo he adaptado para que funcione en flp1_, pero sólo eso. Tengo en proyecto, según la disponibilidad de tiempo, adaptarlo a Toolkit II y hacerlo más versátil en cuanto a usabilidad. Quiero hacer una interfaz de usuario homogénea entre DefCarac y DefSprite.
Saludos
Programa para definir sprites
Moderador: Sir Cilve Sinclair
-
- Jack The Nipper
- Mensajes: 112
- Registrado: Mar Abr 08, 2008 9:00 am
- badaman
- Sabreman
- Mensajes: 499
- Registrado: Mar Ene 29, 2008 10:58 am
- Contactar:
Re: Programa para definir sprites
Ya está subido el programa. Aquí una captura de pantalla:
Para descargar, aquí:
http://www.speccy.org/sinclairql/progra ... Sprite.zip
Para descargar, aquí:
http://www.speccy.org/sinclairql/progra ... Sprite.zip
Última edición por badaman el Jue Ene 15, 2009 12:07 pm, editado 1 vez en total.
Sinclair QL, la respuesta profesional de los 80
-
- Sabreman
- Mensajes: 396
- Registrado: Dom Feb 24, 2008 10:56 pm
Re: Programa para definir sprites
¡¡Tiene buena "pinta" ...!! Seguro que nos vendrá muy bien.
Sería de gran ayuda para muchos de nosotros (los que nunca hemos usado sprites) el tener un ejemplo, lo más simple posible, de uso y manejo de esos sprites con superbasic.
Sería de gran ayuda para muchos de nosotros (los que nunca hemos usado sprites) el tener un ejemplo, lo más simple posible, de uso y manejo de esos sprites con superbasic.
- badaman
- Sabreman
- Mensajes: 499
- Registrado: Mar Ene 29, 2008 10:58 am
- Contactar:
Re: Programa para definir sprites
Por lo que he podido ver en el código del programa, a parte de la rutina bigsprite, que ahora mismo, para usarla en un programa no nos va a ser de mucha utilidad, a no ser que queramos volcar un título gigante...
la rutina sprite_maq lo que hace es volcar en pantalla el sprite almacenado en una dirección de memoria en las posiciones de pantalla x e y.
véase el ejemplo en la línea:
1480 CALL sprt,ds(s),203,192
Donde sprt es la dirección de memoria donde se almacena la rutina sprite_maq,
ds(s) contiene la direccion de memoria del sprite, y
los otros dos valores corresponden a las posiciones X e y en pixels.
hasta ahora, esta rutina haría lo mismo que, para hacernos una idea, el volcador del dragón que utilizas en OSUSQ, pero en C/M.
Lo que se necesitaría, para poder usar estos sprites en SuperBASIC es una rutina que no sólo vuelque en pantalla, sino otra que haga el proceso contrario, que salve una pequeña zona de memoria de pantalla para poder restaurarla luego cuando redibujemos el sprite donde queramos, es decir:
1.- salvar zona de memoria de pantalla donde dibujaremos el sprite
2.- dibujar el sprite...
3.- restaurar zona de memoria...
4.- volver al punto 1.
Estaríamos hablando aquí de sprites muy básicos, con sólo transparencia, sin movimiento propio ni detección de colisiones, pero que nos daría de entrada muchisimo juego para empezar a utilizar gráficos de pixels en el QL.
A ver si el amigo Radas tiene tiempo o entre él y Zerover nos regalan algo así
También recuerdo, para el que pudiera estar interesado, que tengo disponible el Super Sprite Generator v. 2.0, que hace todo eso y más, por si se quiere saciar la curiosidad y ver como se hace todo esto profesionalmente, aunque lo he probado con GoldCard y parece que no va bien sino es en modo 128. Los interesados ya saben. Correo al canto.
la rutina sprite_maq lo que hace es volcar en pantalla el sprite almacenado en una dirección de memoria en las posiciones de pantalla x e y.
véase el ejemplo en la línea:
1480 CALL sprt,ds(s),203,192
Donde sprt es la dirección de memoria donde se almacena la rutina sprite_maq,
ds(s) contiene la direccion de memoria del sprite, y
los otros dos valores corresponden a las posiciones X e y en pixels.
hasta ahora, esta rutina haría lo mismo que, para hacernos una idea, el volcador del dragón que utilizas en OSUSQ, pero en C/M.
Lo que se necesitaría, para poder usar estos sprites en SuperBASIC es una rutina que no sólo vuelque en pantalla, sino otra que haga el proceso contrario, que salve una pequeña zona de memoria de pantalla para poder restaurarla luego cuando redibujemos el sprite donde queramos, es decir:
1.- salvar zona de memoria de pantalla donde dibujaremos el sprite
2.- dibujar el sprite...
3.- restaurar zona de memoria...
4.- volver al punto 1.
Estaríamos hablando aquí de sprites muy básicos, con sólo transparencia, sin movimiento propio ni detección de colisiones, pero que nos daría de entrada muchisimo juego para empezar a utilizar gráficos de pixels en el QL.
A ver si el amigo Radas tiene tiempo o entre él y Zerover nos regalan algo así
También recuerdo, para el que pudiera estar interesado, que tengo disponible el Super Sprite Generator v. 2.0, que hace todo eso y más, por si se quiere saciar la curiosidad y ver como se hace todo esto profesionalmente, aunque lo he probado con GoldCard y parece que no va bien sino es en modo 128. Los interesados ya saben. Correo al canto.
Sinclair QL, la respuesta profesional de los 80
- radastan
- Phantomas
- Mensajes: 2232
- Registrado: Lun May 07, 2007 5:34 pm
- Contactar:
Re: Programa para definir sprites
badaman escribió:A ver si el amigo Radas tiene tiempo o entre él y Zerover nos regalan algo así
Va, va, es que estoy en pleno proceso del quinto número del fanzine y no doy a basto.
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
Hay otras páginas.... pero no son Bytemaniacos
http://www.bytemaniacos.com
Orgullo de 8 bits
_________________________________________
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 9 invitados