35 votes

Littérature et tutoriels pour écrire un traceur de rayons

Je suis intéressé à trouver des recommandations sur des livres sur l'écriture d'un raytracer, des implémentations simples et claires du ray tracing qui peuvent être vues sur le web, et des ressources en ligne sur le ray tracing d'introduction.

Idéalement, l'approche serait incrémentielle et didactique, et expliquerait à la fois les techniques de programmation et les mathématiques sous-jacentes, en commençant par les bases.

27voto

Boojum Points 4688

"Ray Tracing from the Ground Up" par Kevin Suffern pour commencer.

"Physically Based Rendering" de Matt Pharr et Greg Humphreys pour une approche plus avancée lorsque vous vous serez familiarisé avec les bases.

Et si vous y entrez vraiment, les archives de Ray Tracing News sont une bonne lecture. De plus, de nombreux passionnés de lancer de rayons se retrouvent sur le forum ompf.org .

16voto

grrussel Points 3315

Ok, je n'ai pas trouvé de réponses parfaites, moi-même, que l'étape par le biais de la base; j'ai trouvé beaucoup de simples ray traceurs, et des pointeurs vers volumineux manuels scolaires et universitaires références toutefois.

Je n'ai pas essayé ces rayons traceurs, mais ils ont l'air intéressant et simple.

http://www.barakcohen.co.il/2008/10/ray-tracing-simple-java-open-source.html

http://blogs.msdn.com/lukeh/archive/2007/04/03/a-ray-tracer-in-c-3-0.aspx

http://www.ffconsultancy.com/languages/ray_tracer/

À partir de l'ACM la Croisée des Routes de l'étudiant magazine

http://www.acm.org/crossroads/xrds3-4/raytracing.html

Celui-ci en C++ est, au moins à court; la simplicité a été perdu pour la vitesse

http://ompf.org/ray/sphereflake/

Une Thèse de Doctorat sur certains aspects de lancer de rayons est ici

Une série d'articles sur DevMaster est ici

Le titre du FPMO forum se doit de lire la série d'articles peuvent être trouvés ici

Il semble que le livre "Introduction à lancer de Rayons" est ce dont j'ai besoin ;-), et les auteurs de la page d'accueil est ici pour plus de graphiques liés à la programmation.

Le lancer de rayons à partir du sol jusqu'comprend téléchargeable ray-traceur code source de trop.

MiniLight est un minimum global illumination moteur de rendu.

SmallPT est une illumination globale rendu, dans 99 lignes de C++, avec une variante à l'aide de simple précision float sur le CPU et le GPU en OpenCL.

Merci pour les autres affiches pour les pointeurs

5voto

tfinniga Points 3550

Le rendu avancé de la classe , j'ai pris en collège avait les meilleurs projets que j'ai jamais vu. Avec le projet aide et les notes de cours, tous vous avez besoin est sur le site.

L'idée de base est qu'il est vraiment facile de faire très subtile de bugs dans un raytracer, surtout quand on est dans des choses comme la réfraction. Si vous êtes juste au hasard de la création d'un groupe de sphères dans l'espace, il est assez difficile de vérifier l'exactitude ou diagnostiquer des erreurs.

Donc, il y a un analyseur qui est facile à intégrer dans votre propre code, et un tas de diagnostic de fichiers de scène. Le premier fichier est le plus facile à obtenir de travail (de l'œil, à l'origine, regardant vers le bas d'un axe, une seule sphère), et si vous pouvez vous rendre tous correctement, vous êtes assez bien la garantie d'avoir un qui fonctionne correctement raytracer.

En outre, l' analyseur utilise le format RIB, qui est Pixar standard scène de format de fichier, et peut être exporté à partir de pratiquement n'importe quel modeleur.

Il explore également distribué raytracing et path tracing, qui peut vous donner quelques vraiment de belles images.

3voto

Ian Boyd Points 50743

Il y a quelques années, quelqu'un m'a mis au défi de faire un port Delphi d'un minuscule ray-tracer (moins de 200 lignes de code C).

je l'ai porté sur Delphi , peut-être qu'un jour je re-porterai sur C #.

3voto

a_m0d Points 5784

Le meilleur que j'ai trouvé est: http://www.devmaster.net/articles/raytracing_series/part1.php Ce tutoriel a tendance à se déplacer un peu rapidement, mais il couvre de nombreux aspects du raytracing.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X