Search this site
Embedded Files
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
  • More
    • Accueil
    • BBC BASIC
    • BBC OS
    • BBC MODULES
    • RUBRIQUES
    • LIENS

⇨ MENU ⇨ BIBLIOTHEQUE ⇨ box2dlib.bbc

PROC_gfxLoad()

DESCRIPTION.


La procédure PROC_gfxLoad() charge et transforme un fichier image en un objet graphique prêt à être affiché et manipulé dans le moteur Box2D/SDL.




SYNTAXE.


PROC_gfxLoad( DCT_Donnees{} , fichier , echelle )




REMARQUES.


DCT_Donnees{} identifiant de la structure de données qui sera créée et retournée par la procédure PROC_gfxLoad().


fichier doit être l'identifiant d'un fichier image au format : .png (recommandé),  .jpg, .jpeg, .bmp, .tga. Le nom du fichier peut être exprimé de façon relative ou absolue.


echelle doit être une valeur numérique indiquant l'échelle graphique, en pixels par mètre, pour harmoniser les mondes physiques Box2d, qui travaille en mètres, et la zone graphique de BBC BASIC qui s'exprime en pixels. Les valeurs standards recommandées vont de 20 à 50. Par exemple si échelle vaut 30, cela indique à Box2d que 30 pixels correspondent à 1 mètre.



La procédure PROC_gfxLoad() retourne une structure de données ( DCT_Donnees{} ) contenant toutes les informations nécessaires pour la taille de la zone de rendu, la position de l’origine graphique, l’échelle entre le monde physique Box2D (en mètres) et l’écran (en pixels). La structure de données g{} contient les élément nommés suivant :

Signification des champs :

- DCT_Donnees{}.t%%, identifiant de l'ancre de la texture SDL ;

- DCT_Donnees{}.p%%, données privées pour Box2d ;

- DCT_Donnees{}.W%, donne la largeur de la zone graphique en pixels ;

- DCT_Donnees{}.H%, donne la hauteur de la zone graphique en pixels ;

- DCT_Donnees{}.S%, Échelle pixels par mètres, fixée à pixels / mètre × 256.



La procédure PROC_gfxLoad() sert à charger une image depuis un fichier, à la la convertir en texture SDL utilisable pour le rendu graphique et et l'adapte à l'échelle des mètres de Box2d par pixels du BBC Basic. Ces informations sont ensuite stockées dans une structure de données. La procédure PROC_gfxLoad() est principalement utilisée par les procédures du module box2ddbg.bbc pour afficher des sprites associés à des objets physiques et les les images pour de fond du décor.



Note : Les mondes physiques Box2d supporte les format de fichier graphique .gif contenant une image fixe uniquement. Si un fichier chargé dans ce format est une animation, seulela première image sera prise en compte. Les images au format .psd auront un aspect aplatis et les calques associés seront ignorés. Quand au format .hdr, il sera bien chargé mais s'avère peu utile pour SDL / Box2D. Les formats de fichiers graphiques .scg, .webp, .heif, .heic, .tiff et .ico ne fonctionneront pas.



Rappel : la procédure PROC_gfxInit() devra toujours être appelée avant tout autre fonction ou procédure de box2dgfx.bbc.


Voir le module box2dlib.bbc qui permet de créer des mondes Box2d et de gérer les corps et collisions dans ces mondes.



La procédure PROC_gfxLoad() est importée depuis le module box2dgfx.bbc. 




RUBRIQUES.


Les dessins et les graphismes pour plus de détails sur la création de dessins et de graphismes.

La gestion des couleurs pour plus de détails sur la gestion des couleurs logiques et physiques.




EXEMPLE.


REM --- Importation des modules ---

REM --- Module de la bibliothèque BBC BASIC ---

INSTALL @lib$ + "box2dlib.bbc"

INSTALL @lib$ + "box2dgfx.bbc"


REM --- Initialisation et création du monde ---

PROC_b2Init

PROC_gfxInit( DCT_Utiles{} , 640 , 480 , 30 )

PROC_gfxLoad( DCT_Texture{} , "monfichier.jpg" , 30 )

WAIT( 5 )

PROC_gfxExit

PROC_b2Exit


REM --- Affiche les valeurs des éléments de la structure ---

PRINT DCT_Texture{}.t%%

PRINT DCT_Texture{}.p%%

PRINT DCT_Texture{}.W%

PRINT DCT_Texture{}.H%

PRINT DCT_Texture{}.S%


REM --- Fin du programme ---

END


Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de

vos remarques, vos commentaires et de vos suggestions.

Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour

TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER

avec un exemple de résolution à télécharger pour vous inspirer.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse