π
<-

Divers TI-Journal n°2

New postby critor » 07 Aug 2012, 18:42

Et voici donc aujourd'hui la 2ème édition de votre divertissement estival hebdomadaire, le TI-Journal sur la page FaceBook de Texas Instruments France !



Image






Source:
https://www.facebook.com/photo.php?fbid=504137856266589
Link to topic: TI-Journal n°2 (Comments: 0)

TI-Nspire Mise à jour émulateur Game Boy Advance 0.11 alpha

New postby critor » 07 Aug 2012, 18:12

Calc84maniac revient déjà nous voir avec une nouvelle version 0.11 de son émulateur de Game Boy Advance pour TI-Nspire CX! :#top#:
Image


Au menu, de petites corrections de bugs, mais aussi diverses optimisations accélérant les jeux et les rapprochant grandement de leur vitesse originale, dont notamment l'overclocking intégré de l'écran avec le passage de sa fréquence de rafraîchissement en 60Hz! :bj:




D'autre part, très réactif, Calc84maniac a su écouter les remarques de ses utilisateurs, et autorise maintenant le parcours de la totalité du système de fichiers Nspire, ce qui permet notamment de cacher le dossier des ROMs afin de ne pas ralentir l'explorateur intégré à l'OS Nspire, comme signalé dans une news précédente. :#top#:





Liens:
gpSP (émulateur GBA)
Ndless 3.1
ROMs GBA pour TI-Nspire (prêtes à l'emploi car déjà converties et testables en ligne)
Nover (overclocking)
Tutoriel de recherche de la meilleure config pour Nover
HideManager (pour cacher des dossiers)

TI-Nspire Support alpha des jeux Heretic dans nDoom 3

New postby critor » 07 Aug 2012, 17:30

Avec nDoom 2, la TI-Nspire disposait déjà de toute la panoplie des légendaires jeux Doom / Doom II et compatibles.
http://i43.servimg.com/u/f43/13/23/13/53/img_1411.jpg



Les jeux Doom et Doom II d'Id Software sont mondialement connus car ayant réalisé un véritable exploit technologique, poussant les possibilités des moteurs 3D raycasting jusque dans leurs derniers retranchements. :bj:
http://www.freakygaming.com/gallery/act ... f_doom.jpg



Toutefois, si on regarde au delà de l'aspect technique, ils sont loins d'être dépourvus de défauts, particulièrement dans les niveaux développés par Id Software.
Voici ce que personnellement je leur reproche en tant que 'joueur':
  • absence de création d'une véritable 'atmosphère' de part la trop grande disparité des couleurs :(
  • très (trop?) grande répétitivité: secrets et ennemis cachés de façon similaire - le joueur intermédiaire finit par tout deviner à l'avance :(
  • niveaux assez 'plats' sous-exploitant le moteur 3D, où le joueur n'a que très exceptionnellement besoin de prendre en compte hauteur et profondeur - un comble pour des jeux 3D: on dirait une simple carte 2D en relief... :(
  • niveaux manquants de 'profondeur' sous exploitant encore le moteur 3D, où le joueur passe la plupart de son temps dans des dédales ou couloirs et ne sort que très exceptionnellement en extérieur :(

Ces deux derniers défauts sont sans doute dus à la présence dans l'équipe de design de personnes qui étaient encore trop 'enfermées' dans les limites du jeu précédent d'Id Software, Wolfeinstein 3D qui effectivement était entièrement plat et ne pouvait pas afficher de background:
http://www.grebz.fr/Images/pc/wolfenstein_spears.jpg



Heureusement, Id Software a confié par contrat le code source du moteur 3D de Doom / Doom II à une autre société, Raven Software, afin de développer non pas des niveaux différents mais des jeux différents! :):

Raven Software nous sort alors de petits bijoux: Heretic puis Hexen.



Modifiant sensiblement le code source du moteur (mais pas son principe) et refaisant entièrement les ennemis, items et textures, Raven Software nous emporte dans un monde d'heroic fantasy médiéval et on a du mal à croire qu'il s'agit du même moteur à la base:
Image




Heretic utilise en effet le moteur de Doom à fond avec:
  • une véritable atmosphère, sombre et oppressante :#top#:
  • des niveaux qui ont beaucoup plus de 'profondeur' avec de nombreux passages en extérieur à ciel ouvert :o:
  • des niveaux qui utilisent vraiment la 3ème dimension, que le joueur est obligé de prendre en compte pour finir le jeu, avec des ennemis qui peuvent sauter d'une plate-forme, des ennemis volants, et même la possibilité pour le joueur de voler si il trouve l'item adéquat! :#fou#:
Image


On a presque l'impression d'avoir des étages superposés tellement on fait usage de la 3ème dimension, ce qui reste pourtant impossible: le moteur de Doom ne permet pas d'avoir 2 plate-formes au-dessus du même point.



nDoom 2, malgré son support très générique et complet des fichiers WAD Doom, ne pouvait hélas pas ouvrir les fichiers WAD des jeux Heretic et Hexen puisqu'il était basé sur le moteur de Doom que Raven Software a fortement modifié, créant des incompatibilités. :(

Et bien aujourd'hui, nDoom passe en version 3 et introduit un support 'alpha' des fichiers WAD au format Heretic, tout en conservant la compatibilité avec les fichiers WAD de type Doom / Doom II ! :#top#:

1224






Visitez vite ces cartes d'une grande qualité avant l'arrivée des ennemis! :#langue#:






Liens:
nDoom 3.0 alpha
WAD 'Heretic Shareware' (1 épisode)
WAD 'Heretic: Shadow of the Serpent Riders' (6 épisodes)
Ndless 3.1
Link to topic: Support alpha des jeux Heretic dans nDoom 3 (Comments: 5)

TI-z80 Résultat du premier tour du concours d'optimisation.

New postby nikitouzz » 06 Aug 2012, 00:31

Voici les resultat du petit concours d'optimisation que j'ai lancé il y a une semaine :)

En Axe le premier est Runer112 sur les 5 participant :) Il reporte haut la main avec un code optimiser a 436 octets, en reprenant fidèlement mon code de départ dans ses moindre détaille :) je tiens a le felicitee pour son code qui est pour moi parfait :)

il va donc en finale :)

Code de depart :
Code: Select all
:ClrHome
:[FF818181818181FF]→pic0
:[FFC3A59999A5C3FF]→pic1
:[0000000000000000]→pic9
:0→S
:1→A
:2→B
:ClrDraw
:Repeat getKey(15)
:Pt-Change(A*8,B*8,Pic0)
:DispGraph
:Pt-Change(A*8,B*8,Pic0)
:Pause 100
:If getKey(1) and (B≠7) and (pxl-Test(A*8,B+1*8)=0)
:B+1→B
:S++
:pause 250
:End
:If getKey(2) and (A≠1) and (pxl-Test(A-1*8,B*8)=0)
:A-1→A
:S++
:pause 250
:End
:If getKey(3) and (A≠11) and (pxl-Test(A+1*8,B*8)=0)
:A+1→A
:S+1→S
:pause 250
:End
:If getKey(4) and (B≠1) and (pxl-Test(A*8,B-1*8)=0)
:B-1→B
:S+1→S
:pause 250
:End
:If getKey(3) and (pxl-Test(A+1*8,B*8)=1) and (pxl-Test(A+2*8,B*8)=0) and (A≠10) and (pxl-Test(A+1*8+1,B*8+2)=0)
:Pt-Off(A+1*8,B*8,Pic9)
:Pt-Off(A+2*8,B*8,Pic1)
:A+1→A
:S+1→S
:pause 250
:End
:If getKey(2) and (pxl-Test(A-1*8,B*8)=1) and (pxl-Test(A-2*8,B*8)=0) and (A≠2) and (pxl-Test(A-1*8+1,B*8+2)=0)
:Pt-Off(A-1*8,B*8,Pic9)
:Pt-Off(A-2*8,B*8,Pic1)
:A-1→A
:S+1→S
:pause 250
:End
:If getKey(1) and (pxl-Test(A*8,B+1*8)=1) and (pxl-Test(A*8,B+2*8)=0) and (B≠6) and (pxl-Test(A*8+1,B+1*8+2)=0)
:Pt-Off(A*8,B+1*8,Pic9)
:Pt-Off(A*8,B+2*8,Pic1)
:B+1→B
:S+1→S
:pause 250
:End
:If getKey(4) and (pxl-Test(A*8,B-1*8)=1) and (pxl-Test(A*8,B-2*8)=0) and (B≠2) and (pxl-Test(A*8+1,B-1*8+2)=0)
:Pt-Off(A*8,B-1*8,Pic9)
:Pt-Off(A*8,B-2*8,Pic1)
:B-1→B
:S+1→S
:pause 250
:End
:End


Code d'arrivée :
Code: Select all
:0->^^oDEBUG
:[FF818181818181]->Pic0
:[FFC3A59999A5C3FF]->Pic1
:L1+706->Pic9
:ClrDraw(L1)
:ClrDraw
:2*96+1+L6->P->r2
:(Pic0)Draw()
:...If ^^oDEBUG
:4*96+4+L6->r2
:(Pic1)Draw()
:...
:While 1
:DispGraph
:Pause 100
:4
:While 1
:End!If Select(,TryMv())-1
:3
:While 1
:End!If Select(,TryPs())-1
:4TryPs()
:EndIf getKey(15)
:Lbl KOfs
:[60FF01A0]->GDB0
:Return sign{r1-1+GDB0}
:Lbl CanMv
:ReturnIf +P->r2 and |EDF-|E9381*3plotdot|E0820
:Return {r2}
:Lbl TryMv
:Return!If getKey(->r1)
:Lbl Mv
:ReturnIf KOfs()CanMv()
:r2->P
:S++
:Pause 250
:Pic0
:Lbl DrwMv
:Draw()
:-96->r2
:Pic9
:Lbl Draw
:For(8)
:Select(,{}->{r2}+12->r2)+1
:End
:Lbl SKOfs
:r2-KOfs()
:Return
:Lbl TryPs
:Return!If getKey(->r1)
:ReturnIf KOfs()*2CanMv()
:ReturnIf {SKOfs()+12} xor |EC3
:(Pic1)DrwMv()
:Goto Mv


Code le plus optimisé :
Code: Select all
:0->^^oDEBUG
:[FF818181818181]->Pic0
:[FFC3A59999A5C3FF]->Pic1
:L1+706->Pic9
:ClrDraw(L1)
:ClrDraw
:2*96+1+L6->P->r2
:(Pic0)Draw()
:...If ^^oDEBUG
:4*96+4+L6->r2
:(Pic1)Draw()
:...
:While 1
:DispGraph
:Pause 100
:4
:While 1
:End!If Select(,TryMv())-1
:3
:While 1
:End!If Select(,TryPs())-1
:4TryPs()
:EndIf getKey(15)
:Lbl KOfs
:[60FF01A0]->GDB0
:Return sign{r1-1+GDB0}
:Lbl CanMv
:ReturnIf +P->r2 and |EDF-|E9381*3plotdot|E0820
:Return {r2}
:Lbl TryMv
:Return!If getKey(->r1)
:Lbl Mv
:ReturnIf KOfs()CanMv()
:r2->P
:S++
:Pause 250
:Pic0
:Lbl DrwMv
:Draw()
:-96->r2
:Pic9
:Lbl Draw
:For(8)
:Select(,{}->{r2}+12->r2)+1
:End
:Lbl SKOfs
:r2-KOfs()
:Return
:Lbl TryPs
:Return!If getKey(->r1)
:ReturnIf KOfs()*2CanMv()
:ReturnIf {SKOfs()+12} xor |EC3
:(Pic1)DrwMv()
:Goto Mv



En Basic le gagnant est Linkaro qui remporte le concours avec un score moyen car aucun des 6 participants n'a su me faire un code fonctionnel a 100%.

Il va donc en finale :)

