README-pbrt.html 23 KB

  1. <meta charset="utf-8" lang="en"><style class="fallback">body{visibility:hidden;}</style>
  2. # Overview
  3. This repository includes a number of example scenes and
  4. data for use with the [pbrt-v3]( renderer,
  5. which corresponds to the system described in the third edition of
  6. _Physically Based Rendering_, by Matt Pharr, Wenzel Jakob, and Greg
  7. Humphreys. (See also the [pbrt website](
  8. We hope that this data will be useful to users of `pbrt`, developers making
  9. changes to the system, and researchers in rendering. To our knowledge, all
  10. of these scenes and data can be used fairly freely. Some data is licensed
  11. under a Creative Commons Attribution license; see details in
  12. Section [Overview of Scenes] of this document.
  13. For more information about how to convert scenes to `pbrt`'s format, see
  14. the [pbrt User's
  15. Guide](
  16. # Data Sets
  17. In addition to example scenes, there is some useful data for use with the
  18. system.
  19. * [bsdfs/](bsdfs/): this directory includes a variety of bidirectional scattering
  20. distribution functions (BSDFs) for use with the `FourierMaterial`. See, for
  21. example, the [coffee-splash](coffee-splash) scene for use of such a BSDF in a scene.
  22. * New versions of BSDFs for use with `FourierMaterial` can be generated
  23. with [layerlab](
  24. * [lenses/](lenses/): lens description files for a handful of real-world lens
  25. systems, for use with the `RealisticCamera`. See the scenes
  26. [villa/villa-photons.pbrt](villa/villa-photons.pbrt) and
  27. [sanmiguel/f6-17.pbrt](sanmiguel/f6-17.pbrt) for examples of their use.
  28. * [spds/](spds/): measured spectral power distributions for a variety of standard
  29. illuminants, light sources, metals, and the squares of the Macbeth color
  30. checker.
  31. # Scenes
  32. A variety of scenes are available, ranging from simple ones that show off
  33. an individual feature of the system, to more interesting ones that
  34. demonstrate complex lighting effects in scenes with detailed geometry and
  35. realistic reflection models.
  36. Scene files for many of the rendered figures in the book are included here;
  37. for example, [dragon/f11-13.pbrt](dragon/f11-13.pbrt) corresponds to Figure
  38. 11.13 in the third edition of the book.
  39. ## Directory Organization
  40. We've tried to organize all of the scene directories in a consistent
  41. manner; each scene directory is self-contained, containing all of the
  42. geometry, textures, and additional data needed to render the scene.
  43. With a few exceptions, each `*.pbrt` file in a scene directory represents a
  44. separate variant of the scene to be rendered (possibly with different light
  45. source configurations, different camera positions, etc.) Some scenes have
  46. `geometry.pbrt`, `lights-*.pbrt` and `materials.pbrt` files that collect
  47. common geometry and material definitions across these variants. Thus, you
  48. should be able to just run `pbrt scene-name.pbrt` for any of the remaining
  49. `*.pbrt` files to render the corresponding scene.
  50. Complex triangle meshes and other complex geometry is stored in the
  51. `geometry/` directories and texture maps are all in the respective
  52. `textures/` directories. (Similarly, any SPDs, realistic camera lenses,
  53. or BSDF files are stored in corresponding sub-directories.)
  54. The [images/](images/) directory (which has a structure that parallels that
  55. of the scene directories) has EXR and PNG files corresponding to the final
  56. output from rendering each corresponding scene. All PNGs were generated
  57. using the `imgtool` program from the `pbrt-v3` distribution; many had a
  58. scale factor applied with the `--scale` command-line option, and a number
  59. include a bit of bloom to improve visual realism (via the `--bloomlevel`
  60. and related command-line options.) Sometimes the corresponding `*.pbrt`
  61. file has a comment under the `Film` directive with the command line options
  62. that were used for `imgtool`.
  63. ## A Note about Clamped Sample Values
  64. Some of these scenes have very difficult-to-sample light transport paths
  65. that in turn cause high variance, which manifests itself as scattered very
  66. bright pixels in images (often called "fireflies"). (For example, scenes
  67. with bumpy specular surfaces that are illuminated by realistic sky environment
  68. maps suffer from this issue when a path intersects the specular surface and
  69. is then scattered such that it happens to intersect the sun.)
  70. There is an option for pbrt's Film implementation that allows the user to
  71. specify a maximum value for the luminance of any sample added to the film;
  72. if enabled, any sample with a larger luminance has its luminance scaled
  73. down so that it is equal to the maximum. In turn, the impact of fireflies
  74. in images can be greatly reduced.
  75. We have used this option for a number of challenging scenes in the
  76. following. As such, **bias has been introduced into the the images that
  77. pbrt generates for those scenes**. We highlight this issue for two reasons:
  78. first, if you want to use those scenes as unbiased comparisons to another
  79. rendering system or to your implementation of a new light transport
  80. algorithm, it's important to be aware of this (and likely, to modify the
  81. scene files to disable this setting). Second, if you're developing a new
  82. light transport algorithm, these scenes provide a number of challenging
  83. situations that current algorithms don't handle well; new algorithms that
  84. handle them effectively would be useful contributions to rendering.
  85. ## Overview of Scenes
  86. (##) Barcelona Pavilion
  87. ![](images/barcelona-pavilion/pavilion-day.png height="200px")
  88. ![](images/barcelona-pavilion/pavilion-night.png height="200px")
  89. [barcelona-pavilion](barcelona-pavilion): Model of van der Rohe's classic
  90. [Barcelona Pavilion](,
  91. including both daytime and nighttime lighting setups. In the daytime setup,
  92. all illumination comes from a realistic sky model encoded in an HDR
  93. environment map. The night model has a very dark sky map and a number of
  94. area light sources; it is particularly challenging to render, as much of
  95. the illumination travels through one or more layers of glass before hitting
  96. a surface.
  97. barcelona-pavilion: Thanks to [Hamza Cheggour](, who
  98. created this [great
  99. model](
  100. and made it available via a
  101. [CC-BY]( license.
  102. (##) Bathroom
  103. ![](images/bathroom/bathroom.png height="200px")
  104. [bathroom](bathroom): Modern bathroom with soft indirect lighting and
  105. depth of field. Given the mirrors and bright wight walls, multi-bounce
  106. indirect illumination has a substantial effect on the overall appearance
  107. of the scene.
  108. Thanks to "nacimus", who made this scene available under the
  109. [CC-BY]( license. Downloaded
  110. from [Blendswap](
  111. (##) BMW M6
  112. ![](images/bmw-m6/bmw-m6.png height="200px")
  113. [bmw-m6](bmw-m6): BMW M6 car (model year 2006) illuminated by a realistic
  114. skylight model.
  115. Thanks to Fred C. M'ule Jr. ("tyrant monkey" on BlendSwap) for this nice
  116. car model. [CC-Zero](
  117. (public domain) license. Downloaded from
  118. [Blendswap](
  119. (##) Breakfast
  120. ![](images/breakfast/breakfast-lamps.png height="200px")
  121. [breakfast](breakfast): Indoor scene with chairs around a table. One
  122. variant of the scene has light streaming in through blinds from the side
  123. such that most of the scene is only illuminated indirectly; finding these
  124. indirect illumination paths can be challenging. Another variant is only
  125. illuminated by the lights above the table; handling the resulting light
  126. transport through the glass light fixtures is a good challenge for many
  127. light transport algorithms.
  128. Thanks to "Wig42", who made this scene available under a
  129. [CC-BY]( license. Downloaded
  130. from [Blendswap](
  131. (##) Buddha Fractal
  132. ![](images/buddha-fractal/buddha-fractal.png height="200px")
  133. [buddha-fractal](buddha-fractal): Stanford Buddha model made out of Stanford Buddha
  134. models. 25,250 instances, each with 29,890 triangles, giving a total
  135. geometric complexity of over 750 million triangles.
  136. Thanks for Guillermo M. Leal Llaguno for this fun variant
  137. of the Stanford Buddha model. (Buddha model courtesy [Stanford Computer
  138. Graphics Laboratory](
  139. (##) Bunny Fur
  140. ![](images/bunny-fur/f3-15.png height="200px")
  141. [bunny-fur](bunny-fur): Stanford Bunny with fur growing out of it, modeled using the
  142. new curve shape added to `pbrt` in the third edition of the book. Over
  143. 1.5 million curves are used.
  144. Bunny model courtesy [Stanford Computer Graphics
  145. Laboratory]( Environment map
  146. thanks to [Bernhard Vogl](
  147. (##) Caustic Glass
  148. ![](images/caustic-glass/f16-9c.png height="200px")
  149. [caustic-glass](caustic-glass): A delightfully complex caustic pattern that
  150. results from light being projected through a realistic model of a bumpy
  151. glass.
  152. Thanks to Simon Wendsche ( for
  153. the model.
  154. (##) Chopper Titan
  155. ![](images/chopper-titan/chopper-titan.png height="200px")
  156. [chopper-titan](chopper-titan): Shiny motorcycle sitting on a glossy
  157. surface, illuminated by a sunset.
  158. Thanks to julioras3d for this model;
  159. [CC-BY]( license. Downloaded
  160. from [Blendswap](
  161. (##) Cloud
  162. ![White cloud](images/cloud/cloud.png height="200px")
  163. ![Smoky cloud](images/cloud/smoke.png height="200px")
  164. [cloud](cloud): One scene with a bright white cloud, showing the effect of
  165. multiple scattering in participating media, and another, with the same
  166. volume density but with much more absorption, leading to a much darker
  167. cloud. The two images show the difference between highly-scattering and
  168. highly-absorptive media.
  169. Smoke dataset courtesy Duc Nguyen and Ron Fedkiw. Skylight
  170. environment map courtesy Nolan Goodnight.
  171. (##) Coffee Splash
  172. ![](images/coffee-splash/splash.png height="200px")
  173. [coffee-splash](coffee-splash): A splash of coffee in a cup with a spoon,
  174. rendered using a complex simulated BRDF for the cup and saucer, and
  175. multiple scattering in participating media inside the splash.
  176. Scene thanks to "guismo";
  177. [CC-BY]( license. Downloaded
  178. from [Blendswap]( Environment
  179. thanks to [Bernhard Vogl](
  180. (##) Contemporary Bathroom
  181. ![](images/contemporary-bathroom/contemporary-bathroom.png height="200px")
  182. [contemporary-bathroom](contemporary-bathroom): Another contemporary
  183. bathroom scene. This scene is quite challenging to render without visible
  184. noise: specular light transport by the large mirror and the
  185. very small area light sources surrounded by glass in the light bulbs are
  186. difficult to render efficiently.
  187. Scene thanks to [Mareck](,
  188. [CC-Zero]( (public
  189. domain) license. "contemporary_china" texture used for wallpaper thanks to
  190. [Adam Charlts](; texture
  191. contrast was increased for the render. "American_walnut_pxr128" wood
  192. texture courtesy [Pixar Animation
  193. studios](,
  194. [CC-BY]( license. Abstract
  195. print seen in mirror based on a smoke photograph by [Vanessa
  196. Pike-Russell](,
  197. [CC-BY]( license; the photo
  198. was inverted and contrast was adjusted for rendering. Hurricane image used
  199. for photo on wall courtesy [NASA Goddard Space Flight
  200. Center](,
  201. [CC-BY]( license.
  202. (##) Crown
  203. ![](images/crown/crown.png height="200px")
  204. [crown](crown): Detailed model of the Austrian Imperial Crown, featuring an
  205. accurate reflection model for the gold metal surfaces, and many gems that
  206. refract light passing through them.
  207. This amazing model was created by Martin Lubich (
  208. (##) Dam Break
  209. ![](images/dambreak/dambreak0.png height="200px")
  210. ![](images/dambreak/dambreak1.png height="200px")
  211. [dambreak](dambreak): two frames of a fluid simlulation from [Yining Karl
  212. Li]('s nifty [Ariel fluid
  213. simulator](
  214. (##) Dragon
  215. ![](images/dragon/f9-3.png height="200px")
  216. [dragon](dragon): A scanned dragon model rendered with many different materials,
  217. showing off the visual differences between them.
  218. Dragon model courtesy Christian Schüller. Environment map
  219. thanks to [Bernhard Vogl](
  220. (##) Ecosystem
  221. ![](images/ecosys/ecosys.png height="200px")
  222. [ecosys](ecosys): Fairly complex outdoor scene with many plants and trees,
  223. illuminated by an environment map. This scene was used for the cover image
  224. for the first edition of _Physically Based Rendering_.
  225. Scene from Deussen et al., [Realistic modeling and rendering of plant
  226. ecosystems](
  227. (##) Figures
  228. [figures](figures): A variety of fairly simple scenes used for figures in the book.
  229. (##) Ganesha
  230. ![](images/ganesha/ganesha.png height="200px")
  231. [ganesha](ganesha): Very detailed scan of a small statue with over 4.3
  232. million triangles, illuminated by a few area light sources.
  233. Model scanned by Wenzel Jakob.
  234. (##) Hair
  235. ![Curly hair](images/hair/curly-hair.png height="200px")
  236. ![Straight hair](images/hair/straight-hair.png height="200px")
  237. [hair](hair): Hair geometry to show off the hair scattering model now
  238. available in pbrt, as described in [The Implementation of a
  239. Hair Scattering Model](
  240. Many thanks to [Cem Yuskel]( for the hair
  241. geometry, which is licensed under a "no commercial use" license.
  242. (##) Head
  243. ![](images/head/head.png height="200px")
  244. [head](head): Human head model with a realistic BSSRDF, showing the effect of
  245. subsurface scattering.
  246. Model thanks to Infinite Realities, Inc.,
  247. [CC-BY]( license. Environment
  248. map thanks to [USC-ICT light probe image
  249. gallery](
  250. (##) Killeroo
  251. ![](images/killeroos/killeroo-gold.png height="200px")
  252. [killeroos](killeroos): The classic "killeroo" model, in a variety of settings.
  253. Thanks to [headus]( for the model.
  254. (##) Landscape
  255. ![](images/landscape/view-0.png height="200px")
  256. ![](images/landscape/view-1.png height="200px")
  257. ![](images/landscape/view-2.png height="200px")
  258. ![](images/landscape/view-3.png height="200px")
  259. [landscape](landscape): Very complex realistic outdoor landscape scene,
  260. featuring 23,241 unique plant models. Thanks to object instancing, the
  261. scene has a total geometric complexity of 3.1 billion triangles, even
  262. though only 24 million triangles need to be stored in memory. `view-0.pbrt`
  263. is the cover image of the third edition of the _Physically Based Rendering_
  264. book.
  265. Many thanks to Jan-Walter Schliep, Burak Kahraman, and Timm
  266. Dapper from [Laubwerk]( for this amazing scene.
  267. (##) LTE Orb
  268. ![Rough glass around gold](images/lte-orb/lte-orb-roughglass.png height="200px")
  269. ![Silver around diffuse](images/lte-orb/lte-orb-silver.png height="200px")
  270. [lte-orb](lte-orb): Spherical orb with an inset spherical object. The
  271. geometric structure of the shapes involved provides a useful tool for
  272. visualizing the appearance of various materials.
  273. Thanks to Yasutoshi Mori (@MirageYM) for this model;
  274. [CC-BY]( license.
  275. (##) Measure One
  276. ![](images/measure-one/frame25.png height="200px")
  277. ![](images/measure-one/frame380.png height="200px")
  278. [measure-one](measure-one): A number of frames converted from Beeple's
  279. amazing [Zero-Day]( animation. Converted from
  280. Cinema4D files downloaded from [Beeple's
  281. website]( (Note that the original
  282. materials and lighting is much better--improvements to our conversion
  283. gratefully received!)
  284. [License]((
  285. "These files are available under a sort of "open source" concept. They are
  286. intended for educational use but really can be used for whatever the fuck
  287. you want. You don't need to credit me for whatever commercial or
  288. non-commercial use you make of them, but if you could shout me a holla with
  289. any project that do come from them, I'd love to see it :)"
  290. (##) PBRT Book
  291. ![](images/pbrt-book/book.png height="200px")
  292. [pbrt-book](pbrt-book): A realistic model of the second edition of the _Physically
  293. Based Rendering_ book.
  294. Thanks to Karl Li (@yiningkarlli) for this fun model.
  295. (##) San Miguel
  296. ![](images/sanmiguel/sanmiguel.png height="200px")
  297. [sanmiguel](sanmiguel): A complex model inspired by a hotel in San Miguel de
  298. Allende, Mexico.
  299. Thanks to Guillermo M. Leal Llaguno for this excellent scene.
  300. (##) Simple
  301. ![](images/simple/anim-bluespheres.png height="200px")
  302. [simple](simple): A variety of relatively simple scenes.
  303. (##) Smoke Plume
  304. ![](images/smoke-plume/plume-084.png height="200px")
  305. ![](images/smoke-plume/plume-184.png height="200px")
  306. ![](images/smoke-plume/plume-284.png height="200px")
  307. A few renderings of a smoke simulation around an obstacle using volume data
  308. generated using the simulator published with Kim et al.'s [Wavelet
  309. Turbulence for Fluid Simulation](
  310. paper.
  311. (##) Sportscar
  312. ![](images/sportscar/sportscar.png height="200px")
  313. [sportscar](sportscar): Sportscar model, in a variety of illumination settings,
  314. showing off the substantial differences in overall visual appearance that
  315. result.
  316. Excellent model and pbrt conversion courtesy of Yasutoshi Mori (@MirageYM);
  317. [CC-BY]( license. Skylight
  318. environment maps courtesy Nolan Goodnight.
  319. (##) SSS Dragon
  320. ![](images/sssdragon/dragon_10.png height="200px")
  321. [sssdragon](sssdragon): Dragon model rendered with subsurface scattering,
  322. where multiple scene description files show the visual effect of changing
  323. the density of the scattering medium.
  324. Dragon model courtesy [Stanford Computer Graphics
  325. Laboratory]( Environment map
  326. thanks to [Bernhard Vogl](
  327. (##) StructureSynth
  328. ![](images/structuresynth/arcsphere.png height="200px")
  329. [structuresynth](structuresynth): A few interesting procedural scenes scenes converted
  330. from [Structure Synth]( into
  331. `pbrt`'s format.
  332. Environment map thanks to [USC-ICT light probe image
  333. gallery](
  334. (##) Transparent Machines
  335. ![](images/transparent-machines/frame888.png height="200px")
  336. ![](images/transparent-machines/frame542.png height="200px")
  337. [transparent-machines](transparent-machines): A variety of highly detailed
  338. glass shapes illuminated by skylight. For good results, upwards of 64 ray
  339. bounces are required.
  340. Models from frames of [@beeple]('s amazing
  341. [Transparent Machines
  342. video]( [License]((
  343. "These files are available under a sort of "open source" concept. They are
  344. intended for educational use but really can be used for whatever the fuck
  345. you want. You don't need to credit me for whatever commercial or
  346. non-commercial use you make of them, but if you could shout me a holla with
  347. any project that do come from them, I'd love to see it :)"
  348. (##) TT Car
  349. ![](images/tt/tt.png height="200px")
  350. [tt](tt): Audi TT car model.
  351. Thanks for Marko Dabrovic and Mihovil Odak for the car model. Environment
  352. map thanks to [USC-ICT light probe image
  353. gallery](
  354. (##) Veach Bidir
  355. ![](images/veach-bidir/bidir.png height="200px")
  356. [veach-bidir](veach-bidir): A version of a classic scene with a variety of complex
  357. types of light transport developed by Eric Veach to show the value of
  358. bidirectional path tracing.
  359. (##) Veach MIS
  360. ![](images/veach-mis/f14-13-mi.png height="200px")
  361. [veach-mis](veach-mis): Another scene based on one by Eric Veach, this one showing
  362. off the benefit of multiple importance sampling when rendering surfaces
  363. of varying glossiness illuminated by light sources of various sizes.
  364. (##) Villa
  365. ![](images/villa/villa-daylight.png height="200px")
  366. [villa](villa): Modern indoor environment. The `villa-daylight.pbrt` version is
  367. particularly tricky to render, as all of the indoor lighting comes via
  368. specular paths from the outside through the windows.
  369. Many thanks to Florent Boyer for this scene. Skylight environment
  370. map courtesy Nolan Goodnight.
  371. (##) VW Van
  372. ![](images/vw-van/vw-van.png height="200px")
  373. [vw-van](vw-van): Volkswagen Van, illuminated by a HDR environment map.
  374. Model courtesy of
  375. [Greyscalegorilla](,
  376. exported from Cinema4D using the [Cinema4D pbrt
  377. exporter](
  378. (##) Volume Caustic
  379. ![](images/volume-caustic/caustic.png height="200px")
  380. [volume-caustic](volume-caustic): A glass sphere in participating media, showing off a
  381. volumetric caustic--light being focused in the scattering medium after
  382. passing through the sphere.
  383. (##) White Room
  384. ![](images/white-room/whiteroom-daytime.png height="200px")
  385. ![](images/white-room/whiteroom-night.png height="200px")
  386. [white-room](white-room): Interior scene, with two illumination
  387. configurations. The daytime variant is primarily illuminated by light
  388. coming through the windows from the outdoors, while the nighttime version
  389. is illuminated by the two lights in the scene.
  390. Scene thanks to Jay Hardy,
  391. [CC-BY]( license. Downloaded
  392. from [Blendswap](
  393. (##) Yeah Right
  394. ![](images/yeahright/yeahright.png height="200px")
  395. [yeahright](yeahright): An unusual and intricate form on a glossy plate.
  396. "Interesting" shape generated by [Keenan
  397. Crane](
  398. Environment map thanks to [USC-ICT light probe image
  399. gallery](
  400. (##) WIP
  401. [wip](wip): This directory has a few scenes that aren't quite ready;
  402. renderings don't yet look great, parameters need tuning, etc. We'll try
  403. to get to this eventually, or if you're able to get them in good shape,
  404. please submit an update (see the following).
  405. <!-- Markdeep: --><style class="fallback">body{visibility:hidden;}</style><script src="html/markdeep.min.js"></script>