1

ou peut on trouver un bon tut de raycasting en français (a tout les coups on va me donner l'adresse de la TICT team smile)
Je sais que c'est pas de la vrai 3D et que c'est pas bien, mais c'est pour me familiariserr avec cette technique (en passant, le Raytracing fait appel au Raycasting ??? c'est quoi la difference entre les deux??)

Merci
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

2

La différence: Je peux (surement) me tromper, mais il me semble que le Raytracing agit pixel par pixel alors que le raycasting agit colonne par colonne...
Mais je n'en suis pas sur du tout...
J'ai lu dans un livre un tuto sur le raycasting mais je n'ai pas ce livre chez moi... désolé!
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

3

Franchement, je ne connais aucun tuto en français...
Mais c'est vraiment pas compliqué, même en n'étant pas forcément bon en anglais, tu peux comprendre... C'est surtout des maths.
Le plus complet des tutos, c'est celui-là : http://www.permadi.com/tutorial/raycast/index.html (il va même un peu plus loin que le raycasting pour introduire le voxel).

4

Personne n'a dit que ct nul le raycasting, mais il faut admettre que ce n'est pas de la 3D, c'est tres souvent KK qui balance le moteur de TN alors qu'une personne parle de 3D ...

Mais le raycasting est vraiment tres bien pour des petites plateformes

5

va sur le site de la TICT trigic
warau kado niha fuku kitaru.

#trifouet#!!!

6

lol wink

7

#4 > gagné wink
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

8

nEUrOne
a écrit : Personne n'a dit que ct nul le raycasting,

desole, autant pour moi
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

9

en effet, c'est juste le raycasting de la tict qui est nul grin
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

10

rotfl

11

nan, ce qui est nul c de dire que c de la 3D ....

12

il n'empêche que le raycasting de la tict n'est pas fantastique
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

13

bah. .; il tourne bien !
on peut pasdire le contraire

14

certe

enfin il est qd meme un peu gros

15

et il remplit un peu pas tout l'écran
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

16

oui, mais il peut pas faire tout l'écran

17

et ça deviens super lent
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

18

ca aurait été pire s'il n'avait pas utilisé une fenetre constante et de 96x96 je crois

19

PiNGoO a écrit :
#4 > gagné wink

Ben non, il n'a pas donné l'adresse du site. grin
Vark a écrit :
en effet, c'est juste le raycasting de la tict qui est nul grin

vtff
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

20

lol, il est vexé smile

21

je vois ps pkoi, il ne fait pas partie de la tict et il n'a pas programmé une ligne de code du fat engine
*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & sabrina

22

ben oui, c byzarre !
doom

23

bah j'en sais rien moi smile
mais il a l'air vexé ... smile

24

Sur quoi te bases tu pour dire ça ? confus
#innocent#

25

Bon, je m'ennuie, donc je t'explique ici les principes de base du raycasting...
Donc, bien entendu, l'idée est de "lancer" un rayon dans un monde jusqu'à ce qu'il rencontre un mur, que l'on affiche.

En fait, le monde est un simple tableau à deux dimensions.
Le contenu des cellules indiquent leur état : si c'est un mur on met un 1 et si c'est du vide, on mettra un 0 par exemple...
Il faut donc lancer le rayon, trouver les coordonnées de la cellule qu'il croise et regarder si cette cellule correspond à un mur ou non.
Le principe pour avoir une bonne précision, est de définir qu'une cellule du tableau fait par exemple 32 unités ou 64 de côté. C'est-à-dire que notre rayon, pour qu'il passe d'une ligne à l'autre, il faudra lui ajouter 32 (ou 64) à sa coordonnée y.
On appellera les coordonnées d'une cellule, des coordonnées dans le grand repère, et les autres seront celles par rapport au petit repère.
Donc tu connais la position du joueur (elle aussi définie par rapport au petit repère), et la direction de son regard.
Afin d'obtenir un champ de vision suffisemment large, il est intéressant de couvrir 90°, ce qui correspond environ au champ de vision d'un homme.
Donc, il faut lancer une multitude de rayons, allant de l'angle correspondant à la direction du joueur auquel on soustrait 45° jusqu'à ce même angle auquel on ajoute 45° (pour couvrir les 90°).
Ensuite, il faut trouver les petites coordonnées des intersections avec les différentes cellules de la map. Pour cela fais un shéma, tu as un triangle rectangle formé par le rayon, l'horizontale et la verticale. Avec une simple formule de trigonométrie, tu trouves les coordonnées de la première intersection avec les lignes, ainsi que celle avec les colonnes.
Il est important de différencier les lignes des colonnes.
Ensuite, toujours avec une formule trigonométrique, tu trouveras comment faire progresser ton rayon à travers ton monde.
Une fois que tu rencontres un mur (c'est-à-dire qu'en prenant la cellule qui a pour coordonnées les grandes coordonnées correspondant aux petites coordonnées de l'extrémité du rayon), tu dois calculer la distance qui t'en sépare, là encore, une simple formule de trigo te suffira.
Là, tu seras confronté à un autre problème, l'effet oeil de chat, qui donne l'impression que les murs sont arrondis. C'est compliqué à expliquer sans faire de shéma, mais c'est extrêmement simple à comprendre avec un shéma et tu en auras un dans le tuto que je t'ai passé en post #2.

26

faut vraiment s'ennuyer grin

27

Oui smile
J'ai fait ça rapidement, sans avoir prévu de plan avant, donc si c'est un peu confus, c'est normal.
Enfin, je pense que ça devrait permettre d'aider à comprendre la technique.

28

Tu devrait rajouter un PS pour indiquer que c censé permettre d'aider à comprendre la technique, pasque j'av pas compristrinon
avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.

29

Sérieux ?

30

plus ou moins. Si j'av cherché à comprendre, j'aurait peut-être comprissmile
avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.