I read some ray tracing books and coded along with C++.
And I traced some scenes in this process.

Every picture presented here is traced with my render.

3. Ray Tracing from the Ground Up

I read this book and porting its code chapeter by chapter. I learned about reflection models, illumination models, global illumination and texture.
And I traced several scenes.

Scene 5:

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Scene 4:

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Scene 3:

Ray Tracing Scenes Collection

Scene 2:

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Scene 1:

Ray Tracing Scenes Collection

2. An Introduction to Ray Tracing

Before read the book, ray tracing from the ground up, I read this book.
I read this book and some referrence papers cited.
And I traced a lot of surfaces(NON-TRIANGULATE), such as:
box, sphere, polygon, quadric surfaces, tori, blending and joining surface, superellipsoid, superhyperboloid, supertoroid, blobs, tear drop, bicubic Bezier patches, bicubic B-spline patches, translational sweeping surface, cone sweeping surface, rotational sweeping surface, sphere sweeping surface, and CSG surfaces.

2.1 Box, sphere, polygon, quadric surfaces

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

Ray Tracing Scenes CollectionRay Tracing Scenes Collection

2.2 Tori, blending and joining surface

Blend and join surfaces
[32]Hoffmann, C.M. and Hopcroft, J.E., Automatic surface generation in computer aided design. The Visual Computer 1, 92-100, 1985.
https://www.cs.purdue.edu/homes/cmh/distribution/papers/Geometry/geo1.pdf?origin=publication_detail

Ray Tracing Scenes Collection
by the way, this is the logo for my fruit business.
The red part is a Chinese character means fruit. And for the green part, English word “circle” and “orchard” share the same Chinese pinyin “yuan”, so the green circle means green orchard.
so, the logo means “red fruit in green orchard”.

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

2.3 Superquadrics: superellipsoid, superhyperboloid, supertoroid

Superquadrics
[2]Barr, A.H., Superquadrics and angle preserving transformations, IEEE Comput. Graph. Appl. 1(1), 11-23, January 1981.
https://core.ac.uk/download/pdf/4877310.pdf

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes Collection

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

Ray Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes Collection

2.4 Blobs

Blobs
[10]Blinn, J.F., A generalization of algebraic surface drawing. ACM Trans. Graph. 1(3), 235-256, July 1982.
https://www.microsoft.com/en-us/research/wp-content/uploads/1982/07/p235-blinn.pdf

Ray Tracing Scenes Collection
Ray Tracing Scenes Collection
Ray Tracing Scenes Collection

2.5 Tear drop

Ray Tracing Scenes Collection

2.6 Parametric Patches: bicubic Bezier patches, bicubic B-spline patches

Parametric patches
[34]Kajiya, J.T., Ray tracing parametric patches. Comput. Graph. (Siggraph ‘82 Proceedings) 16(3), 245-254, July 1982.
https://core.ac.uk/download/pdf/4891798.pdf

Ray Tracing Scenes CollectionRay Tracing Scenes Collection

Ray Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes Collection
Ray Tracing Scenes CollectionRay Tracing Scenes Collection

Ray Tracing Scenes Collection

2.7 Procedural Surfaces: translational sweeping surface, cone sweeping surface, rotational sweeping surface

Procedural Surfaces
[35]Kajiya, J.T., New techniques for ray tracing procedurally defined objects. ACM Trans. Graph. 2(3), 161-181, July 1983; also appeared in Siggraph ‘83 Pro­ ceedings.
http://papers.cumincad.org/data/works/att/e21e.content.pdf

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

2.8 sphere sweeping surface

[74]Wijk, J.J. Van, Ray tracing objects defined by sweeping a sphere. In £urographies ‘84, pp. 73-82, Copenhagen (Sept. 1984), reprinted in Comput. Graph. 9(3), 283-290, 1985.
Ray Tracing Scenes Collection

Ray Tracing Scenes Collection

2.9 CSG surfaces

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

1. Ray Tracing in One Weekend

Before read the book, an introduction to ray tracing, I read this book.
When I began to read this book, I known nothing about ray tracing. So I just input the source code from the book and output images.

Ray Tracing Scenes CollectionRay Tracing Scenes CollectionRay Tracing Scenes Collection

相关文章: