Forum Casio - Discussions


Index du Forum » Discussions » Test perspectives 3D besoin d'un avis
MactulEn ligneMembrePoints: 402 Défis: 0 Message

Test perspectives 3D besoin d'un avis

Posté le 20/03/2019 15:00

Hello,
Si vous vous baladez régulièrement sur planète casio, vous avez put remarquer que je m'intéresse beaucoup à la 3D (d'ailleurs, vivement la sortie de windmill )
Je ne suis qu'en seconde et n'ai pas les connaissance mathématiques suffisantes à la 3D
Je me suis quand même risqué à un programme qui dessine un bloc en perspective comme si une caméra glissait devant

J'aurais besoin que l'on me dise s'il y à un intérêt exploitable à mon programme

/!\ ATTENTION /!\
pour le coef diviseur mettez dans un premier temps un nombre proche de 1 (pas moins de 0,5, pas plus de 3)


------------------------------------------------------------------------------------------------------------------------------------------------------------

- lien de téléchargement (version non automatique) -
- lien de téléchargement (version automatique) -
- lien de téléchargement (jeu) -


Fichier joint


Pages : Précédente1, 2
DisperseurHors ligneMembrePoints: 1332 Défis: 0 Message

Citer : Posté le 25/03/2019 07:32 | #


Merci
On va bientôt en créer un nouveau je pense.. Un peu de patience

Edit :
Et une autre source: https://guy-grave.developpez.com/tutoriels/jeux/doom-wolfenstein-raycasting/#
Cette source est pas mal, on as plusieures infos pratiques
Planetarium

√(2+2-2+2-2+2+2-2-2-2) = 0
KikoodxHors ligneMembrePoints: 985 Défis: 7 Message

Citer : Posté le 25/03/2019 16:43 | #


Ton lien indique pas mal de théorie, mais en pratique c'est pas exactement ça. Vous devriez regarder les 3 liens en V. Pour aller plus loin (d'ailleurs j'avais déjà proposé le dernier que je trouve très propre).
2+2=5
DisperseurHors ligneMembrePoints: 1332 Défis: 0 Message

Citer : Posté le 25/03/2019 18:11 | #


Ok merci.
@Kikoodx: Tu en a déjà programmé un toi de monteur de Raycasting ?

Edit:
Je lis partout que pour trouver les murs il faut tester leur présence à chaque intersection de deux cases sur le chemin du rayon. Perso je suis parti pour tester la présence des murs en simulant le parcours du rayon avec un pointeur qui se déplace grâce à deux boucles imbriquées: l'une qui fait varier l'angle (de -30° à 30°) et l'autre qui fait avancer le rayon. Ces deux boucles font fonctionner le pointeur comme ceci:
for θ-30->A to θ+30 step 2
for 1->B to 5
if Mat A[int(B*cos(A)), int(B*sin(A))]=1
then /*Mon code pour calculer la distance au mur*/
Break
ifEnd
Next
Next

θ correspond à la direction dans laquelle regarde ma caméra. Je n'ai pas ajouté les variables correspondant à la position du joueur dans les formules mais il me semble qu'il suffit de les ajouter aux coordonnées de la matrice. Comme ceci:
/*...*/
if Mat A[int(B*cos(A))+Y, int(B*sin(A))+X]=1
/*...*/

Je sais que normalement c'est:
X=r*cosθ
Y=r*sinθ
Mais je me suis rendu compte qu'en inversant ça me permettait de mettre le 0° à la verticale dans ma matrice.. mais je reviendrais avec les fonctions normales dans la version finale
Si j'ai faux ou si ce n'est pas la bonne voie dites le moi

PS: c'est en Basic mais on verra pour le faire fonctionner avec C-basic puis on envisager le portage C..
Planetarium

√(2+2-2+2-2+2+2-2-2-2) = 0
KikoodxHors ligneMembrePoints: 985 Défis: 7 Message

Citer : Posté le 25/03/2019 18:30 | #


Non je n'ai aucune connaissance en graphisme, mais le sujet m'intéresse donc j'ai fait des recherches (j'aime beaucoup le premier Doom).
2+2=5
MactulEn ligneMembrePoints: 402 Défis: 0 Message

Citer : Posté le 25/03/2019 19:37 | #


Whaaah!!
vous poster beaucoup plus vite que je n'ai le temps de lire

Edit: c'est cool, ne vous arrêtez pas!

@Kikoodx je vais faire le topic sur le raycasting, laisser moi le temps

Ajouté le 25/03/2019 à 20:13 :
fait ici: https://www.planet-casio.com/Fr/forums/lecture_sujet.php?id=15651&page=
Mes programmes
Cliquer pour enrouler
DisperseurHors ligneMembrePoints: 1332 Défis: 0 Message

Citer : Posté le 25/03/2019 20:14 | #


Super. On balance tout la bas..
Planetarium

√(2+2-2+2-2+2+2-2-2-2) = 0
Pages : Précédente1, 2

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2019 | Il y a 45 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd