π
<-
Chat plein-écran
[^]

1000 Bornes SE, plus rapide avec la bibliothèque Sprites !

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:
Online

1000 Bornes SE, plus rapide avec la bibliothèque Sprites !

Unread postby critor » 11 Nov 2016, 12:17

Dans un article précédent nous te sortions le jeu
1000 Bornes
pour ta
TI-83 Premium CE
.
Ce jeu programmé en langage Basic pur souffrait d'un défaut, l'affichage de chaque
sprite (image)
de carte pouvant prendre point par point plusieurs secondes, malgré plusieurs astuces spécifiques ayant permis d'optimiser la chose.

7497Aujourd'hui nous te sortons
1000 Bornes SE
.
De son nom complet
1000 Bornes Sprites Edition
, cette version corrige ce problème en utilisant la bibliothèque graphique
Sprites
de . :bj:



La bibliothèque graphique
Sprites
de fournit plusieurs outils permettant d'afficher rapidement des sprites entre autres. :bj:
Elle passe l'écran de la calculatrice du mode 16-bits au mode 8-bits, qui permet de libérer la 2ème moitié alors invisible du buffer écran et d'y disposer donc de 75Kio
(320x240=76800 octets)
. :)
Et l'astuce est justement d'utiliser cette zone libérée pour la définition et le stockage des sprites qui pourront par la suite être affichés aux endroits choisis dans la 1ère moitié du buffer écran. ;)

Outre la désormais grande rapidité, la bibliothèque
Sprites
apporte nombre d'avantages :
  • l'avantage de pouvoir afficher en plein écran 320x240 pixels, au lieu d'être limité à la zone graphique 265x165 pixels ! :bj:
  • Outre les sprites, elle permet également de tracer des rectangles de couleur là où aucune instruction équivalente n'existe en TI-Basic, ce qui nécessitait donc une boucle d'instructions
    Ligne(
    .
  • Une autre possibilité remarquable, est celle d'afficher du texte. Et contrairement au langage
    TI-Basic
    on contrôle ici indépendemment les zooms horizontaux et verticaux, ainsi que les couleurs de police et de fond avec 256 possibilités différentes à chaque fois ! :bj:

Programmer avec la bibliothèque graphique
Sprites
n'a toutefois pas que des avantages, et nombre d'habitudes devront changer :
  • Le mode 8-bits limite le nombre de couleurs affichables à 28=256 au lieu de 216=65536.
    Un détail bien souvent négligeable... sauf si tu avais dans l'idée de faire des dégradés de couleur.
  • Les instructions d'affichage du TI-Basic ne gèrent pas du tout le mode 8-bits, et ne peuvent donc plus être utilisées à compter de l'activation de la bibliothèque dans un programme : absolument tous les affichages devront donc être réalisés avec la bibliothèque, jusqu'à sa désactivation.
  • En cas d'erreur dans un programme, ce dernier redonne la main à l'OS dont l'affichage sera alors illisible, jusqu'à extinction+rallumage de la calculatrice, faisant perdre les informations sur la localisation de l'erreur. :mj:
  • L'émulateur
    TI-SmartView CE
    ne gère pas du tout le mode 8-bits, et ne permettra pas de tester les programmes en question. :mj:
  • TI-Connect CE
    ne fait pas mieux, et les captures d'écran sont donc à oublier. :mj:
Toutefois, notons que l'émulateur communautaire gère lui correctement le mode 8-bits et permet de pallier à ces 3 derniers inconvénients. :bj:



Les sprites sont définies dans nos programmes TI-Basic pixel par pixel, à l'aide de simples chaînes de caractères.
Leur nombre n'est pas limité autrement que par la mémoire, mais elles ne peuvent dépasser les 35x35 pixels, ce qui nous a amenés à utiliser divers astuces ici, les cartes du jeu étant plus grandes.

Signalons l'utilitaire
TI-83 Plus Sprites Ripper
de pour Windows qui t'automatisera grandement cette phase à partir du découpage d'une image
tilemap (grille de sprites)
! :bj:
Mais il a également le défaut de ne traiter qu'au plus 16 sprites à la fois, nombre légèrement dépassé ici.
Il en existe également une nouvelle version disponible ci-dessous, mais que personnellement je trouve beaucoup moins intuitive à utiliser.



Téléchargements
:
Image
User avatar
critorAdmin.
Niveau 18: DC (Deus ex Calculatorum)
Niveau 18: DC (Deus ex Calculatorum)
Level up: 98%
 
Posts: 33677
Images: 8776
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: 1000 Bornes SE, plus rapide avec la bibliothèque Sprites

Unread postby grosged » 11 Nov 2016, 17:06

Beau travail, Critor ! Merci d'avoir porté cet intérêt à la bibliothèque Sprites ;)
Je suis ravi d'avoir -indirectement- participé à ce chouette projet :D
User avatar
grosgedVIP++
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 60.3%
 
Posts: 659
Images: 19
Joined: 14 Sep 2011, 12:29
Gender: Male
Calculator(s):

Re: 1000 Bornes SE, plus rapide avec la bibliothèque Sprites

Unread postby DJ Omnimaga » 12 Nov 2016, 00:18

Je suis content de voir de nouveaux programmes utilisant la librairie Sprites :), surtout depuis la sortie de Sprite Ripper :)
User avatar
DJ OmnimagaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 80.5%
 
Posts: 343
Images: 0
Joined: 21 Feb 2012, 12:04
Location: Quebec, Canada
Gender: Male
Calculator(s):
Class: Diplômé Secondaire (11ème année scolaire terminé)
YouTube: DJOmnimaga
Twitter: DJOmnimaga
Facebook: DJOmnimaga.Music

Re: 1000 Bornes SE, plus rapide avec la bibliothèque Sprites

Unread postby Ti64CLi++ » 15 Nov 2016, 13:28

Vivement de bon jeu comme mario bros grâce à le librairie Sprites ;)
En tout cas, bon travail critor :bj:
Image
User avatar
Ti64CLi++Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 76.6%
 
Posts: 3166
Images: 61
Joined: 04 Jul 2014, 14:40
Location: Clermont-Ferrand 63
Gender: Male
Calculator(s):
Class: Maths Sup
GitHub: Ti64CLi


Return to News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Who is online

Users browsing this forum: No registered users and 3 guests

-
Search
-
Featured topics
Concours TI-Planet-Casio de rentrée 2019. 3 défis pour plus d'une 15aine de calculatrices graphiques et nombre de goodies sortant de l'ordinaire ! :D
Comparaisons des meilleurs prix pour acheter sa calculatrice !
12
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

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 
-
Stats.
596 utilisateurs:
>531 invités
>60 membres
>5 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)