Interesado en programar un juego para spectrum
Moderador: CEZ
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
Interesado en programar un juego para spectrum
Hola a todos soy nuevo por aqui,
como muchos de aquí de pequeño tuve un spectrum (+3) y como no sabia programar bien, no hice nada para él (bueno si hice pero en basic y mu simple).
Ahora que se y están las maravillosas z88dk y splib2, me he embarcado en un nuevo proyecto, sera un juego sencillito pero necesito ayuda con los sprites.
Soy incapaz de hacer que el sevenup me genere el código que quiero, o que la splib2 me la lea bien, el caso es que con los gráficos de las montañas del ski de ejemplo de magazineZX va perfectamente (cambiando el puntero al suyo).
El caso es que parece generar bien la imagen pero no me la dibuja correctamente...
Si necesitáis cualquier cosa como el código o una imagen, pedid pedid.
como muchos de aquí de pequeño tuve un spectrum (+3) y como no sabia programar bien, no hice nada para él (bueno si hice pero en basic y mu simple).
Ahora que se y están las maravillosas z88dk y splib2, me he embarcado en un nuevo proyecto, sera un juego sencillito pero necesito ayuda con los sprites.
Soy incapaz de hacer que el sevenup me genere el código que quiero, o que la splib2 me la lea bien, el caso es que con los gráficos de las montañas del ski de ejemplo de magazineZX va perfectamente (cambiando el puntero al suyo).
El caso es que parece generar bien la imagen pero no me la dibuja correctamente...
Si necesitáis cualquier cosa como el código o una imagen, pedid pedid.
- Ivanzx
- 256 bits

- Mensajes: 4316
- Registrado: 20 Nov 2005 00:50
- Ubicación: Frankfurt, Germany
- Contactar:
- Metalbrain
- 128 bits

- Mensajes: 1717
- Registrado: 16 Oct 2005 15:56
- Ubicación: Sevilla
- Contactar:
supongo que estarás usando el orden necesario para el Byte Sort Priority, que para la splib2 es:
Mask
Char Line
Y Char
X Char
Frame Number
Si eso no funciona, muestranos tus gráficos y código y le echaremos un vistazo. Más información sobre el funcionamiento de la librería la puedes encontrar por aquí:
http://www.computeremuzone.com/forum/vi ... c&start=90
Mask
Char Line
Y Char
X Char
Frame Number
Si eso no funciona, muestranos tus gráficos y código y le echaremos un vistazo. Más información sobre el funcionamiento de la librería la puedes encontrar por aquí:
http://www.computeremuzone.com/forum/vi ... c&start=90
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
Si, utilizo esa combinacion. Alguien ha conseguido usar splib2 con codigo C del sevenup?Metalbrain escribió:supongo que estarás usando el orden necesario para el Byte Sort Priority, que para la splib2 es:
Mask
Char Line
Y Char
X Char
Frame Number
Si eso no funciona, muestranos tus gráficos y código y le echaremos un vistazo. Más información sobre el funcionamiento de la librería la puedes encontrar por aquí:
http://www.computeremuzone.com/forum/vi ... c&start=90
- na_th_an
- 256 bits

- Mensajes: 11874
- Registrado: 22 Abr 2005 13:25
- Contactar:
Yo, pero retocando. Y yo prefiero definir los sprites en asm, no se, lo veo más clarito... Queda algo asín:
¡¡Y ya tardas en enseñar, pecador!! 
Código: Seleccionar todo
extern uchar estalactita [];
#asm
._estalactita
defb @00000000, @00001111
defb @01110000, @00000000
defb @01011100, @00000000
defb @00111110, @10000000
defb @00101100, @10000000
defb @00111010, @10000000
defb @00111100, @10000001
defb @00111000, @10000001
defb @00011100, @11000001
defb @00011000, @11000001
defb @00010100, @11000001
defb @00011100, @11000001
defb @00001000, @11100011
defb @00001000, @11100011
defb @00000000, @11100011
defb @00001000, @11100011
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
defb @00000000, @11111111
#endasm
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
- na_th_an
- 256 bits

- Mensajes: 11874
- Registrado: 22 Abr 2005 13:25
- Contactar:
- Benway
- Site Admin

- Mensajes: 9241
- Registrado: 24 Dic 2005 10:18
- Ubicación: Madrid
- Contactar:
Bueno, el clima aquí es variable, como en la vida realWave escribió:Me alegro, ademas he notado un buen clima en el foro.na_th_an escribió:Has venido a buen sitioAquí estamos los más eruditos en splib2 de españññia
Wave, bienvenido a este foro, en el que además entras con la mejor de las noticias posibles: El desarrollo de un nuevo juego para 8 bits!!!
- utopian
- 128 bits

- Mensajes: 1692
- Registrado: 15 Sep 2005 07:24
- Ubicación: Leganés, Madrid, Spain
Yo también uso los sprites según salen del sevenup (con la splib2). Lo único a tener en cuenta que yo recuerde:
- Los sprites DEBEN tener máscara, aunque luego no la uses desde el código. No tengo delante el programa, pero era algo así como Mask -> Use Mask. Así al exportar saldrá la máscara, y la librería estará contenta.
- El orden de exportación debe ser correcto, eso parece que lo tienes bien.
- Si estás usando el tutorial del autor, intenta entender bien la parte de añadir las filas y columnas en blanco, para asegurar que cuando muevas los sprites te sale bien.
Si quieres, sube un pantallazo del sprite tal y como se ve en el sevenup, lo que exporta y cómo se ve desde el código. Con eso seguro que podremos ayudarte
.
- Los sprites DEBEN tener máscara, aunque luego no la uses desde el código. No tengo delante el programa, pero era algo así como Mask -> Use Mask. Así al exportar saldrá la máscara, y la librería estará contenta.
- El orden de exportación debe ser correcto, eso parece que lo tienes bien.
- Si estás usando el tutorial del autor, intenta entender bien la parte de añadir las filas y columnas en blanco, para asegurar que cuando muevas los sprites te sale bien.
Si quieres, sube un pantallazo del sprite tal y como se ve en el sevenup, lo que exporta y cómo se ve desde el código. Con eso seguro que podremos ayudarte
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
Código: Seleccionar todo
unsigned char paleta[561] = {
255, 0,219, 0,109,128, 54,192,
127,128,107,128, 91,128,125,128,
125,128, 87,128,122,128,111,128,
53,192, 30,224, 11,240, 7,248,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,109, 0,182, 0,219, 0,
255, 0, 85, 0,170, 0,187, 0,
218, 0,107, 0,218, 0,107, 0,
186, 0,235, 0,170, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,171, 0,218, 0,106, 0,
255, 0, 41, 0,165, 0,170, 0,
170, 0,169, 0,170, 0, 82, 0,
170, 0,106, 0,169, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,109, 0,170, 0,170, 0,
255, 0, 33, 0, 84, 0, 41, 0,
65, 0, 42, 0,144, 0, 74, 0,
161, 0, 42, 0,129, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,170, 0,164, 0,178, 0,
255, 0, 0, 0,136, 0, 33, 0,
41, 0,128, 0, 18, 0,145, 0,
8, 0, 33, 0, 16, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0, 85, 0, 37, 0, 77, 0,
255, 0, 0, 0, 17, 0,132, 0,
148, 0, 1, 0, 72, 0,137, 0,
16, 0,132, 0, 8, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,182, 0, 85, 0, 85, 0,
255, 0,132, 0, 42, 0,148, 0,
130, 0, 84, 0, 9, 0, 82, 0,
133, 0, 84, 0,129, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,213, 0, 91, 0, 86, 0,
255, 0,148, 0,165, 0, 85, 0,
85, 0,149, 0, 85, 0, 74, 0,
85, 0, 86, 0,149, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,182, 0,109, 0,219, 0,
255, 0,170, 0, 85, 0,221, 0,
91, 0,214, 0, 91, 0,214, 0,
93, 0,215, 0, 85, 0,255, 0,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255, 0,219, 0,182, 1,108, 3,
254, 1,214, 1,218, 1,190, 1,
190, 1,234, 1, 94, 1,246, 1,
172, 3,120, 7,208, 15,224, 31,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
248,248,199,248,248,199,248,248,
199,248,248,199,248,248,199,248,
248,199,248,248,199,248,248,199,
248,248,199,248,248,199,199,199,
199};- Metalbrain
- 128 bits

- Mensajes: 1717
- Registrado: 16 Oct 2005 15:56
- Ubicación: Sevilla
- Contactar:
Las partes que deberían estar en blanco las tienes en negro pero con el ink a 7. Los bits deberían estar todos a 0, no a 1. Por otra parte no parece que eso explique la corrupción que sufre el gráfico, asegurate que le pasas la dirección del gráfico correctamente a la rutina que imprime, y que las dimensiones también son correctas. Y la próxima vez pon también los comentarios de la cabecera en C que coloca el SevenuP, para que veamos todas las opciones que se han usado al exportar.Wave escribió:unsigned char paleta[561] = {
255, 0,219, 0,109,128, 54,192,
127,128,107,128, 91,128,125,128,
125,128, 87,128,122,128,111,128,
53,192, 30,224, 11,240, 7,248,
255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,
Si una vez corregido el gráfico sigues sin dar con la tecla, no te va a quedar más remedio que enseñar el código completo.
- utopian
- 128 bits

- Mensajes: 1692
- Registrado: 15 Sep 2005 07:24
- Ubicación: Leganés, Madrid, Spain
Vale, mirando la primera columna parece que está bien, con el detalle que comenta MetalBrain. Para asegurarte que todos los caracteres tienen los mismos atributos, puedes usar la herramienta "Get attributes / set attributes" (dale al icono del cursor varias veces hasta que te salga eso en la barra de estado).
Definitivamente toca revisar el código. Si no quieres subir todo el mogollón, manda los trozos con la definición del sprite, y la llamada que haces para imprimirlo en pantalla.
Definitivamente toca revisar el código. Si no quieres subir todo el mogollón, manda los trozos con la definición del sprite, y la llamada que haces para imprimirlo en pantalla.
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
Es muy tonto eh XD, el grafico era una variable global y tenia el mismo nombre que el sprite que era una variable local, y digamos que el sprite dibujaba sus datos internos.utopian escribió:Coñe, por lo menos explica cuál era el falloWave escribió:Ya lo he solucionado, era un error mas tonto XD, pero ya pasan estas cosas.
Bueno, ya puedo meterme de lleno :p
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
- Kendroock
- 256 bits

- Mensajes: 7304
- Registrado: 24 Dic 2004 09:08
- Ubicación: Fuenlabrada (Madrid)
- Contactar:
- Benway
- Site Admin

- Mensajes: 9241
- Registrado: 24 Dic 2005 10:18
- Ubicación: Madrid
- Contactar:
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
- utopian
- 128 bits

- Mensajes: 1692
- Registrado: 15 Sep 2005 07:24
- Ubicación: Leganés, Madrid, Spain
-
Wave
- 8 bits

- Mensajes: 31
- Registrado: 23 Ene 2007 22:10
- Ivanzx
- 256 bits

- Mensajes: 4316
- Registrado: 20 Nov 2005 00:50
- Ubicación: Frankfurt, Germany
- Contactar:






