-
What is Ray Tracing?
This article is the foreword of a serie of article about ray tracing.
-
A raytracer in C++ - Part I - First rays
This is the first part of the ray tracing series of tutorials. We've seen in the introduction what a raytracer was and how it was different from other solutions. Now let's concentrate on what it would requires to implement one in C/C++.
-
A raytracer in C++ - Part II - Phong, Blinn, supersampling, sRGB and exposure
A perfectly diffuse material will send incident light back uniformly in all directions. At the other side of the spectrum, a perfect mirror only sends light in the opposite direction of the incident ray. Reality is not as black and white as that, real object surfaces are often complex and difficult to model simply. I will describe here two empirical models of "shiny" surfaces that are not pure mirror.
-
A raytracer in C++ - Part III - Procedural textures, bump mapping, cube environment map
One of the simplest way to add details to scenes is via the use of textures. Here will be detailed two concepts, one is the procedural texture and the other one is the environment texture or cubemap.
-
A raytracer in C++ - Part IV - Depth of field, Fresnel and blobs
One of the interesting property of ray tracing is to be independent of the model of camera, and that is what makes it possible to simulate advanced camera model with only slight code modification. Another interesting property is that contrary to a lot of other rendering methods such as rasterization.
-
DevMaster.net - The Basics of Raytracing
Ray Tracing Basics.
-
DevMaster.net - Raytracing: Theory & Implementation Part 1, Introduction
Basics of ray tracing algorithm implementation. Basic classes. Basic theory.
-
DevMaster.net - Raytracing: Theory & Implementation Part 2, Phong, Mirrors and Shadows
Implementation of Phong, Shadows, Reflactions.
-
DevMaster.net - Raytracing: Theory & Implementation Part 3, Refractions and Beer's Law
Implementation of Refractions, Multisampling, Beer's Law.
-
DevMaster.net - Raytracing: Theory & Implementation Part 4, Spatial Subdivisions
Reducing Intersection Tests, Hierarchical Bounding Volumes, Spacial Subdivisions, Grid.
-
DevMaster.net - Raytracing: Theory & Implementation Part 5, Soft Shadows
Area Lights, Aproximation, Soft Shadows.
-
DevMaster.net - Raytracing: Theory & Implementation Part 6, Textures, Cameras and Speed
Interpolation, Intersections and UV, Filtering.
-
DevMaster.net - Raytracing: Theory & Implementation Part 6, TKd-Trees and More Speed
Barycentric Coordinates, Triangles, Normals and Textures, KD-Trees, Implementing SAH.
-
Ray tracing in c# and .NET.
Basic implementation of very pure ray tracing algorythm using C# and .NET technology.
Accelerating Ray Tracing
This article shows some methods to speed up(accelerate) ray tracing algorithm.
-
Пример реализации в реальном времени метода трассировки лучей: необычные возможности и принцип работы. Оптимизация под SSE.
В статье раскрываются основные концепции ускорения сферического движка трассировки лучей с помощью использования пакетных наборов инструкций MMX, SSE, 3d!Now.
-
New Fast Ray Tracing Algorithm.
В статье расказыавется об сферическом движке трассировки лучей, основные концепции, формулировки.
-
Интерактивная трассировка лучей c использованием SIMD инструкций.
Пакетная трассировка лучей на основе SIMD.
-
Трассировка лучей c помощью Pov-Ray.
Статья представляет собой обзор Pov-Ray технологии.
-
Packet traversal.
Статья представляет собой метод трассировки пакетов.
-
BVH-tree.
Bounding Volume Hierarchy (BVH) - Иерархия ограничивающих объемов. Что, как, почему?.
-
Regular grid.
Все 3D пространство разбивается на мелкую регулярную сетку, состоящую из N*N*N кубиков. Идея заключается в том, что можно пробегать только по тем по кубикам, через которые пошел луч. Это можно сделать по-разному.
-
Hierarchical grid.
Иерархическая сетка представляет из себя дерево (обычно небольшой глубины, но зато очень широкое), в узлах которого лежат относительно небольшие регулярные сетки. Применение, построение, реализация.