30

moi je peux te dire que non, rv wink
moi aussi je me suis longuement penché sur le problème...
j'avais des équations de fou, et finalement, je me suis apperçu que tout se simplifiait et qu'on rtobait sur un simple thalès.
tu t'es penché sur la question, mais toi, ça marche pas tongue alors que moi ça marche impeccable wink

toute la perspective de mon moteur, qui est il me semble assez réaliste est basée sur ce principe wink
tu connais les coordonnées x,y,z de ton point, eh bien les coordonnées projetées sont:

x'=focal*x/z
y'=focal*y/z

j'ai essayé par tous les moyens de virer le 1/z, mais c pas possible, et ça peut facilement se comprendre.
par contre, on peut très facilement simplifier les formules au dessus, paske moi, les divisions, j'aime pas wink
don tu fé:
temp=focal/z
x'=temp*x
y'=temp*y

et tu peux aussi virer la constante focal, qui est la distance de l'oeil à l'écran. (en fait, c une variable, paske c mieux de pouvoir la changer, paske quand focal augment, ça revient à faire un zoom wink)

tt simplement, l'angle de vision d'un être humain est de 90°
or l'écran de la 92 fait 240 de large, don pour avoir les 90°, il faudraitavoir:

focal=120
valeur qui se rapproche nettement de 128 wink

tu insère un petit lsl #7,dx et c bon...

si tu as déjà joué à max payne, quand il est dans sonrève, et que tu dois le guider dans le labyrinthe de couloirs, pour avoir cet effet de tiraillement du décor, le moteur diminue simplement la valeur de focal (enfin, ça c ma notation...)
de même que dans quake ou wolfenshtein (le nouvo), qd tu fé un zoom, c focal qui augmente.

maintenant, va voir les shots de mon moteur, et dis moi si la perspective est pas réaliste wink
c simple, c EXACTEMENT la même technique pour tous les moteurs 3d, sauf que certains utilisent les produits scalaires, mais ça revient EXACTEMENT au même wink

je viens de faire un dessin, c bcp mieux:

1: projection sans perspective
2: fausse perspective
3: vraie perspective obtenue avec thalès wink

perspective.gif
[edit]Edité par sBibi le 07-11-2001 à 19:46:30[/edit]
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

31

ah, j'oubliaistongueour 89, tu fé lsl #6,dx, et ça doit être bon aussi wink
et quand tu dis que la perspective n'est pas linèaire, alors là, je suis 100% d'accord, par contre quand tu dis que thalès c linéaire, huhuhu... grin

c proportionnel, d'accord, mais à 1/x wink
et ça, je pense pas que ce soit linéaire grin
[edit]Edité par sBibi le 07-11-2001 à 15:29:16[/edit]
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

32

de tte façon, quand j'aurai fini la 1ere étape de ce moteur, je ferai un petit tuto pour que ceux qui veulet s'y mettre se fassent pas autant chier que moi au début wink
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

33

Et si tu faisais un tableau des valeurs focal/z en fonction de z? Si tu te limites à des coordonnées z entières, ça devrait être faisable (mais ça prend de la place).
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é

34

ha oui, là ça accélèrerait vachement, mais c cler que ça prend de la place, surtout si ta fourchette de valeurs est contenue dans un .w grin
65536 sad
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

35

c la tout le problème
:D

36

mais non...
c'est quand même assez rapide...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

37

bon, si certains n'ont pas bien compris le r^le de focal et son impact sur le rendu, voici un petit aperçu des effets:

89shot03.gif

lorsque les cubes paraissent rapetisser brutalement, c'est focal qui diminue d'une puissance de 2.
quand ils semblent se rapprocher, c'est focal qui augmente...
regardez bien pendant les rotations les déformations qui ont lieu...

plus focal est grand, plus cela produit l'effet d'un zoom, car la perspective est diminuée d'autant plus que focal augmente...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

38

euh les dl ca marche tres bien avec n'importe quel angle !!!(pas forcément proche de 0)

39

Oui oui, mais je disais ça à nEUrOne parce qu'on cherchait un moyen de faire les calculs trigo d'une autre façon qu'avec des tables précalculées... donc avec des DL, mais les DL et les fonctions trigo correspondantes sont équivalentes seulement au voisinage de zéro.
[ Come take us out of here / take us anywhere... oh yeah ]

40

mais pkoi vous voulez absolument CALCULER ces valeurs??? c'est bcp + rapide d'utiliser les tables précalculéees... et c la vitesse que vs cherchez, non?
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

41

Tout à fait, mais il faut chercher un peu partout avant d'adopter une méthode smile De toute façon c'est les tables qui ont gagné alors ...
[ Come take us out of here / take us anywhere... oh yeah ]

42

tt à fait d'accord avec toi sur tout ce que tu viens de dire wink
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

43

je persiste et signe car en pratique, les dl permetent de calculer ailleurs qu'au voisinage de zéro (théorie != pratique )

44

arf...
DL de cos(x) à l'ordre 4:
cosx=1-x^2/2+x^4/4!+O(x^5)

x=0 -> (DL cosx)-cosx=0
x=PI/4 -> (DL cosx)-cosx=0.000322
x=PI/2 -> (DL cosx)-cosx=0.019969

et le meilleur:grin

x=PI -> (DL cosx)-cosx=1.12391
x=2*PI -> (DL cosx)-cosx=45.2002 !!! gringringrin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

45

moi j'aime bien la 'pratique' de de farib gringringrin
Fiou.

46

fait des dl a des ordres suprérieurs !

47

bon sang c pas d'une complexité algorithmique qui justifie de développer a un ordre si faible !
comment crois tu que les calculettes calculent les cos (pas formels) ? en dl, apres recadrage dans 0,2pi, ou 0 Pi !

48

pfff... c bon, ça prends trop de temps à calculer après... roll

tu préfères koi?

lea costable(pc),a0
add.w d0,d0
move.w 0(a0,d0.x),d0

ou bien:

muls.w d0,d0;x^2
move.w d0,d1
asr.w #2,d0;x^2/2
move.w d1,d2
muls.w d2,d1;x^4
muls.w d1,d2;x^6
asr.w #3,d1
divs.w #3,d1
divs.w #720,d2
move.w #1,d3
sub.w d0,d3
add.w d1,d3
sub.w d2,d3

y a pas photo, non? grin
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

49

je sais pas avec combien de valeurs tu la fait ta table mais tu risues d'avoir besoin de mémoire !

50

bof... 360 pkoi?
ça fé 1440 pour deux tables de sin/cos... en ENTIER
vu que tu peux n'avoir que les valeurs de 0 à 90 et just pour le cosinus ou le sinus, ça te fé 180 octets requis wink
mais si ça doit vraiment aller vite, c mieux la table entière et pour les deux wink
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

51

Pour les DL:
- on n'a besoin que de [0;pi/2].
- on peut utiliser un DL en pi/4 pour plus de précision (moins d'erreur maximale).
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é