examples: add cornell box example
This commit is contained in:
parent
2994a7dcfa
commit
c7fec074c2
88
pathtracer/examples/cornell-box.mtl
Normal file
88
pathtracer/examples/cornell-box.mtl
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
# The original Cornell Box in OBJ format.
|
||||||
|
# Note that the real box is not a perfect cube, so
|
||||||
|
# the faces are imperfect in this data set.
|
||||||
|
#
|
||||||
|
# Created by Guedis Cardenas and Morgan McGuire at Williams College, 2011
|
||||||
|
# Released into the Public Domain.
|
||||||
|
#
|
||||||
|
# http://graphics.cs.williams.edu/data
|
||||||
|
# http://www.graphics.cornell.edu/online/box/data.html
|
||||||
|
#
|
||||||
|
|
||||||
|
newmtl leftWall
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.5000
|
||||||
|
illum 2
|
||||||
|
Ka 0.63 0.065 0.05 # Red
|
||||||
|
Kd 0.63 0.065 0.05
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl rightWall
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.5000
|
||||||
|
illum 2
|
||||||
|
Ka 0.14 0.45 0.091 # Green
|
||||||
|
Kd 0.14 0.45 0.091
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl floor
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.725 0.71 0.68 # White
|
||||||
|
Kd 0.725 0.71 0.68
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl ceiling
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.725 0.71 0.68 # White
|
||||||
|
Kd 0.725 0.71 0.68
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl backWall
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.725 0.71 0.68 # White
|
||||||
|
Kd 0.725 0.71 0.68
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl shortBox
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.725 0.71 0.68 # White
|
||||||
|
Kd 0.725 0.71 0.68
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
|
||||||
|
newmtl tallBox
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.725 0.71 0.68 # White
|
||||||
|
Kd 0.725 0.71 0.68
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 0 0 0
|
||||||
|
|
||||||
|
newmtl light
|
||||||
|
Ns 10.0000
|
||||||
|
Ni 1.0000
|
||||||
|
illum 2
|
||||||
|
Ka 0.78 0.78 0.78 # White
|
||||||
|
Kd 0.78 0.78 0.78
|
||||||
|
Ks 0 0 0
|
||||||
|
Ke 17 12 4
|
168
pathtracer/examples/cornell-box.obj
Normal file
168
pathtracer/examples/cornell-box.obj
Normal file
|
@ -0,0 +1,168 @@
|
||||||
|
# The original Cornell Box in OBJ format.
|
||||||
|
# Note that the real box is not a perfect cube, so
|
||||||
|
# the faces are imperfect in this data set.
|
||||||
|
#
|
||||||
|
# Created by Guedis Cardenas and Morgan McGuire at Williams College, 2011
|
||||||
|
# Released into the Public Domain.
|
||||||
|
#
|
||||||
|
# http://graphics.cs.williams.edu/data
|
||||||
|
# http://www.graphics.cornell.edu/online/box/data.html
|
||||||
|
#
|
||||||
|
|
||||||
|
mtllib cornell-box.mtl
|
||||||
|
|
||||||
|
## Object floor
|
||||||
|
v -1.01 0.00 0.99
|
||||||
|
v 1.00 0.00 0.99
|
||||||
|
v 1.00 0.00 -1.04
|
||||||
|
v -0.99 0.00 -1.04
|
||||||
|
|
||||||
|
g floor
|
||||||
|
usemtl floor
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
## Object ceiling
|
||||||
|
v -1.02 1.99 0.99
|
||||||
|
v -1.02 1.99 -1.04
|
||||||
|
v 1.00 1.99 -1.04
|
||||||
|
v 1.00 1.99 0.99
|
||||||
|
|
||||||
|
g ceiling
|
||||||
|
usemtl ceiling
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
## Object backwall
|
||||||
|
v -0.99 0.00 -1.04
|
||||||
|
v 1.00 0.00 -1.04
|
||||||
|
v 1.00 1.99 -1.04
|
||||||
|
v -1.02 1.99 -1.04
|
||||||
|
|
||||||
|
g backWall
|
||||||
|
usemtl backWall
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
## Object rightwall
|
||||||
|
v 1.00 0.00 -1.04
|
||||||
|
v 1.00 0.00 0.99
|
||||||
|
v 1.00 1.99 0.99
|
||||||
|
v 1.00 1.99 -1.04
|
||||||
|
|
||||||
|
g rightWall
|
||||||
|
usemtl rightWall
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
## Object leftWall
|
||||||
|
v -1.01 0.00 0.99
|
||||||
|
v -0.99 0.00 -1.04
|
||||||
|
v -1.02 1.99 -1.04
|
||||||
|
v -1.02 1.99 0.99
|
||||||
|
|
||||||
|
g leftWall
|
||||||
|
usemtl leftWall
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
## Object shortBox
|
||||||
|
usemtl shortBox
|
||||||
|
|
||||||
|
# Top Face
|
||||||
|
v 0.53 0.60 0.75
|
||||||
|
v 0.70 0.60 0.17
|
||||||
|
v 0.13 0.60 0.00
|
||||||
|
v -0.05 0.60 0.57
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Left Face
|
||||||
|
v -0.05 0.00 0.57
|
||||||
|
v -0.05 0.60 0.57
|
||||||
|
v 0.13 0.60 0.00
|
||||||
|
v 0.13 0.00 0.00
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Front Face
|
||||||
|
v 0.53 0.00 0.75
|
||||||
|
v 0.53 0.60 0.75
|
||||||
|
v -0.05 0.60 0.57
|
||||||
|
v -0.05 0.00 0.57
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Right Face
|
||||||
|
v 0.70 0.00 0.17
|
||||||
|
v 0.70 0.60 0.17
|
||||||
|
v 0.53 0.60 0.75
|
||||||
|
v 0.53 0.00 0.75
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Back Face
|
||||||
|
v 0.13 0.00 0.00
|
||||||
|
v 0.13 0.60 0.00
|
||||||
|
v 0.70 0.60 0.17
|
||||||
|
v 0.70 0.00 0.17
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Bottom Face
|
||||||
|
v 0.53 0.00 0.75
|
||||||
|
v 0.70 0.00 0.17
|
||||||
|
v 0.13 0.00 0.00
|
||||||
|
v -0.05 0.00 0.57
|
||||||
|
f -12 -11 -10 -9
|
||||||
|
|
||||||
|
g shortBox
|
||||||
|
usemtl shortBox
|
||||||
|
|
||||||
|
## Object tallBox
|
||||||
|
usemtl tallBox
|
||||||
|
|
||||||
|
# Top Face
|
||||||
|
v -0.53 1.20 0.09
|
||||||
|
v 0.04 1.20 -0.09
|
||||||
|
v -0.14 1.20 -0.67
|
||||||
|
v -0.71 1.20 -0.49
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Left Face
|
||||||
|
v -0.53 0.00 0.09
|
||||||
|
v -0.53 1.20 0.09
|
||||||
|
v -0.71 1.20 -0.49
|
||||||
|
v -0.71 0.00 -0.49
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Back Face
|
||||||
|
v -0.71 0.00 -0.49
|
||||||
|
v -0.71 1.20 -0.49
|
||||||
|
v -0.14 1.20 -0.67
|
||||||
|
v -0.14 0.00 -0.67
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Right Face
|
||||||
|
v -0.14 0.00 -0.67
|
||||||
|
v -0.14 1.20 -0.67
|
||||||
|
v 0.04 1.20 -0.09
|
||||||
|
v 0.04 0.00 -0.09
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Front Face
|
||||||
|
v 0.04 0.00 -0.09
|
||||||
|
v 0.04 1.20 -0.09
|
||||||
|
v -0.53 1.20 0.09
|
||||||
|
v -0.53 0.00 0.09
|
||||||
|
f -4 -3 -2 -1
|
||||||
|
|
||||||
|
# Bottom Face
|
||||||
|
v -0.53 0.00 0.09
|
||||||
|
v 0.04 0.00 -0.09
|
||||||
|
v -0.14 0.00 -0.67
|
||||||
|
v -0.71 0.00 -0.49
|
||||||
|
f -8 -7 -6 -5
|
||||||
|
|
||||||
|
g tallBox
|
||||||
|
usemtl tallBox
|
||||||
|
|
||||||
|
## Object light
|
||||||
|
v -0.24 1.98 0.16
|
||||||
|
v -0.24 1.98 -0.22
|
||||||
|
v 0.23 1.98 -0.22
|
||||||
|
v 0.23 1.98 0.16
|
||||||
|
|
||||||
|
g light
|
||||||
|
usemtl light
|
||||||
|
f -4 -3 -2 -1
|
22
pathtracer/examples/cornell-box.yaml
Normal file
22
pathtracer/examples/cornell-box.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
reflection_limit: 5
|
||||||
|
|
||||||
|
camera:
|
||||||
|
origin: [0.0, 1.0, 0.0]
|
||||||
|
forward: [ 0.0, 0.0, 1.0]
|
||||||
|
up: [0.0, 1.0, 0.0]
|
||||||
|
fov: 90.0
|
||||||
|
distance_to_image: 1.0
|
||||||
|
x: 2160
|
||||||
|
y: 2160
|
||||||
|
|
||||||
|
lights:
|
||||||
|
ambients:
|
||||||
|
- color: {r: 0.1, g: 0.1, b: 0.1}
|
||||||
|
points:
|
||||||
|
- position: [-0.5, 1.0, 1.8]
|
||||||
|
color: {r: 1.0, g: 1.0, b: 1.0}
|
||||||
|
|
||||||
|
meshes:
|
||||||
|
- obj_file: "pathtracer/examples/cornell-box.obj"
|
||||||
|
translation: [0.0, 0.0, 1.0]
|
||||||
|
rotation: [0, 180, 0]
|
Loading…
Reference in a new issue