dvik
|
|
« Respuesta #120 : 08 de Diciembre de 2006, 07:56:42 pm » |
|
...and the same without armour + the skeleton when he dies. So just modifiying the sprite attribute table is not enoguh, right?
|
|
|
En línea
|
|
|
|
ARTRAG
Visitante
|
|
« Respuesta #121 : 08 de Diciembre de 2006, 09:32:06 pm » |
|
daniel: You're totally rigth. You need to update onfly the Main Character's definitions. It is mandatory if you want nice animations. I do this for our MC, while we use two SPT's stored in VRAM (swapped each 8 vblank) for NPCs (this allows up to 128-4 definitions).
My sprite management actually is far more complex than this, but the main ideas are here. I use also a double SAT and I do the SPT update for the MC in multiple steps in order to spread the CPU load on many vblanks.
|
|
« Última modificación: 08 de Diciembre de 2006, 11:39:10 pm por ARTRAG »
|
En línea
|
|
|
|
dvik
|
|
« Respuesta #122 : 08 de Diciembre de 2006, 11:42:09 pm » |
|
@ ARTRAG: Is your sprite engine self contained or is it an integrated part of the game engine? I guess what I'm asking is if its easy to port the sprite engine into a new game such as GnG.
|
|
|
En línea
|
|
|
|
ARTRAG
Visitante
|
|
« Respuesta #123 : 09 de Diciembre de 2006, 01:24:19 am » |
|
Currently it isn't very portable, sorry... The sprite engine is (almost) the code of th game itself. Anyway we (Huey and me) will try to do separate C modules for each parts of core of the game in order to allow the willing people to reuse the sprite engine or part of it. The main issue with the AI is that the key part of the code is in encoded tables that describe the NPC AI and animation, thus it is essential to release the PC tools that allows to design the NPC, encode the state machines, the transition tables, the animation tables etc. etc. giving as output tables directly usable by the NPC engine. The PC tools, like the NPC code, are in the middle of the development, at the moment, I do not think we can release something very soon. http://retrodevelopment.wordpress.com/In any case, if this can help your development of G&G, we could try to : 1) publish some snippets of the AI core as it is now (unstable and undocumented, even now if Huey agrees) 2) publish the full source at the end of the development (stable and documented)
|
|
« Última modificación: 11 de Diciembre de 2006, 01:03:00 am por ARTRAG »
|
En línea
|
|
|
|
xenon
|
|
« Respuesta #124 : 11 de Diciembre de 2006, 07:54:51 am » |
|
¿Habeis probado la demo técnica de ayer mismo? ¡FLIPANTE!!
|
|
|
En línea
|
MSX now!
|
|
|
jltursan
|
|
« Respuesta #125 : 11 de Diciembre de 2006, 10:24:06 am » |
|
So all in all 16 different animations. And if each uses 4 sprites, we'll use all 64 sprites for just the main character. In CoT I faced the same problem and the solution was a fast horizontal mirroring routine of the main character's sprites. Being fast is hardly noticed and in GnG, as it always comes with a background scroll direction change it would be even harder to see the possible speed glitches.
|
|
|
En línea
|
Doom dee doom dee doom
|
|
|
dvik
|
|
« Respuesta #126 : 11 de Diciembre de 2006, 07:15:36 pm » |
|
In CoT I faced the same problem and the solution was a fast horizontal mirroring routine of the main character's sprites. Being fast is hardly noticed and in GnG, as it always comes with a background scroll direction change it would be even harder to see the possible speed glitches. It is a challenge indeed. I think that with ARTRAG's suggestion (if I understand it correctly) it wouldn't be so hard. He is using two SATs (or two different sprite data areas) to do the animation of the enemies, then he have four sprites for the main character which data is updated every time the animation changes. Updates to the enemies can be done flicker free since its done in a back buffer. The updates to the main character can be done in a 'safe' place i.e. no updates on the same scan lines as the character is currently located at.
|
|
|
En línea
|
|
|
|
jltursan
|
|
« Respuesta #127 : 11 de Diciembre de 2006, 09:41:35 pm » |
|
then he have four sprites for the main character which data is updated every time the animation changes So he must be using a similar routine, I'm only dumping the data from three sprites with this piece of code: MAIN_FACERIGHT: ld hl,SPRDATA jr DUMPDATA MAIN_FACELEFT: ld hl,INVERTED DUMPDATA: xor a di out ($99),a ld a,$78 ei out ($99),a ld bc,$2098 ld d,$02 .LOOP: outi jp nz,.LOOP dec d jp nz,.LOOP ret
Unrolling could speed even more the routine...
|
|
|
En línea
|
Doom dee doom dee doom
|
|
|
dvik
|
|
« Respuesta #128 : 11 de Diciembre de 2006, 09:53:37 pm » |
|
@jltursan: Your blitter is almost optimal. The tight loop with the outi can be unrolled, but if you are in the display area you need to insert two nop's between the outi's so you don't write too fast to the VDP. The jp is 11 CPU cycles and two nops are 10, so you won't save much at all. If you're blitting a couple of hundred bytes, it can be good to unroll the loop but not for this small amount of data.
Actually, if you use two sprite pattern tables you can also update the main character in a back buffer so you won't get any flicker at all. You just need to sitch the tables outside the display area.
|
|
« Última modificación: 11 de Diciembre de 2006, 09:55:55 pm por dvik »
|
En línea
|
|
|
|
MsxKun
|
|
« Respuesta #129 : 11 de Diciembre de 2006, 09:58:57 pm » |
|
In Parachuteless Joe (and Tam Tam Twins too), I used to copy only the pattern of the required frame from ROM to VRAM, so I can have more than 64 sprites in Rom and just make a dump of 3x32 bytes (in PJ), on every frame, copying the 3 patterns on the 3 main sprite layers. I think it's an acceptable amount of bytes, and you can have more sprites. But it takes a big space in the Rom But it that way, you can have a lot of patterns, in Rom, and the rest of vram sprite data, free for use for other sprites at the usual mode, (enemies, etc...)
|
|
|
En línea
|
-- She Bops!
|
|
|
ARTRAG
Visitante
|
|
« Respuesta #130 : 11 de Diciembre de 2006, 11:40:49 pm » |
|
In CoT I faced the same problem and the solution was a fast horizontal mirroring routine of the main character's sprites. Being fast is hardly noticed and in GnG, as it always comes with a background scroll direction change it would be even harder to see the possible speed glitches. It is a challenge indeed. I think that with ARTRAG's suggestion (if I understand it correctly) it wouldn't be so hard. He is using two SATs (or two different sprite data areas) to do the animation of the enemies, then he have four sprites for the main character which data is updated every time the animation changes. Updates to the enemies can be done flicker free since its done in a back buffer. The updates to the main character can be done in a 'safe' place i.e. no updates on the same scan lines as the character is currently located at. I have two SPTs switched each 8 vblanks, one holds the odd animation frames the other holds the even animation frames for the NPC. This allows almost 128 frames for NPC animations. Actually 4 sprite positions are reserved in each SPT for the main character. The z80 updates the 4 positions of the MC in the inactive SPT, so the load is split across 8 vblanks. At the SPT swap, the new MC frame appears, where the z80 has copied only 1/8 of the data per frame. I have also a double SAT, but this is another history
|
|
|
En línea
|
|
|
|
mesiasmsx
|
|
« Respuesta #131 : 30 de Enero de 2007, 10:52:29 pm » |
|
Voto a brios! Ghost and Goblins forever. Si alguien consigue currarse una version maja me corro Por cierto yo hace años pensaba que habia una version, en el ultimo numero de msx-club lo decian en el coleccionable creo,era un articulo que comparaba juegos de msx salidos otras plataformas creo. Se decia que los graficos, coño! voy a buscarlo: Pues vaya, no he tenido suerte, el cd recopilatorio de Martos no me funciona, pero si alguien lo tiene a mano puede comprobar que hablan de Ghost&Goblins y dan a entender que existe par MSX, aunque seguro es solo una fantasia. De todas formas hasta hace muy pocos años no llego la rom de Capcom Comando que tampoco se sabia seguro de su existencia.
|
|
|
En línea
|
|
|
|
RC743
|
|
« Respuesta #132 : 30 de Enero de 2007, 11:37:01 pm » |
|
Pues ya estas pasando la rom si la tienes del Comando que yo ahora me entero!!!! (llamadme empanao) Buenoo y sobre el G´n´G ... la msx club ya tenia fama de anunciar juegos que no existian para msx.. y no solo anunciarlos sino comentarlos en analisis y todo.... ¿ Alguien tiene el Prince of Persia ?
|
|
|
En línea
|
Obsoletobots : Transformense y Avancen!
|
|
|
pitpan
|
|
« Respuesta #133 : 30 de Enero de 2007, 11:49:14 pm » |
|
El COMMANDO oficial de Capcom / ASCII para MSX es bastante patético, pero bueno, es un producto oficial y tiene muchos colorines... Me quedo de lejos con el WHO DARES WINS II de Alligata. Puede ser sencillote, pero es un gran juego, muy digno y muy divertido. En una palabra: muy logrado. Y, además, ocupa bien poco: creo que es compatible incluso con MSX con 16 KB de RAM, pero no estoy seguro de esto (haré mis averiguaciones).
|
|
|
En línea
|
|
|
|
KNM
|
|
« Respuesta #134 : 31 de Enero de 2007, 01:03:30 pm » |
|
Voto a brios! Ghost and Goblins forever. Si alguien consigue currarse una version maja me corro Por cierto yo hace años pensaba que habia una version, en el ultimo numero de msx-club lo decian en el coleccionable creo,era un articulo que comparaba juegos de msx salidos otras plataformas creo. Se decia que los graficos, coño! voy a buscarlo: Pues vaya, no he tenido suerte, el cd recopilatorio de Martos no me funciona, pero si alguien lo tiene a mano puede comprobar que hablan de Ghost&Goblins y dan a entender que existe par MSX, aunque seguro es solo una fantasia. De todas formas hasta hace muy pocos años no llego la rom de Capcom Comando que tampoco se sabia seguro de su existencia. Consulta,si puedes,el último número de la MSX-CLUB.Creo que aparece ese artículo que tu mencionas,si el alzheimer no me la juega... KNM cofcof!
|
|
|
En línea
|
<Bacterion> : ¿ Por qué la gente se empeña en pulsar F5 ?
|
|
|
|