CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Simlation laser

Caudheur
Caudheur
Niveau 8
28 juillet 2012 à 17:29:05

Bonjour à tous,

J'essaie de faire une simulation de laser dans un environnement 2D,
avec des blocs réfléchissants (miroirs) et normaux (murs).

Si il est facile de faire un "projectile" qui se promène dans un tel environnement (on calcule à chaque frame les collisions et les éventuels rebonds), je ne sais pas comment
procéder avec un laser, qui doit être instantané, et surtout qui doit être recalculé
dès que l'on déplace l’émetteur.

Il faudrait calculer à chaque frame tous les rebonds et les collisions, ce qui me semble impossible. :(

Si je ne suis pas clair, voici le genre de simulation que j'essaie de reproduire en 2D : http://www.youtube.com/watch?v=oEG3hJzZBlI

Existe-t-il des algos connus pour ce genre de tâche, ou des méthodes efficaces ?

Merci d'avance, et bonne journée :)

Caudheur
Caudheur
Niveau 8
28 juillet 2012 à 17:30:38

Edit : je travaille en C++ avec la SFML, mais peu importe le langage, c'est juste des indications de méthode qui m'aiderait bien !

caelacanthe
caelacanthe
Niveau 10
28 juillet 2012 à 17:39:53

les algorithmes de raytracing, peut-être? des fonctions récursives, qui sont relancées à chaque fois que le laser rencontre une surface réfléchissante. on peut même gérer des lasers qui se divisent en passant à travers des vitres.

par contre oui, il faudrait probablement tout recalculer à chaque frame. sauf si ça n'a pas bougé par rapport à l'image précédente. :hap:

Caudheur
Caudheur
Niveau 8
28 juillet 2012 à 17:45:25

Ok, ça me paraît assez énorme !
Et comment savoir si le laser rencontre une surface ? On ne peut pas se permettre de tester toutes les intersections avec d'autres objets tout de même ?

caelacanthe
caelacanthe
Niveau 10
28 juillet 2012 à 18:05:17

si, mais tu peux toujours faire du partitionnement d'espace, en excluant les surfaces qui ne sont vraiment pas dans la direction suivie par le laser. par exemple, avec des boîtes englobantes. :(

Caudheur
Caudheur
Niveau 8
28 juillet 2012 à 18:08:29

Ok, donc ça va être plus compliqué que je ne le pensais... Merci :)

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment