π
<-
Chat plein-écran
[^]

Need help with nGc "gui_gc_Sprite" structure

C, C++, ASM...

Need help with nGc "gui_gc_Sprite" structure

Unread postby SlyVTT » 30 Jul 2021, 13:11

Dear All,

I am in the process of writing a kind of universal renderer for the TI nSpire (for the GUI Toolkit NF) and then I need to write some methods able to translate the drawcalls either to SDL or to nGc.

Most of the primitives are now working great (pixels (read/write) / main blitting functions / line, rectangle, circle ...).

I need to create a function for sprites and hence try to understand the data structure of gui_gc_Sprite.
I know there are 3 members :
short width;
short height;
char * pixels;

but what is the convention used for the "pixels" member ?

On the CX/CX-II, the color screen uses 16bits (565 coding) so a pixel color should be coded on a short rather than on a char. Looking at some example in the ndless_sdk, it does not seem to use 3 values per pixel (there are not 3 char per actual pixel). It does not seem either to be using a palette (or I do not know where it is defined).

Right now I have my raw data in a table of unsigned short, each pixel coded on a 16bit value as per the 565 convention, How can I make it compatible with gui_gc_Sprite ?

I hope someone will be able to help.

BR

Sly
Developing the GUI Toolkit for nSpire
see current revision here : https://github.com/SlyVTT/Widget-for-TI-NSpire

And for the GUI Toolkit NF (New Foundation), this is here https://github.com/SlyVTT/Widgets-Spire-NF

Image Image Image Image
User avatar
SlyVTTProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 87.5%
 
Posts: 148
Images: 0
Joined: 19 Jan 2021, 09:41
Gender: Male
Calculator(s):

Re: Need help with nGc "gui_gc_Sprite" structure

Unread postby Ti64CLi++ » 30 Jul 2021, 14:09

Hi,

I remember using ngc some time ago, and I think that pixels should be 8bits colors for each pixel.
These colors are represented in this image : Image
Image
User avatar
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 15.9%
 
Posts: 3429
Images: 75
Joined: 04 Jul 2014, 14:40
Location: Clermont-Ferrand 63
Gender: Male
Calculator(s):
Class: MP
GitHub: Ti64CLi

Re: Need help with nGc "gui_gc_Sprite" structure

Unread postby SlyVTT » 30 Jul 2021, 16:47

Hello Ti64CLi++

thanks for your feedback. I guess you are right, it seems that that structure uses a kind of "hidden" palette somewhere. So I cannot use it directly as I am using RGB coding for each pixel.
A better choice seems to be using TI_Image format and the corresponding gui_gc_drawImage function but, it does not seem to be able to consider transparency.

So I wrote a structure from scratch, able to handle sprite data either for SDL and for nGc (through conditional compiling) and integration of transparency.

I dropped the question to Vogtinator/Ndless team on the github repository, if a detailed answer comes, I will post it here.

BR

Sly
Developing the GUI Toolkit for nSpire
see current revision here : https://github.com/SlyVTT/Widget-for-TI-NSpire

And for the GUI Toolkit NF (New Foundation), this is here https://github.com/SlyVTT/Widgets-Spire-NF

Image Image Image Image
User avatar
SlyVTTProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 87.5%
 
Posts: 148
Images: 0
Joined: 19 Jan 2021, 09:41
Gender: Male
Calculator(s):


Return to Native: Ndless, Linux, ...

Who is online

Users browsing this forum: No registered users and 2 guests

-
Search
-
Social
-
Featured topics
Concours de rentrée 2021 - La Geste d'Alrys
Concours de rentrée 2021 - Synchro-donjon !
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Remplace ton ancienne fx-92 Collège ou Graph 35 par la nouvelle Graph 35+E II programmable en Python ! Pour tout achat d'une nouvelle Graph 35 d'ici le 30 septembre 2021, Casio te rembourse 10€. En cas de retour de ta fx-92 Collège c'est 18€, et même ou 23€ si tu retournes ton ancienne Graph 35. Etiquette de retour fournie, pas de frais de port à payer, même les anciens modèles et machines non fonctionnelles sont acceptées. En partenariat avec les Restos du cœur.
Remplace ton ancienne fx-92 Collège ou Graph 35 par la Graph 90+E couleur. Pour tout achat, Casio te rembourse 10€ en cas de retour de ta fx-92 Collège, ou 15€ en cas de retour de ta Graph 35. Etiquette de retour fournie, pas de frais de port à payer, même les anciens modèles et machines non fonctionnelles sont acceptées. En partenariat avec les Restos du coeur.
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 30 Septembre 2021
Reprise de ton ancienne fx-92 Collège à 5€ ou Graph 35 à 10€. Même non fonctionnelle ou ancien modèle. Etiquette de retour fournie, pas de frais de port à payer. En partenariat avec les Restos du coeur.
25€ remboursés par Casio sur l'achat de ta calculatrice fx-CP400 d'ici le 31 Octobre 2021
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2021
Casio Graph 90+E ou Graph 35+E II avec couvercle personnalisé à gagner sur simple participation aux formations Casio de Septembre 2021.
Disque dur externe + écouteurs bluetooth + 2 superbes coques personnalisées pour Graph 90+E ou Graph 35+E II à gagner en répondant d'ici le 24 Septembre 2021 à la question : "Quelle est l'unité de tension électrique ?"
Coque NumWorks édition limitée Septembre 2021 à gagner.
123456789101112
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
487 utilisateurs:
>475 invités
>6 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)

-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)