Code de depart :
Code: Select all
:Lbl 0:0→∟AD(1)
:Menu("JEUX","jouer",8,"quitter",9)
:Lbl 8
:ClrHome
:200→D
:Output(4,6,"00000")
:Output(5,6,"0  0")
:Output(6,6,"0  0")
:Output(7,6,"0  0")
:Output(8,6,"00000")
:Lbl 1
:∟AD+1→∟AD
:randInt(1,9)→A
:Repeat D=0
:D-1→D
:Output(1,1,"    ")
:Output(1,1,D)
:Output(2,1,∟AD(1))
:Output(6,8,A)
:0→B
:getKey→B
:B+A→C
:If C=93 or C=95 or C=97 or C=86 or C=88 or C=90 or C=79 or C=81 or C=83
:Goto 1
:End
:ClrHome
:Output(3,5,"SCORE:)
:Output(4,6,∟AD(1))
:If ∟AD(1)>∟AC(1)
:∟AD(1)→∟AC(1)
:Pause
:Goto 0
:Lbl 9


Code d'arrivée :
Code: Select all
DelVar SClrHome
randInt(1,9→A
For(D,200,1,¯1
Output(2,2,"  "
Output(2,1,D
Output(3,1,S
Output(1,1,A
getKey→B
{92,93,94,82,83,84,72,73,74
If B=Ans(A
Then
S+1→S
randInt(1,9→A
End
End
ClrHome
max(S,∟AC(1→∟AC(1
Disp "SCORE:
S


Code le plus optimisé : ( ici c'est le mien )
Code: Select all
:0->S
:900->C
"Menu("","",1,"",2
:Lbl 1
:randint(1,9->F
:while C
:output(2,3,F
:output(5,1,C
:output(4,1,S
:C-1->C
:{92,93,94,82,83,84,72,73,74
:If getkey=Ans(F
:then
:S+1->S
:randint(1,9->F
:end
:end
:Lbl 2
:output(1,1,""
:output(4,6,"SACHA"



Pour la finale :

Le but est de me programmer un snake, en basic pour linkaro et en Axe pour runer112 le plus simple et le plus optimisé possible.
Le code qui techniquement sera supérieur à l'autre sera vainqueur (ne vous inquiétez pas je vais compter l’écart de puissance entre le basic et l'axe).

La finale commence dés aujourd'hui et finis le 16/08/2012 a 12 heures pile. :)

Bonne chance a vous runer112 et linkaro :)


edit by Laurae : majuscules manquantes et erreurs d'orthographe corrigés

TI-Nspire Tutoriaux de programmation sur la Physics Engine Nspire Lua

New postby Adriweb » 05 Aug 2012, 20:46

Bonjour à tous,

Le dernier OS Nspire en date, le 3.2, apporte son lot de nouveautés concernant le Lua, et notemment l'intégration d'un moteur de physique 2D bien connu dans son monde, "Chipmunk Physics" (repris par beaucoup d'applications pour plateformes mobiles par exemple).

Pour les programmeurs Nspire Lua, le moteur physique pourrait paraître en effet assez complexe en lisant son API dans la documentation officielle ou sur Inspired-Lua et il a souvent ete demande des tutoriaux concernant la physics engine en Nspire Lua.

Et bien c'est maintenant chose faite ! Apres des debuts d'exemples par Jim Bauwens sur Omnimaga, Steve Arnolds (deja connu pour ces nombreux scripts Lua et tutoriaux d'excellente qualite) continue dans sa voie pédagogique en publiant 5 nouveaux tutoriaux, cette fois ci concernant la Physics Engine.

Sont toujours au rendez-vous des explications claires, avec des étapes progressives quant au niveau/difficulté, la possibilite de telecharger les .lua et .tns directement, ainsi que des vidéos montrant étapes par étapes l'avancement du code expliqué.
Parfait donc pour s'initier a ce moteur physique 2D qui en ravira plus d'un, notemment pour la creation de jeux/activites Lua bien plus dynamiques qu'auparavant (OS <= 3.1).

GIF animés d'exemples d'utilisation de la Physics Engine :
ImageImageImageImageImageImageImageImageImage



Liens :
-http://www.compasstech.com.au/TNS_Authoring/Scripting/
(voir 23 à 27)

-
Search
-
Social TI-Planet
-
Featured topics
Grand Concours 2024-2025 - Programmation Python
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
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.
1022 utilisateurs:
>993 invités
>21 membres
>8 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)