PDA

Voir la version complète : [GBA][Aide] Probleme de palette entre sprite et map ?


omg
24/04/2006, 09h30
Bonjour à tous!!!
Je viens de tomber sur une bizarrerie qui me bloque au niveau de mon jeu "Banjo Advance"...
En effet, j'utilisais un sprite banjo en 16 couleurs et un sprite de fée en 16 couleurs aussi...
Ajouté à cela un niveau en 46 couleurs sur deux fonds (en mode 0)
Tout s'affichai bien.
J'ai voulu ajouter un autre fond et passer ma palette du mode 0 de 46 à 49 couleurs et là je m'aperçois que mes beaux sprite s'affiche bizarrement, ils sont tronqués...

Est-ce que quelqu'un est tombé sur un probleme de ce genre?

Je n'ai aucun screenshot car je suis au taf (pas bien v_v ) mais je vous en met ce soir pour mieux vous expliquer promi!!!:D

Je voudrais savoir aussi si mes palettes de sprites en 16 couleurs sont indépendantes de ma palette de background qui est elle en 256 couleurs?

Merci!!!

Nesgba
24/04/2006, 09h35
tu copie pas un peu trop de couleurs dans ta palette bg ? vu que la palette sprite suit celle des bg si tu copie 512 donnés a partir de 0x5000000 tu remplis tes 2 palettes

[edit]en mode bitmap (en mode tiles aussi d'ailleur) si tu gere pas bien ton clipping et si tu plotte hors ecran il se peut que tu endommage la palette ^^

omg
24/04/2006, 09h40
En fait ma palette Background est censé faire 256 Couleurs et je n'en n'ai mis que 46, pour mes sprites, j'utilise deux palettes de 16 couleurs (une pour ma fée en dégradé de bleu, une pour banjo en dégradé de marron)

Nesgba
24/04/2006, 09h45
des que tu sera chez toi poste la rom avec le bug on te dira d'ou ca vient B)

omg
24/04/2006, 10h07
Pas de probleme et encore merci! tu veux juste la rom?

Brunni
24/04/2006, 10h28
Tu peux aussi poster la source si tu veux, là on pourra essayer de t'aider tout de suite ^^

omg
24/04/2006, 11h34
Ce sera avec plaisir mais malheureusement ce soir!
B)

Dr.Vince
24/04/2006, 12h45
bah ouais, la rom et VBA ça permet de savoir ce qui se passe sur ce genre de problème

omg
24/04/2006, 22h00
Bon ben les gars c'est assez inatendu mais tout est rentré dans l'ordre... Ma seule explication est que le pc a rebooté... Incroyable...
Demain une mise à jour des graphisme...
A demain et merci de votre aide!!!!!!

omg
25/04/2006, 10h28
La mise à jour du projet est prête.
Je compte sur vous pour me dire si l'animation de mes background est bonne.
Merci Encore!
-> Projet Banjo Advance sur PA (http://www.playeradvance.org/forum/showthread.php?t=1269)

omg
26/04/2006, 14h27
J'ai eu encore le probleme!!!
Grrrrrrr!!!

J'ai re-booté et idem...
Le probleme vient surement de la palette!
J'ai ajouté un element au decor faisant passer ma palette background a presque 90 couleurs... et pareil que l'autre fois...

Je vous met a disposition dans un zip la rom avant les changement et apres les changements ainsi que les maps avant et apres.
Si vous avez besoin d'autre chose dite le moi!

Merci d'avance... :cry: -> le fichier zip (http://banjokazooie.free.fr/site/probleme.zip)

Nesgba
26/04/2006, 14h44
c'est un default d'alignement ca. (j'argumenterai ptet ce soir mais la je doit go :ph34r: )

omg
26/04/2006, 15h02
Alignement ???
:S
Pourtant je n'ai pas touché au code, j'ai seulement modifié mon niveau avec GBAGraphics...

Dr.Vince
26/04/2006, 17h10
y a des chances que ce soit ça effectivement

déclare tous tes gfx comme ceci et recompile pour voir :

const u8 __attribute__ ((aligned (4))) font_alpha_white_8x8_Bitmap[3968] = {
...
}

omg
26/04/2006, 17h38
Je ne comprends pas cette histoire d'alignement...
Je déclare mes fichiers map de cette façon : include "Map/levelport/port_v3.map.c"
#include "Map/levelport/fond.map.c"
#include "Map/levelport/port_v3_front.map.c"
#include "Map/levelport/port_v3.til.c"
#include "Map/levelport/port_v3.pal.c"
#include "Map/levelport/colision.map.c"et dans chaque fichiers ils sont déclarés de cette maniere :const unsigned short port_v3_map[64][512]={...}
const unsigned short fond_map[48][256]={...}
const unsigned short port_v3_front_map[64][512]={...}
const unsigned char port_v3_tiles[57152]={...}
const unsigned short port_v3_palette[89]={...}
const unsigned short colision[64][512]= {...}
A moins que tu ne me parle des sprites???

Brunni
26/04/2006, 18h18
Hm si cet alignement est vraiment un problème je pourrais le rajouter directement dans GBA Graphics? :huh:
Mais j'ai jamais eu de problème donc ça m'étonne un peu. Est-ce que tu pourrais éclaircir un peu stp ;)

Nesgba
26/04/2006, 18h52
ah ben dr.vince a repondu, merci ;)

Je ne comprends pas cette histoire d'alignement...
Je déclare mes fichiers map de cette façon : et dans chaque fichiers ils sont déclarés de cette maniere :A moins que tu ne me parle des sprites???

eh bien tes fichiers gfx essaye de tous les reecrire de cette facon la:

const unsigned char __attribute__ ((aligned (4))) port_v3_tiles[57152]={...}

les maps je pense pas que ca soit la peine dans ton cas.

moi non plus j'ai jamais eu de problemes d'alignement, (sauf une fois il y a tres longtemp quand j'utilisai hamlib)

Dr.Vince
26/04/2006, 19h36
je pense que le problème viens effectivement de la lib HAM car sur mes deux projets, Arcomage et Puzznic j'ai rencontré ce problème et de manière fort aléatoire

Alors que toi Brunni tu ne l'as jamais eu, de plus Nes vient de confirmer ce que je viens de dire

Donc effectivement ce serait cool que tu rajoutes ça à GBA Graphics :rolleyes:

omg
26/04/2006, 20h30
En gros je teste avec :

const unsigned short __attribute__ ((aligned (4))) port_v3_map[64][512]={...}
const unsigned short __attribute__ ((aligned (4))) fond_map[48][256]={...}
const unsigned short __attribute__ ((aligned (4))) port_v3_front_map[64][512]={...}
const unsigned char __attribute__ ((aligned (4))) port_v3_tiles[57152]={...}
const unsigned short __attribute__ ((aligned (4))) port_v3_palette[89]={...}
const unsigned short __attribute__ ((aligned (4))) colision[64][512]= {...}
Je teste et je reviens!

omg
26/04/2006, 20h41
MERCI MILLE FOIS LES MECS !!!!!
EFFECTIVEMENT C'EST çA !!!!!
YOUPI !!!!!
Il faut en effet remplacer la ligne concernant les tiles (seulement elle)

JE VOUS REMERCIE ENCORE!!!

M'EN VAIS PROGRAMMER!!!!:D