Browse Source

Initial commit

Matt Pharr 4 years ago
commit
3f92c2f538
100 changed files with 2133 additions and 0 deletions
  1. 2 0
      .gitignore
  2. 462 0
      README.md.html
  3. 236 0
      bathroom/73937 - Salle de bain - License.html
  4. 475 0
      bathroom/bathroom.pbrt
  5. BIN
      bathroom/bsdfs/ceramic.bsdf
  6. BIN
      bathroom/bsdfs/paint.bsdf
  7. BIN
      bathroom/geometry/mesh_00001.ply
  8. BIN
      bathroom/geometry/mesh_00002.ply
  9. BIN
      bathroom/geometry/mesh_00003.ply
  10. BIN
      bathroom/geometry/mesh_00004.ply
  11. BIN
      bathroom/geometry/mesh_00005.ply
  12. BIN
      bathroom/geometry/mesh_00006.ply
  13. BIN
      bathroom/geometry/mesh_00007.ply
  14. BIN
      bathroom/geometry/mesh_00008.ply
  15. BIN
      bathroom/geometry/mesh_00009.ply
  16. BIN
      bathroom/geometry/mesh_00010.ply
  17. BIN
      bathroom/geometry/mesh_00011.ply
  18. BIN
      bathroom/geometry/mesh_00012.ply
  19. BIN
      bathroom/geometry/mesh_00013.ply
  20. BIN
      bathroom/geometry/mesh_00014.ply
  21. BIN
      bathroom/geometry/mesh_00015.ply
  22. BIN
      bathroom/geometry/mesh_00016.ply
  23. BIN
      bathroom/geometry/mesh_00017.ply
  24. BIN
      bathroom/geometry/mesh_00018.ply
  25. BIN
      bathroom/geometry/mesh_00019.ply
  26. BIN
      bathroom/geometry/mesh_00020.ply
  27. BIN
      bathroom/geometry/mesh_00021.ply
  28. BIN
      bathroom/geometry/mesh_00022.ply
  29. BIN
      bathroom/geometry/mesh_00023.ply
  30. BIN
      bathroom/geometry/mesh_00024.ply
  31. BIN
      bathroom/geometry/mesh_00025.ply
  32. BIN
      bathroom/geometry/mesh_00026.ply
  33. BIN
      bathroom/geometry/mesh_00027.ply
  34. BIN
      bathroom/geometry/mesh_00028.ply
  35. BIN
      bathroom/geometry/mesh_00029.ply
  36. BIN
      bathroom/geometry/mesh_00030.ply
  37. BIN
      bathroom/geometry/mesh_00031.ply
  38. BIN
      bathroom/geometry/mesh_00032.ply
  39. BIN
      bathroom/geometry/mesh_00033.ply
  40. BIN
      bathroom/geometry/mesh_00034.ply
  41. BIN
      bathroom/geometry/mesh_00035.ply
  42. BIN
      bathroom/geometry/mesh_00036.ply
  43. BIN
      bathroom/geometry/mesh_00037.ply
  44. BIN
      bathroom/geometry/mesh_00038.ply
  45. BIN
      bathroom/geometry/mesh_00039.ply
  46. BIN
      bathroom/geometry/mesh_00040.ply
  47. BIN
      bathroom/geometry/mesh_00041.ply
  48. BIN
      bathroom/geometry/mesh_00042.ply
  49. BIN
      bathroom/geometry/mesh_00043.ply
  50. BIN
      bathroom/geometry/mesh_00044.ply
  51. BIN
      bathroom/geometry/mesh_00045.ply
  52. BIN
      bathroom/geometry/mesh_00046.ply
  53. BIN
      bathroom/geometry/mesh_00047.ply
  54. BIN
      bathroom/geometry/mesh_00048.ply
  55. BIN
      bathroom/geometry/mesh_00049.ply
  56. BIN
      bathroom/geometry/mesh_00050.ply
  57. BIN
      bathroom/geometry/mesh_00051.ply
  58. BIN
      bathroom/geometry/mesh_00052.ply
  59. BIN
      bathroom/geometry/mesh_00053.ply
  60. BIN
      bathroom/geometry/mesh_00054.ply
  61. BIN
      bathroom/geometry/mesh_00055.ply
  62. BIN
      bathroom/geometry/mesh_00056.ply
  63. BIN
      bathroom/geometry/mesh_00057.ply
  64. BIN
      bathroom/geometry/mesh_00058.ply
  65. BIN
      bathroom/geometry/mesh_00059.ply
  66. BIN
      bathroom/geometry/mesh_00060.ply
  67. BIN
      bathroom/geometry/mesh_00061.ply
  68. BIN
      bathroom/geometry/mesh_00062.ply
  69. BIN
      bathroom/geometry/mesh_00063.ply
  70. BIN
      bathroom/geometry/mesh_00064.ply
  71. BIN
      bathroom/geometry/mesh_00065.ply
  72. BIN
      bathroom/geometry/mesh_00066.ply
  73. BIN
      bathroom/geometry/mesh_00067.ply
  74. BIN
      bathroom/geometry/mesh_00068.ply
  75. BIN
      bathroom/salle_de_bain135.blend
  76. 56 0
      bathroom/spds/Ag.eta.spd
  77. 56 0
      bathroom/spds/Ag.k.spd
  78. BIN
      bathroom/textures/WoodFine0016_L.png
  79. BIN
      bathroom/textures/WoodFine0034_7_S.jpg
  80. BIN
      bathroom/textures/WoodFine0034_7_S.png
  81. BIN
      bathroom/textures/etiquette.png
  82. BIN
      breakfast/The Breakfast Room BS.blend
  83. 50 0
      breakfast/breakfast-lamps.pbrt
  84. 40 0
      breakfast/breakfast.pbrt
  85. BIN
      breakfast/bsdfs/ceramic.bsdf
  86. 35 0
      breakfast/bsdfs/ceramic.py
  87. BIN
      breakfast/bsdfs/paint.bsdf
  88. 35 0
      breakfast/bsdfs/paint.py
  89. 55 0
      breakfast/f16-8a.pbrt
  90. 54 0
      breakfast/f16-8b.pbrt
  91. 577 0
      breakfast/geometry.pbrt
  92. BIN
      breakfast/geometry/Canvas_-_Dry_Paint_Smudge_0000_m000.ply
  93. BIN
      breakfast/geometry/Circle_000_0000_m000.ply
  94. BIN
      breakfast/geometry/Circle_000_0000_m001.ply
  95. BIN
      breakfast/geometry/Circle_000_0000_m002.ply
  96. BIN
      breakfast/geometry/Circle_002_0000_m000.ply
  97. BIN
      breakfast/geometry/Circle_002_0000_m001.ply
  98. BIN
      breakfast/geometry/Circle_003_0000_m000.ply
  99. BIN
      breakfast/geometry/Circle_003_0000_m001.ply
  100. 0 0
      breakfast/geometry/Circle_005_0000_m000.ply

+ 2 - 0
.gitignore

@@ -0,0 +1,2 @@
+*~
+.DS_Store

+ 462 - 0
README.md.html

@@ -0,0 +1,462 @@
+<meta charset="utf-8" lang="en"><style class="fallback">body{visibility:hidden;}</style>
+
+# Overview
+
+This repository includes a number of example scenes and
+data for use with the [pbrt-v3](https://github.com/mmp/pbrt-v3) renderer,
+which corresponds to the system described in the third edition of
+_Physically Based Rendering_, by Matt Pharr, Wenzel Jakob, and Greg
+Humphreys. (See also the [pbrt website](http://pbrt.org).)
+
+We hope that this data will be useful to users of `pbrt`, developers making
+changes to the system, and researchers in rendering. To our knowledge, all
+of these scenes and data can be used fairly freely. Some data is licensed
+under a Creative Commons Attribution license; see details in 
+Section [Scene Credits] of this document. 
+
+# Data Sets
+
+In addition to example scenes, there is some useful data for use with the
+system.
+
+* [bsdfs/](bsdfs/): this directory includes a variety of bidirectional scattering
+  distribution functions (BSDFs) for use with the `FourierMaterial`. See, for
+  example, the [coffee-splash](coffee-splash) scene for use of such a BSDF in a scene.
+  * New versions of BSDFs for use with `FourierMaterial` can be generated
+    with [layerlab](https://github.com/wjakob/layerlab/).
+
+* [lenses/](lenses/): lens description files for a handful of real-world lens
+  systems, for use with the `RealisticCamera`. See the scenes
+  [villa/villa-photons.pbrt](villa/villa-photons.pbrt) and
+  [sanmiguel/f6-17.pbrt](sanmiguel/f6-17.pbrt) for examples of their use.
+
+* [spds/](spds/): measured spectral power distributions for a variety of standard
+  illuminants, light sources, metals, and the squares of the Macbeth color
+  checker.
+
+# Scenes
+
+A variety of scenes are available, ranging from simple ones that show off
+an individual feature of the system, to more interesting ones that
+demonstrate complex lighting effects in scenes with detailed geometry and
+realistic reflection models.
+
+Scene files for many of the rendered figures in the book are included here;
+for example, [dragon/f11-13.pbrt](dragon/f11-13.pbrt) corresponds to Figure
+11.13 in the third edition of the book.
+
+## Directory Organization
+
+We've tried to organize all of the scene directories in a consistent
+manner; each scene directory is self-contained, containing all of the
+geometry, textures, and additional data needed to render the scene.
+
+With a few exceptions, each `*.pbrt` file in a scene directory represents a
+separate variant of the scene to be rendered (possibly with different light
+source configurations, different camera positions, etc.)  Some scenes have
+`geometry.pbrt`, `lights-*.pbrt` and `materials.pbrt` files that collect
+common geometry and material definitions across these variants. Thus, you
+should be able to just run `pbrt scene-name.pbrt` for any of the remaining
+`*.pbrt` files to render the corresponding scene.
+
+Complex triangle meshes and other complex geometry is stored in the
+`geometry/` directories and texture maps are all in the respective
+`textures/` directories. (Similarly, any SPDs, realistic camera lenses,
+or BSDF files are stored in corresponding sub-directories.)
+
+The [images/](images/) directory (which has a structure that parallels that
+of the scene directories) has EXR and PNG files corresponding to the final
+output from rendering each corresponding scene. All PNGs were generated
+using the `imgtool` program from the `pbrt-v3` distribution; many had a
+scale factor applied with the `--scale` command-line option, and a number
+include a bit of bloom to improve visual realism (via the `--bloomlevel` 
+and related command-line options.)
+
+## Overview of Scenes
+
+![](images/bathroom/bathroom.png height="200px")
+
+[bathroom](bathroom): Modern bathroom with soft indirect lighting and
+depth of field.
+
+![](images/breakfast/breakfast-lamps.png height="200px")
+
+[breakfast](breakfast): Indoor scene with chairs around a table. One
+variant has light streaming in through blinds from the side, while
+another is only illuminated by the lights above the table. (For the
+second variant, light transport through the glass light fixtures is a
+good challenge for many light transport algorithms.)
+
+![](images/buddha-fractal/buddha-fractal.png height="200px")
+
+[buddha-fractal](buddha-fractal): Stanford Buddha model made out of Stanford Buddha
+models. 25,250 instances, each with 29,890 triangles, giving a total
+geometric complexity of over 750 million triangles.
+
+![](images/bunny-fur/f3-15.png height="200px")
+
+[bunny-fur](bunny-fur): Stanford Bunny with fur growing out of it, modeled using the
+new curve shape added to `pbrt` in the third edition of the book. Over
+1.5 million curves are used.
+
+![](images/caustic-glass/f16-9c.png height="200px")
+
+[caustic-glass](caustic-glass): Caustic pattern projected through a realistic model of a
+glass.
+
+![](images/cloud/f15-4c.png height="200px")
+
+[cloud](cloud): One scene with a bright white cloud, showing the effect of
+multiple scattering in participating media, and another, with the same
+volume density but with much more absorption, showing the difference
+between highly-scattering and highly-absorptive media.
+
+![](images/coffee-splash/splash.png height="200px")
+
+[coffee-splash](coffee-splash): A splash of coffee in a cup with a spoon, showing a
+complex simulated BRDF for the cup and saucer, and scattering in
+participating media inside the splash. 
+
+![](images/dragon/f9-3.png height="200px")
+
+[dragon](dragon): A scanned dragon model rendered with many different materials,
+showing off the visual differences between them.
+
+![](images/ecosys/ecosys.png height="200px")
+
+[ecosys](ecosys): Complex outdoor scene with many plants and trees.
+
+[figures](figures): A variety of fairly simple scenes used for figures in the book.
+
+![](images/ganesha/ganesha.png height="200px")
+
+[ganesha](ganesha): Very detailed scan of a small statue, illuminated by area
+light sources. 
+
+![](images/head/head.png height="200px")
+
+[head](head): Human head model with a realistic BSSRDF, showing the effect of
+subsurface scattering.
+
+![](images/killeroos/killeroo-gold.png height="200px")
+
+[killeroos](killeroos): The classic "killeroo" model, in a variety of settings.
+
+![view-0](images/landscape/view-0.png height="200px")
+
+![view-1](images/landscape/view-1.png height="200px")
+
+![view-2](images/landscape/view-2.png height="200px")
+
+![view-3](images/landscape/view-3.png height="200px")
+
+[landscape](landscape): Very complex realistic outdoor landscape scene, featuring
+23,241 unique plant models.  Thanks to object instancing, the scene has a
+total geometric complexity of 3.1 billion triangles, even though only 24
+million triangles need to be stored in memory.
+
+![](images/pbrt-book/book.png height="200px")
+
+[pbrt-book](pbrt-book): A realistic model of the second edition of the _Physically
+Based Rendering_ book.
+
+![](images/sanmiguel/sanmiguel.png height="200px")
+
+[sanmiguel](sanmiguel): A complex model inspired by a hotel in San Miguel de
+Allende, Mexico.
+
+[simple](simple): A variety of relatively simple scenes.
+
+![](images/sportscar/sportscar.png height="200px")
+
+[sportscar](sportscar): Sportscar model, in a variety of illumination settings,
+showing off the substantial differences in overall visual appearance that
+result.
+
+![](images/sssdragon/dragon_10.png height="200px")
+
+[sssdragon](sssdragon): Dragon model rendered with subsurface scattering, showing
+the effect of changing the density of the scattering medium in the
+various scene description files.
+
+![](images/structuresynth/arcsphere.png height="200px")
+
+[structuresynth](structuresynth): A few interesting procedural scenes scenes converted
+from [Structure Synth](http://structuresynth.sourceforge.net) into
+`pbrt`'s format.
+
+![](images/tt/tt.png height="200px")
+
+[tt](tt): Audi TT car model.
+
+![](images/veach-bidir/bidir.png height="200px")
+
+[veach-bidir](veach-bidir): A version of a classic scene with a variety of complex
+types of light transport developed by Eric Veach to show the value of
+bidirectional path tracing.
+
+![](images/veach-mis/f14-13-mi.png height="200px")
+
+[veach-mis](veach-mis): Another scene based on one by Eric Veach, this one showing
+off the benefit of multiple importance sampling when rendering surfaces
+of varying glossiness illuminated by light sources of various sizes.
+
+![](images/villa/villa-daylight.png height="200px")
+
+[villa](villa): Modern indoor environment. The `villa-daylight.pbrt` version is
+particularly tricky to render, as all of the indoor lighting comes via
+specular paths from the outside through the windows.
+
+![](images/volume-caustic/caustic.png height="200px")
+
+[volume-caustic](volume-caustic): A glass sphere in participating media, showing off a
+volumetric caustic--light being focused in the scattering medium after
+passing through the sphere.
+
+![Whiteroom daytime](images/white-room/whiteroom-daytime.png height="200px")
+
+![Whiteroom night](images/white-room/whiteroom-night.png height="200px")
+
+[white-room](white-room): Interior scene, with two illumination
+configurations. The daytime variant is primarily illuminated by light
+coming through the windows from the outdoors, while the nighttime version
+is illuminated by the two lights in the scene.
+
+![](images/yeahright/yeahright.png height="200px")
+
+[yeahright](yeahright): An unusual and intricate form on a glossy plate.
+
+[wip](wip): This directory has a few scenes that aren't quite ready;
+renderings don't yet look great, parameters need tuning, etc. We'll try
+to get to this eventually, or if you're able to get them in good shape,
+please submit an update (see the following).
+
+# Converting Scenes to pbrt's Format
+
+Given an amazing scene in another 3D file format, there are a few
+options for converting it to be used in pbrt. (We're always happy to have
+help with improvements in this area!)
+
+## Cinema 4D
+
+The `exporters/cinema4d` directory in the pbrt-v3 distribution provides an
+exporter from Cinema 4D. This exporter was developed to export the amazing
+"landscape" scene that is on the book's front cover from Cinema 4D, so thus
+should be up to date with respect to pbrt's material models and rendering
+settings. We have seen good results with using this exporter for other
+Cinema 4D scenes.
+
+## Wavefront OBJ
+
+The pbrt-v3 distribution includes a converter from the Wavefront OBJ
+format, `obj2pbrt`, that is built when the rest of the system is compiled.
+To run it, provide the path to an OBJ file and a filename for a new pbrt
+file:
+
+```bash
+$ obj2pbrt scene.obj scene.pbrt
+```
+
+If there is an accompanying material description file (e.g. `scene.mtl`),
+the values in it will be roughly mapped to corresponding pbrt materials.
+You will likely need to manually edit and tune the materials in the
+generated pbrt file in order to achieve reasonably good-looking results.
+
+Note that OBJ files only describe scene geometry; they don't include camera
+specifications or descriptions of light sources. (Thus, the generated pbrt
+input file only includes shape and material specifications that you'll need
+to add inside the WorldBegin/WorldEnd block of a full pbrt input file.)
+Unless you have camera and light source information separately, you'll need
+to specify both on your own (see "General Tips" below for some ideas about
+how to do this.)
+
+## Blender
+
+Many very nice scenes have been modeled in
+[Blender](https://www.blender.org/) and are freely available.  (See, for
+example, the [BlendSwap](http://www.blendswap.com/) website for many
+scenes that can be used via a Creative Commons license.) Our experience has
+been that the best approach to export scenes from Blender is to use
+Blender's native OBJ export (available via the File/Export menu item) and
+then to use the obj2pbrt utility described above to convert to pbrt's
+format.
+
+Blender scene files may have texture maps for the scene included directly
+in their `.blend` file. Choose "File/External Data/Unpack into Files" in
+Blender to save those files independently on disk. (Note that if the
+textures aren't PNG or TGA format, you'll need to convert to one of those
+for pbrt to be able to use them.)
+
+We would have hoped that the Blender exporter for
+[LuxRender](http://www.luxrender.net) would have worked well for pbrt
+(LuxRender is originally based on pbrt and still has a similar input file
+format.) Unfortunately, our experience has been that exporting to OBJ and
+using obj2pbrt gives a better starting point for the scene
+materials. (Further, the LuxRender Blender exporter silently fails if there
+aren't any lights in the scene.) We suspect that using this exporter as a
+starting point for a new direct Blender to pbrt exporter might be a
+worthwhile approach.
+
+## Old Exporters
+
+The pbrt-v2 distribution includes
+[exporters](https://github.com/mmp/pbrt-v2/tree/master/exporters) for 2010
+era 3DS Max (which was used for the model used for the cover image for the
+second edition of the book), Blender, Mathematica, and [Structure
+Synth](http://structuresynth.sourceforge.net/). All of these are very much
+out of date, both due to changes over the past six years in in the systems
+they exported from as well as changes in pbrt. Some of these may be useful
+for developing updated exporters for the corresponding systems for pbrt-v3.
+
+## General Tips
+
+A scene exported using one of the above exporters is certain to not
+immediately render beautifully as is. Here are some suggestions for how to
+take an initial export and turn it into something that looks great.
+
+First, you may find it useful to run
+
+```bash
+$ pbrt --toply scene.pbrt > newscene.pbrt
+```
+
+This will convert triangle meshes into more compact binary PLY files,
+giving you a much smaller pbrt scene file to edit.
+
+Next, if the exporter doesn't include camera information, the first thing
+to do is to find a good view. The "environment" camera (which renders an
+image in all directions) can be useful for finding a good initial position
+for the camera. Keep rendering images and adjusting the camera position to
+taste. (For efficiency, use as few pixel samples as you can tolerate and
+learn to squint and interpret noisy renderings!) Then, you can use the
+origin you've chosen as the basis for specifying a `LookAt` transformation
+for a more conventional camera model.
+
+While placing the camera, it can be helpful to have a point light source at
+the camera's position. Adding the following light source to your scene file
+does this in a way that ensures that the light moves appropriately to
+wherever the camera has been placed.
+
+```
+AttributeBegin
+CoordSysTransform "camera"
+LightSource "point" "color I" [10 10 10]
+AttributeEnd
+```
+
+Once the camera is placed, we have found that it's next useful to set up
+approximate light sources. For outdoor scenes, a good HDR environment map
+is often all that is needed for lighting. For indoor scenes, you may want a
+combination of an environment map for the outside and point and/or area
+light sources for interior lights. You may find it useful to examine the
+scene in the modeling system that it came from to determine which geometry
+corresponds to area light sources and to try adding `AreaLightSource`
+properties to those. (Note that in pbrt, area light sources only emit
+lights on the side that the surface normal points; you may need a
+`ReverseOrientation` directive to make the light come out in the right
+direction.
+
+Given good lighting, the next step is to tune the materials. It can be
+helpful to pick a material and set it to an extreme value (such as a
+"matte" material that is pure red) and render the scene; this quickly shows
+which geometric models have that material associated with it. As you do
+this, watch for objects that are missing texture maps and re-add
+them. (The good news is that such objects generally do have correct texture
+coordinates with them. 
+
+# Submitting Updates
+
+We'd love to increase the scope (and quality) of scenes available for use
+with `pbrt`. If you have a nice scene in `pbrt`'s format that you'd like to
+have included in this distribution, or if you have improvements to the
+current set of scenes, we'd love to have them!
+
+Unfortunately, it's not possible to host large binary distributions on
+github, so it's a little more involved than sending a pull request. There
+are a few options for submitting updates.
+
+* For changes small enough to be sent via email, you can use 
+  `git format-patch` to make a patch that we can apply and push to the
+  repository. (Send the patch to authors@pbrt.org.)
+
+* For larger changes, consider the `git bundle` command to generate a
+  binary representation of the changes. Post the resulting file online
+  somewhere that we can access it, send us a pointer (again,
+  authors@pbrt.org), and we'll merge it.
+
+* Finally, if you're not comfortable enough with git for those options,
+  feel free to create a zip or tar file with a new scene and send us a
+  pointer to it; we can take it from there.
+
+# Scene Credits
+
+* bathroom: Thanks to "nacimus", CC-BY license. Downloaded from
+  http://www.blendswap.com/blends/view/73937.
+
+* breakfast: Thanks to "Wig42", CC-BY license. Downloaded from
+  http://www.blendswap.com/blends/view/75431.
+
+* buddha-fractal: thanks for Guillermo M. Leal Llaguno for this fun variant
+  of the Stanford Buddha model. (Buddha model courtesy [Stanford Computer
+  Graphics Laboratory](http://graphics.stanford.edu/data/3Dscanrep/)).
+
+* bunny-fur: Bunny model courtesy [Stanford Computer Graphics
+  Laboratory](http://graphics.stanford.edu/data/3Dscanrep/).  Environment map
+  via http://dativ.at/lightprobes/index.html, thanks to Bernhard Vogl.
+
+* caustic-glass: Thanks to Simon Wendsche (https://byob.carbonmade.com/) for
+  the model.
+
+* cloud: Smoke dataset courtesy Duc Nguyen and Ron Fedkiw.  Skylight
+  environment map courtesy Nolan Goodnight.
+
+* coffee-splash: Scene thanks to "guismo"; CC-Attribution license.
+  Downloaded from http://www.blendswap.com/blends/view/56136. Environment map
+  via http://dativ.at/lightprobes/index.html, thanks to Bernhard Vogl.
+
+* dragon: Dragon model courtesy Christian Schüller.  Environment map via
+  http://dativ.at/lightprobes/index.html, thanks to Bernhard Vogl.
+
+* ecosys: Scene from Deussen et al., [Realistic modeling and rendering of
+  plant ecosystems](http://dl.acm.org/citation.cfm?id=280898).
+
+* ganesha: Model scanned by Wenzel Jakob.
+
+* head: Model thanks to Infinite Realities, Inc., CC-Attribution license.
+  Environment map thanks to [USC-ICT light probe image gallery](http://gl.ict.usc.edu/Data/HighResProbes/).
+
+* killeroos: Thanks to [headus](http://www.headus.com/au)/Rezard for the
+  model.
+
+* landscape: Many thanks to Jan-Walter Schliep, Burak Kahraman, and Timm
+  Dapper from [Laubwerk](http://www.laubwerk.com) for this amazing scene.
+
+* pbrt-book: Thanks to Karl Li (yiningkarlli@) for this fun model.
+
+* sanmiguel: Thanks to Guillermo M. Leal Llaguno for this excellent scene.
+
+* sportscar: Excellent model and pbrt conversion courtesy of Yasutoshi
+  Mori (@MirageYM); CC-BY license.  Skylight environment maps courtesy Nolan
+  Goodnight.
+
+* sssdragon: Dragon model courtesy [Stanford Computer Graphics
+  Laboratory](http://graphics.stanford.edu/data/3Dscanrep/).  Environment map
+  via http://dativ.at/lightprobes/index.html, thanks to Bernhard Vogl.
+
+* structuresynth: Environment map thanks to [USC-ICT light probe image gallery](http://gl.ict.usc.edu/Data/HighResProbes/).
+
+* tt: Thanks for Marko Dabrovic and Mihovil Odak for the car model.
+  Environment map thanks to [USC-ICT light probe image gallery](http://gl.ict.usc.edu/Data/HighResProbes/).
+
+* villa: Many thanks to Florent Boyer for this scene.  Skylight environment
+  map courtesy Nolan Goodnight.
+
+* white-room: Scene thanks to "Jay-Artist", CC-Attribution
+  license. Downloaded from http://www.blendswap.com/blends/view/41683.
+
+* yeahright: "Interesting" shape generated by Keenan Crane
+  (http://www.cs.cmu.edu/~kmcrane/Projects/ModelRepository/).  Environment
+  map thanks to [USC-ICT light probe image
+  gallery](http://gl.ict.usc.edu/Data/HighResProbes/).
+
+<!-- Markdeep: --><style class="fallback">body{visibility:hidden;}</style><script src="html/markdeep.min.js"></script>

+ 236 - 0
bathroom/73937 - Salle de bain - License.html

@@ -0,0 +1,236 @@
+<!doctype html>
+<html lang="en">
+<head>
+	<meta charset="UTF-8">
+	<title>Salle de bain by nacimus - 73937 - Creative Commons License</title>
+	<style>
+	html {
+		background: #E1E4E2;
+	}
+	html,body {
+		margin:0;
+		padding:0;
+		font-family: 'Nimbus Sans L', 'Liberation Sans', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
+		color:#525B5F;
+	}
+	div {
+		padding:16px 32px;
+	}
+	.content {
+		width:100%;
+		max-width:720px;
+		margin:auto;
+	}
+	.license {
+		color:white;
+		background:#373C40;
+		margin: 32px 0;
+	}
+	.main {
+		background: #f0f0f0;
+	}
+	a:link,a:visited {
+		text-decoration: none;
+		color:#FF5E00;
+	}
+	a:hover {
+		text-decoration: underline;
+		color:red;
+	}
+	img {
+		vertical-align: top;
+	}
+	hr {
+		height:0;
+		border-top: 1px solid #D1D4D2;
+		border-bottom: 1px solid white;
+		border-right: none;
+		border-left: none;
+	}
+	:target {
+	  -webkit-animation: highlight 2s ease;
+	  -moz-animation: highlight 2s ease;
+	  -o-animation: highlight 2s ease;
+	  animation: highlight 2s ease;
+	}
+
+	@-webkit-keyframes highlight {
+	  0% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  50% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  100% {
+	    background: transparent;
+	  }
+	}
+
+	@-moz-keyframes highlight {
+	  0% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  50% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  100% {
+	    background: transparent;
+	  }
+	}
+
+	@-o-keyframes highlight {
+	  0% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  50% {
+	    background: rgba(255, 94, 0, 0.25);
+	  }
+
+	  100% {
+	    background: transparent;
+	  }
+	}
+	* {
+		-webkit-box-sizing:border-box;
+		-moz-box-sizing:border-box;
+		-ms-box-sizing:border-box;
+		-o-box-sizing:border-box;
+		box-sizing:border-box;
+	}
+	</style>
+</head>
+<body class="frontend">
+	<div class="content">
+		<div class="main">
+			<header>
+				<a href="#license">License</a> | 
+				<a href="#info">Information</a> | 
+				<a href="#moderation">Moderation</a> | 
+				<a href="#notes">Notes</a>
+				<hr />
+			</header>
+
+			<section id="license"></section>
+			<h1 id="license">
+				<img src="preview_73937.jpg" alt="">
+				<a taget="_blank" href="http://www.blendswap.com/blends/view/73937">Salle de bain</a>
+			</h1>
+
+			<div class="license">
+
+			<h2>VERY IMPORTANT LICENSE INFORMATION:</h2>
+
+			<p>This file has been released by <a taget="_blank" href="http://www.blendswap.com/users/view/nacimus">nacimus</a> under the following license:</p>
+			<h2>
+				<a href="http://creativecommons.org/licenses/by/3.0" target="_blank">Creative Commons Attribution 3.0</a>
+			</h2>
+			
+			<p>
+				You can use this model for any porposes according to the following conditions:
+			</p>
+
+			<ul>
+			<li>You MUST give attribution/credit to nacimus.</li>
+			</ul>
+
+			</div>
+
+			<hr />
+			
+			<section id="info">
+				<h3>Blend information</h3>
+				<ul>
+					<li>
+						<strong>Name:</strong> 
+						<a target="_blank" href="http://www.blendswap.com/blends/view/73937">Salle de bain</a>
+					</li>
+					<li>
+						<strong>Author:</strong> 
+						<a target="_blank" href="http://www.blendswap.com/users/view/nacimus">nacimus</a>.
+					</li>
+					<li>
+						<strong>Premalink:</strong> 
+						<a target="_blank" href="http://www.blendswap.com/blends/view/73937">http://www.blendswap.com/blends/view/73937</a>.
+					</li>
+					<li>
+						<strong>For Blender 2.52 and up.</strong>
+					</li>
+					<li>
+						<strong>Description:</strong><br>
+						<p>Reproduction d'une salle de bain inspir&eacute; du catalogue Jacob Delafont. 
+Mod&eacute;lis&eacute; sous Blender 2.6 et rendu sous cycles.</p>
+
+					</li>
+				</ul>
+				<hr />
+			</section>
+			
+			<section id="moderation">
+				<h3>Help us moderate this blend</h3>
+				<p>
+					If you encounter any problems with this blend including:
+				</p>
+				<ul>
+					<li>
+						Broken links to other blends.
+					</li>
+					<li>
+						Missing textures and other internal assets.
+					</li>
+					<li>
+						Innacurate preview images on the site.
+					</li>
+					<li>
+						Render results are not the same as advertised by the author.
+					</li>
+					<li>
+						Illegal distribution of third party files/assets.
+					</li>
+					<li>
+						Ripping from a game or other 3D assets library.
+					</li>
+					<li>
+						Uncredited or incorrect use of CC licensed assets.
+					</li>
+					<li>
+						Other issues <sup><a href="#notes">1</a></sup>
+					</li>
+				</ul>
+				<p>
+					Please submit a report of the problem from 
+					<a href="http://www.blendswap.com/reports/blend/73937">here</a>. 
+					<strong>PROVIDE EVIDENCE OF THE PROBLEM</strong> (screen shots, renders, 
+					links, etc.) so we can solve the issue.
+				</p>
+				<hr>
+			</section>
+			
+			<section id="notes">
+				<h4 id="notes">Notes</h4>
+				<ul>
+					<li>
+						<small>
+							Please do not report blends when you don't know about a feature in Blender. 
+							Authors will get a worrying email when their blend is reported, so please 
+							avoid them the hassle. If you have a question about how to use a blend please 
+							first leave a cool comment in the comment section instead of sending a Report, 
+							<strong>Reports are for serious stuff</strong>. Thanks.
+						</small>
+					</li>
+				</ul>
+				<hr />
+			</section>
+
+			<footer>
+				<a href="http://www.blendswap.com">Blend Swap, LLC.</a>.
+			</footer>
+
+		</div>
+	</div>
+</body>
+</html>

+ 475 - 0
bathroom/bathroom.pbrt

@@ -0,0 +1,475 @@
+# make wood more glossy
+
+LookAt 0 23 30  10.2 5 0   0 1 0
+Camera "perspective" "float fov" 50
+   "float focaldistance" 31 "float lensradius" .2 # .4
+
+Film "image" "integer xresolution" 1200 "integer yresolution" 760
+#Film "image" "integer xresolution" 600 "integer yresolution" 380
+    "string filename" "bathroom.exr"
+
+Sampler "sobol" "integer pixelsamples" 4096
+Integrator "bdpt"
+
+
+WorldBegin
+
+Scale -1 1 1
+
+# light above / behind camera 
+AttributeBegin
+   AreaLightSource "area" "blackbody L" [2700 15]
+    Shape "plymesh" "string filename" "geometry/mesh_00001.ply" 
+AttributeEnd
+
+# light above the sinks
+AttributeBegin
+   AreaLightSource "area" "blackbody L" [2700 10]
+    Shape "plymesh" "string filename" "geometry/mesh_00008.ply" 
+AttributeEnd
+
+AttributeBegin
+   AreaLightSource "area" "blackbody L" [2700 10]
+    Shape "plymesh" "string filename" "geometry/mesh_00009.ply" 
+AttributeEnd
+
+AttributeBegin
+   AreaLightSource "area" "blackbody L" [2700 10]
+    Shape "plymesh" "string filename" "geometry/mesh_00010.ply" 
+AttributeEnd
+
+# window emitter
+AttributeBegin
+    AreaLightSource "area" "blackbody L" [6500 100 ] #"color L" [2500 2500 2500]
+    Shape "plymesh" "string filename" "geometry/mesh_00062.ply" 
+    ReverseOrientation
+    Shape "plymesh" "string filename" "geometry/mesh_00062.ply" 
+AttributeEnd
+
+
+# white border around black thing on floor?
+MakeNamedMaterial "blanc" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ .5 .5 .5 ]
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+# towels and mats on floor
+TransformBegin
+  Scale 10 10 10
+  Texture "cloth-bump-base" "float" "fbm"
+  Texture "cloth-bump" "float" "scale" "texture tex1" "cloth-bump-base" "float tex2" .025
+TransformEnd
+
+MakeNamedMaterial "blanc_drap" 
+        "string type" [ "matte" ] 
+        "rgb Kd" [ 0.6 .6 .6 ]
+        "texture bumpmap" "cloth-bump"
+
+Texture "wood" "color" "imagemap" "string filename" "textures/WoodFine0016_L.png"
+MakeNamedMaterial "bois_" 
+        "float uroughness" [ 0.003 ] 
+        "float vroughness" [ 0.003 ] 
+        "string type" [ "substrate" ] 
+        "texture Kd" "wood"
+        "rgb Ks" [ 0.2 0.2 0.2 ] 
+
+# objects on shelves
+MakeNamedMaterial "bois_ebene" 
+        "float sigma" [ 10 ] 
+        "string type" [ "matte" ] 
+        "rgb Kd" [ .1 .1 .1 ]
+
+
+# small bottle by the tub
+MakeNamedMaterial "etiquette" 
+        "float uroughness" [ 0.0104080001 ] 
+        "float vroughness" [ 0.0104080001 ] 
+        "string type" [ "glass" ] 
+
+# black seam around top of tub
+MakeNamedMaterial "jointure_noire" 
+        "float roughness" [ 0.1 ] 
+        "string type" [ "plastic" ] 
+        "rgb Kd" [ .04 .04 .04 ] 
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+
+# walls
+MakeNamedMaterial "latte" 
+      #"string type" "fourier" "string bsdffile" "bsdfs/ceramic.bsdf"
+      "string type" "matte"
+      "color Kd" [ .55 .5 .5 ]
+      "float sigma" 20
+
+MakeNamedMaterial "lumiere_cadre" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ 0.639999986 0.639999986 0.639999986 ] 
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+# metal trashcan
+MakeNamedMaterial "metal_poubelle" 
+        "spectrum eta" "spds/Ag.eta.spd"
+        "spectrum k" "spds/Ag.k.spd"
+        "float roughness" [0.001]
+        "string type" ["metal"]
+
+# metal faucets, bars, drain in sink, ...
+MakeNamedMaterial "metal_vis.001" 
+        "spectrum eta" "spds/Ag.eta.spd"
+        "spectrum k" "spds/Ag.k.spd"
+        "float roughness" [0.01]
+        "string type" ["metal"]
+
+MakeNamedMaterial "mirror" 
+        "string type" [ "mirror" ] 
+
+# walls, painted wood shelves by the window
+MakeNamedMaterial "mur_blanc" 
+      "string type" "fourier" "string bsdffile" "bsdfs/paint.bsdf"
+
+# wall on the right
+MakeNamedMaterial "mur_droit" 
+      "string type" "fourier" "string bsdffile" "bsdfs/paint.bsdf"
+
+# black scale? on floor
+MakeNamedMaterial "noir" 
+        "float roughness" [ 0.5 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ .1 .1 .1 ]
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+
+# plastic bit at top of bottle by bathrub
+MakeNamedMaterial "plastique" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ .2 .6 .2 ]
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+# trash can plastic part, also plastic on outlet
+MakeNamedMaterial "plastique_poubelle" 
+        "float sigma" [ 20 ] 
+        "string type" [ "matte" ] 
+        "rgb Kd" [ .02 .02 .02 ] 
+
+# middle part of squiggly sculpture on shelf
+MakeNamedMaterial "poignée_marron" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ .3 .5 .4 ]
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+# porcelain: sink bowls, interior of bathrub
+MakeNamedMaterial "porcelaine.002" 
+      "string type" "fourier" "string bsdffile" "bsdfs/ceramic.bsdf"
+
+# floor
+Texture "wood-floor" "color" "imagemap" "string filename" "textures/WoodFine0034_7_S.png"
+MakeNamedMaterial "sol" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+#        "rgb Kd" [ 0.639999986 0.639999986 0.639999986 ] 
+         "texture Kd" "wood-floor"
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+# bottle by bathtub
+MakeNamedMaterial "verre" 
+        "float roughness" [ 0.0104080001 ] 
+        "float index" [ 1 ] 
+        "string type" [ "uber" ] 
+        "rgb Kd" [ 0.639999986 0.639999986 0.639999986 ] 
+        "rgb Ks" [ 0.5 0.5 0.5 ] 
+        "rgb Kt" [ 0 0 0 ] 
+        "rgb opacity" [ 1 1 1 ] 
+
+###########################################################################
+
+
+AttributeBegin
+    NamedMaterial "etiquette"
+    Shape "plymesh" "string filename" "geometry/mesh_00002.ply" 
+    NamedMaterial "plastique"
+    Shape "plymesh" "string filename" "geometry/mesh_00003.ply" 
+    NamedMaterial "verre"
+    Shape "plymesh" "string filename" "geometry/mesh_00004.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00005.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00006.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00007.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "blanc_drap"
+    Shape "plymesh" "string filename" "geometry/mesh_00011.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00012.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00013.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00014.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00015.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00016.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00017.ply" 
+    NamedMaterial "poignée_marron"
+    Shape "plymesh" "string filename" "geometry/mesh_00018.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "lumiere_cadre"
+    Shape "plymesh" "string filename" "geometry/mesh_00019.ply" 
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00020.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_ebene"
+    Shape "plymesh" "string filename" "geometry/mesh_00021.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00022.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00023.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00024.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00025.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00026.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00027.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00028.ply" 
+    NamedMaterial "noir"
+    Shape "plymesh" "string filename" "geometry/mesh_00029.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00030.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00031.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00032.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00033.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00034.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00035.ply" 
+    NamedMaterial "mirror"
+    Shape "plymesh" "string filename" "geometry/mesh_00036.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "blanc_drap"
+    Shape "plymesh" "string filename" "geometry/mesh_00037.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00038.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00039.ply" 
+    NamedMaterial "plastique_poubelle"
+    Shape "plymesh" "string filename" "geometry/mesh_00040.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00041.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00042.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "blanc_drap"
+    Shape "plymesh" "string filename" "geometry/mesh_00043.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "blanc_drap"
+    Shape "plymesh" "string filename" "geometry/mesh_00044.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_poubelle"
+    Shape "plymesh" "string filename" "geometry/mesh_00045.ply" 
+    NamedMaterial "plastique_poubelle"
+    Shape "plymesh" "string filename" "geometry/mesh_00046.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00047.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00048.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00049.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00050.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00051.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "metal_vis.001"
+    Shape "plymesh" "string filename" "geometry/mesh_00052.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "porcelaine.002"
+    Shape "plymesh" "string filename" "geometry/mesh_00053.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "porcelaine.002"
+    Shape "plymesh" "string filename" "geometry/mesh_00054.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "lumiere_cadre"
+    Shape "plymesh" "string filename" "geometry/mesh_00055.ply" 
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00056.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_"
+    Shape "plymesh" "string filename" "geometry/mesh_00057.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_"
+    Shape "plymesh" "string filename" "geometry/mesh_00058.ply" 
+    NamedMaterial "jointure_noire"
+    Shape "plymesh" "string filename" "geometry/mesh_00059.ply" 
+    NamedMaterial "porcelaine.002"
+    Shape "plymesh" "string filename" "geometry/mesh_00060.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_"
+    Shape "plymesh" "string filename" "geometry/mesh_00061.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "latte"
+    Shape "plymesh" "string filename" "geometry/mesh_00063.ply" 
+    NamedMaterial "mirror"
+    Shape "plymesh" "string filename" "geometry/mesh_00064.ply" 
+    NamedMaterial "mur_blanc"
+    Shape "plymesh" "string filename" "geometry/mesh_00065.ply" 
+    NamedMaterial "mur_droit"
+    Shape "plymesh" "string filename" "geometry/mesh_00066.ply" 
+    NamedMaterial "sol"
+    Shape "plymesh" "string filename" "geometry/mesh_00067.ply" 
+AttributeEnd
+
+AttributeBegin
+    NamedMaterial "bois_"
+    Shape "plymesh" "string filename" "geometry/mesh_00068.ply" 
+AttributeEnd
+
+
+WorldEnd

BIN
bathroom/bsdfs/ceramic.bsdf


BIN
bathroom/bsdfs/paint.bsdf


BIN
bathroom/geometry/mesh_00001.ply


BIN
bathroom/geometry/mesh_00002.ply


BIN
bathroom/geometry/mesh_00003.ply


BIN
bathroom/geometry/mesh_00004.ply


BIN
bathroom/geometry/mesh_00005.ply


BIN
bathroom/geometry/mesh_00006.ply


BIN
bathroom/geometry/mesh_00007.ply


BIN
bathroom/geometry/mesh_00008.ply


BIN
bathroom/geometry/mesh_00009.ply


BIN
bathroom/geometry/mesh_00010.ply


BIN
bathroom/geometry/mesh_00011.ply


BIN
bathroom/geometry/mesh_00012.ply


BIN
bathroom/geometry/mesh_00013.ply


BIN
bathroom/geometry/mesh_00014.ply


BIN
bathroom/geometry/mesh_00015.ply


BIN
bathroom/geometry/mesh_00016.ply


BIN
bathroom/geometry/mesh_00017.ply


BIN
bathroom/geometry/mesh_00018.ply


BIN
bathroom/geometry/mesh_00019.ply


BIN
bathroom/geometry/mesh_00020.ply


BIN
bathroom/geometry/mesh_00021.ply


BIN
bathroom/geometry/mesh_00022.ply


BIN
bathroom/geometry/mesh_00023.ply


BIN
bathroom/geometry/mesh_00024.ply


BIN
bathroom/geometry/mesh_00025.ply


BIN
bathroom/geometry/mesh_00026.ply


BIN
bathroom/geometry/mesh_00027.ply


BIN
bathroom/geometry/mesh_00028.ply


BIN
bathroom/geometry/mesh_00029.ply


BIN
bathroom/geometry/mesh_00030.ply


BIN
bathroom/geometry/mesh_00031.ply


BIN
bathroom/geometry/mesh_00032.ply


BIN
bathroom/geometry/mesh_00033.ply


BIN
bathroom/geometry/mesh_00034.ply


BIN
bathroom/geometry/mesh_00035.ply


BIN
bathroom/geometry/mesh_00036.ply


BIN
bathroom/geometry/mesh_00037.ply


BIN
bathroom/geometry/mesh_00038.ply


BIN
bathroom/geometry/mesh_00039.ply


BIN
bathroom/geometry/mesh_00040.ply


BIN
bathroom/geometry/mesh_00041.ply


BIN
bathroom/geometry/mesh_00042.ply


BIN
bathroom/geometry/mesh_00043.ply


BIN
bathroom/geometry/mesh_00044.ply


BIN
bathroom/geometry/mesh_00045.ply


BIN
bathroom/geometry/mesh_00046.ply


BIN
bathroom/geometry/mesh_00047.ply


BIN
bathroom/geometry/mesh_00048.ply


BIN
bathroom/geometry/mesh_00049.ply


BIN
bathroom/geometry/mesh_00050.ply


BIN
bathroom/geometry/mesh_00051.ply


BIN
bathroom/geometry/mesh_00052.ply


BIN
bathroom/geometry/mesh_00053.ply


BIN
bathroom/geometry/mesh_00054.ply


BIN
bathroom/geometry/mesh_00055.ply


BIN
bathroom/geometry/mesh_00056.ply


BIN
bathroom/geometry/mesh_00057.ply


BIN
bathroom/geometry/mesh_00058.ply


BIN
bathroom/geometry/mesh_00059.ply


BIN
bathroom/geometry/mesh_00060.ply


BIN
bathroom/geometry/mesh_00061.ply


BIN
bathroom/geometry/mesh_00062.ply


BIN
bathroom/geometry/mesh_00063.ply


BIN
bathroom/geometry/mesh_00064.ply


BIN
bathroom/geometry/mesh_00065.ply


BIN
bathroom/geometry/mesh_00066.ply


BIN
bathroom/geometry/mesh_00067.ply


BIN
bathroom/geometry/mesh_00068.ply


BIN
bathroom/salle_de_bain135.blend


+ 56 - 0
bathroom/spds/Ag.eta.spd

@@ -0,0 +1,56 @@
+298.757050 1.519000
+302.400421 1.496000
+306.133759 1.432500
+309.960449 1.323000
+313.884003 1.142062
+317.908142 0.932000
+322.036835 0.719062
+326.274139 0.526000
+330.624481 0.388125
+335.092377 0.294000
+339.682678 0.253313
+344.400482 0.238000
+349.251221 0.221438
+354.240509 0.209000
+359.374420 0.194813
+364.659332 0.186000
+370.102020 0.192063
+375.709625 0.200000
+381.489777 0.198063
+387.450562 0.192000
+393.600555 0.182000
+399.948975 0.173000
+406.505493 0.172625
+413.280579 0.173000
+420.285339 0.166688
+427.531647 0.160000
+435.032196 0.158500
+442.800629 0.157000
+450.851562 0.151063
+459.200653 0.144000
+467.864838 0.137313
+476.862213 0.132000
+486.212463 0.130250
+495.936707 0.130000
+506.057861 0.129938
+516.600769 0.130000
+527.592224 0.130063
+539.061646 0.129000
+551.040771 0.124375
+563.564453 0.120000
+576.670593 0.119313
+590.400818 0.121000
+604.800842 0.125500
+619.920898 0.131000
+635.816284 0.136125
+652.548279 0.140000
+670.184753 0.140063
+688.800964 0.140000
+708.481018 0.144313
+729.318665 0.148000
+751.419250 0.145875
+774.901123 0.143000
+799.897949 0.142563
+826.561157 0.145000
+855.063293 0.151938
+885.601257 0.163000

+ 56 - 0
bathroom/spds/Ag.k.spd

@@ -0,0 +1,56 @@
+298.757050 1.080000
+302.400421 0.882000
+306.133759 0.761063
+309.960449 0.647000
+313.884003 0.550875
+317.908142 0.504000
+322.036835 0.554375
+326.274139 0.663000
+330.624481 0.818563
+335.092377 0.986000
+339.682678 1.120687
+344.400482 1.240000
+349.251221 1.345250
+354.240509 1.440000
+359.374420 1.533750
+364.659332 1.610000
+370.102020 1.641875
+375.709625 1.670000
+381.489777 1.735000
+387.450562 1.810000
+393.600555 1.878750
+399.948975 1.950000
+406.505493 2.029375
+413.280579 2.110000
+420.285339 2.186250
+427.531647 2.260000
+435.032196 2.329375
+442.800629 2.400000
+450.851562 2.478750
+459.200653 2.560000
+467.864838 2.640000
+476.862213 2.720000
+486.212463 2.798125
+495.936707 2.880000
+506.057861 2.973750
+516.600769 3.070000
+527.592224 3.159375
+539.061646 3.250000
+551.040771 3.348125
+563.564453 3.450000
+576.670593 3.553750
+590.400818 3.660000
+604.800842 3.766250
+619.920898 3.880000
+635.816284 4.010625
+652.548279 4.150000
+670.184753 4.293125
+688.800964 4.440000
+708.481018 4.586250
+729.318665 4.740000
+751.419250 4.908125
+774.901123 5.090000
+799.897949 5.288750
+826.561157 5.500000
+855.063293 5.720624
+885.601257 5.950000

BIN
bathroom/textures/WoodFine0016_L.png


BIN
bathroom/textures/WoodFine0034_7_S.jpg


BIN
bathroom/textures/WoodFine0034_7_S.png


BIN
bathroom/textures/etiquette.png


BIN
breakfast/The Breakfast Room BS.blend


+ 50 - 0
breakfast/breakfast-lamps.pbrt

@@ -0,0 +1,50 @@
+# Main Scene File
+
+LookAt -0.623726 -7.587055 1.204726 -0.623726 -6.587055 1.204728 0.000000 -0.000002 1.000000
+
+# table view (teacups need smoothing, marble is lame)
+#LookAt 2 -2 4   1.25 0 2.5  0 0 1
+
+Camera "perspective"
+	"float fov" [49.134342077604479]
+
+Film "image"
+	"integer xresolution" [768]
+	"integer yresolution" [768]
+        "string filename" "breakfast-lamps.exr"
+        "float scale" 2
+
+Integrator "sppm" "integer numiterations" [256] "float radius" [.25]
+
+WorldBegin
+
+Include "materials.pbrt"
+
+Include "geometry.pbrt"
+
+# inside lamps
+AttributeBegin
+Translate .951 1.94 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+AttributeBegin
+Translate -2.191 1.944 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+# extra walls
+
+AttributeBegin
+NamedMaterial "Paint - White Matt"
+# right: x = -6.5 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3 ]
+    "point P" [ -6.5 -10 -2   -6.5  10 -2   -6.5 10 7   -6.5 -10 7 ]
+# back: y = -9 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3]
+    "point P" [ -10 -9 -2   10 -9 -2  10 -9 7  -10 -9 7 ]
+AttributeEnd
+
+WorldEnd

+ 40 - 0
breakfast/breakfast.pbrt

@@ -0,0 +1,40 @@
+# Main Scene File
+
+LookAt -0.623726 -7.587055 1.204726 -0.623726 -6.587055 1.204728 0.000000 -0.000002 1.000000
+
+# table view (teacups need smoothing, marble is lame)
+#LookAt 2 -2 4   1.25 0 2.5  0 0 1
+
+Camera "perspective"
+	"float fov" [49.134342077604479]
+
+Film "image"
+	"integer xresolution" [768]
+	"integer yresolution" [768]
+        "string filename" "breakfast.exr"
+        "float scale" 16
+
+Integrator "mlt" "integer mutationsperpixel" [15000]
+
+WorldBegin
+
+Include "materials.pbrt"
+
+Include "geometry.pbrt"
+
+# through blinds
+LightSource "distant" "point from" [9 -4 9 ] "blackbody L" [5000 10]
+
+# extra walls
+
+AttributeBegin
+NamedMaterial "Paint - White Matt"
+# right: x = -6.5 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3 ]
+    "point P" [ -6.5 -10 -2   -6.5  10 -2   -6.5 10 7   -6.5 -10 7 ]
+# back: y = -9 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3]
+    "point P" [ -10 -9 -2   10 -9 -2  10 -9 7  -10 -9 7 ]
+AttributeEnd
+
+WorldEnd

BIN
breakfast/bsdfs/ceramic.bsdf


+ 35 - 0
breakfast/bsdfs/ceramic.py

@@ -0,0 +1,35 @@
+import sys
+sys.path.append('.')
+
+import layerlab as ll
+
+albedo = [0.6, 0.6, 0.6]
+eta    = 1.5
+alpha  = 0.025 # Beckmann roughness
+
+# Construct quadrature scheme suitable for the material
+n, m = ll.parameterHeuristicMicrofacet(eta = eta, alpha = alpha)
+mu, w = ll.quad.gaussLobatto(n)
+print("# of nodes = %i, fourier orders = %i" % (n, m))
+
+# Construct coating layer
+print("Creating coating layer")
+coating = ll.Layer(mu, w, m)
+coating.setMicrofacet(eta = eta, alpha = alpha)
+
+output = []
+for channel in range(3):
+    # Construct diffuse bottom layer for each channel
+    print("Creating diffuse layer")
+    l = ll.Layer(mu, w, m)
+    l.setDiffuse(albedo[channel])
+    
+    # Apply coating
+    print("Applying coating..")
+    l.addToTop(coating)
+    output.append(l)
+
+# .. and write to disk
+print("Writing to disk..")
+storage = ll.BSDFStorage.fromLayerRGB("output.bsdf", output[0], output[1], output[2])
+storage.close()

BIN
breakfast/bsdfs/paint.bsdf


+ 35 - 0
breakfast/bsdfs/paint.py

@@ -0,0 +1,35 @@
+import sys
+sys.path.append('.')
+
+import layerlab as ll
+
+albedo = [0.6, 0.6, 0.6]
+eta    = 1.5
+alpha  = 0.25 # Beckmann roughness
+
+# Construct quadrature scheme suitable for the material
+n, m = ll.parameterHeuristicMicrofacet(eta = eta, alpha = alpha)
+mu, w = ll.quad.gaussLobatto(n)
+print("# of nodes = %i, fourier orders = %i" % (n, m))
+
+# Construct coating layer
+print("Creating coating layer")
+coating = ll.Layer(mu, w, m)
+coating.setMicrofacet(eta = eta, alpha = alpha)
+
+output = []
+for channel in range(3):
+    # Construct diffuse bottom layer for each channel
+    print("Creating diffuse layer")
+    l = ll.Layer(mu, w, m)
+    l.setDiffuse(albedo[channel])
+    
+    # Apply coating
+    print("Applying coating..")
+    l.addToTop(coating)
+    output.append(l)
+
+# .. and write to disk
+print("Writing to disk..")
+storage = ll.BSDFStorage.fromLayerRGB("paint.bsdf", output[0], output[1], output[2])
+storage.close()

+ 55 - 0
breakfast/f16-8a.pbrt

@@ -0,0 +1,55 @@
+# Main Scene File
+
+Sampler "halton" "integer pixelsamples" [64]
+Integrator "path"
+
+LookAt -0.623726 -7.587055 1.204726 -0.623726 -6.587055 1.204728 0.000000 -0.000002 1.000000
+
+# table view (teacups need smoothing, marble is lame)
+#LookAt 2 -2 4   1.25 0 2.5  0 0 1
+
+Camera "perspective"
+	"float fov" [49.134342077604479]
+#Camera "environment"
+
+Film "image"
+	"integer xresolution" [450]
+	"integer yresolution" [450]
+
+PixelFilter "mitchell"
+
+WorldBegin
+
+Include "materials.pbrt"
+
+Include "geometry.pbrt"
+
+# through blinds
+#LightSource "distant" "point from" [9 -4 9 ] "blackbody L" [5000 10]
+
+# inside lamps
+AttributeBegin
+Translate .951 1.94 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+AttributeBegin
+Translate -2.191 1.944 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+# extra walls
+
+AttributeBegin
+NamedMaterial "Paint - White Matt"
+# right: x = -6.5 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3 ]
+    "point P" [ -6.5 -10 -2   -6.5  10 -2   -6.5 10 7   -6.5 -10 7 ]
+# back: y = -9 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3]
+    "point P" [ -10 -9 -2   10 -9 -2  10 -9 7  -10 -9 7 ]
+AttributeEnd
+
+WorldEnd

+ 54 - 0
breakfast/f16-8b.pbrt

@@ -0,0 +1,54 @@
+# Main Scene File
+
+Integrator "sppm" "integer numiterations" [16] "float radius" [1.25]
+
+LookAt -0.623726 -7.587055 1.204726 -0.623726 -6.587055 1.204728 0.000000 -0.000002 1.000000
+
+# table view (teacups need smoothing, marble is lame)
+#LookAt 2 -2 4   1.25 0 2.5  0 0 1
+
+Camera "perspective"
+	"float fov" [49.134342077604479]
+#Camera "environment"
+
+Film "image"
+	"integer xresolution" [450]
+	"integer yresolution" [450]
+
+PixelFilter "mitchell"
+
+WorldBegin
+
+Include "materials.pbrt"
+
+Include "geometry.pbrt"
+
+# through blinds
+#LightSource "distant" "point from" [9 -4 9 ] "blackbody L" [5000 10]
+
+# inside lamps
+AttributeBegin
+Translate .951 1.94 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+AttributeBegin
+Translate -2.191 1.944 3.90
+AreaLightSource "diffuse" "blackbody L" [5000 500]
+Shape "sphere" "float radius" .1
+AttributeEnd
+
+# extra walls
+
+AttributeBegin
+NamedMaterial "Paint - White Matt"
+# right: x = -6.5 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3 ]
+    "point P" [ -6.5 -10 -2   -6.5  10 -2   -6.5 10 7   -6.5 -10 7 ]
+# back: y = -9 plane
+Shape "trianglemesh" "integer indices" [0 1 2 0 2 3]
+    "point P" [ -10 -9 -2   10 -9 -2  10 -9 7  -10 -9 7 ]
+AttributeEnd
+
+WorldEnd

+ 577 - 0
breakfast/geometry.pbrt

@@ -0,0 +1,577 @@
+# Geometry File
+
+AttributeBegin #  "Lampshade.001"
+
+Transform [0.594083070755005 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.594083070755005 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.594083070755005 0.000000000000000 0.951433181762695 1.944540739059448 3.603615760803223 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Frosted Glass"
+
+Shape "plymesh"
+	"string filename" ["geometry/Sphere_002_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Sphere_002_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Lampshade"
+
+Transform [0.594083070755005 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.594083070755005 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.594083070755005 0.000000000000000 -2.191241502761841 1.944540739059448 3.603615760803223 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Frosted Glass"
+
+Shape "plymesh"
+	"string filename" ["geometry/Sphere_001_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Sphere_001_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Venetian Blind"
+
+Transform [2.343473911285400 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.242074131965637 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 5.146959781646729 0.613234817981720 1.960030198097229 1.000000000000000]
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_006_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Table Legs"
+
+Transform [1.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 -0.642285108566284 1.903946638107300 0.224622368812561 1.000000000000000]
+
+NamedMaterial "Paint - Black Satin"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_007_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Teacup.002"
+
+Transform [0.960156738758087 -0.279462069272995 0.000000000000000 0.000000000000000 0.279462069272995 0.960156738758087 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 -2.945224523544312 1.932038784027100 0.916272580623627 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_003_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_003_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Spoon.002"
+
+Transform [0.035585343837738 -0.028537899255753 0.000000001224165 0.000000000000000 0.028350833803415 0.035352084785700 -0.001094039995223 0.000000000000000 0.000684458995238 0.000853487581480 0.045316010713577 0.000000000000000 -3.022971153259277 2.051548004150391 0.937468111515045 1.000000000000000]
+
+NamedMaterial "Material.005"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_005_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Saucer.002"
+
+Transform [0.626249969005585 0.780904650688171 0.000000009331852 0.000000000000000 -0.780904650688171 0.626249969005585 -0.000000011636386 0.000000000000000 0.000000000000000 0.000000000000000 1.001000046730042 0.000000000000000 -2.945224523544312 1.932038664817810 0.915794432163239 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Material.002"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_006_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_006_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_006_0000_m002.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Teacup.001"
+
+Transform [0.960156738758087 -0.279462069272995 0.000000000000000 0.000000000000000 0.279462069272995 0.960156738758087 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 -1.041076183319092 1.123968362808228 0.916766405105591 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_002_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_002_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Saucer.001"
+
+Transform [0.626250028610229 0.780904591083527 -0.000000055991109 0.000000000000000 -0.780904769897461 0.626250028610229 0.000000069818313 0.000000000000000 0.000000000000000 0.000000000000000 1.001000046730042 0.000000000000000 -1.041076302528381 1.123968482017517 0.916288375854492 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Material.002"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_000_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_000_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_000_0000_m002.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Spoon.001"
+
+Transform [0.035585347563028 -0.028537899255753 -0.000000002487675 0.000000000000000 0.028350839391351 0.035352084785700 -0.001094043022022 0.000000000000000 0.000684459053446 0.000853487523273 0.045316010713577 0.000000000000000 -1.118822932243347 1.243477940559387 0.937962055206299 1.000000000000000]
+
+NamedMaterial "Material.005"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_004_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Teapot"
+
+Transform [0.127103701233864 -0.095074273645878 0.000000000000000 0.000000000000000 0.095074273645878 0.127103701233864 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.158727645874023 0.000000000000000 -0.769057631492615 1.948741316795349 0.896298587322235 1.000000000000000]
+
+NamedMaterial "Ceramic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Teapot_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair 05"
+
+Transform [-0.000001026775749 1.352859258651733 0.000000000000000 0.000000000000000 -1.352859258651733 -0.000001026775749 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -4.177764415740967 1.992996692657471 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_006_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs.005"
+
+Transform [-0.000001026775635 1.352859139442444 0.000000000000001 0.000000000000000 -1.352859258651733 -0.000001071740485 -0.000000006818131 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -3.780874729156494 1.992996811866760 -0.177929341793060 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_005_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_005_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Area Light"
+
+#Transform [5.661653995513916 0.000000000000000 0.000000000000000 0.000000000000000 #0.000000000000000 3.000000000000000 0.000000000000000 0.000000000000000 #0.000000000000000 0.000000000000000 3.000000000000000 0.000000000000000 #-0.596747159957886 1.831382989883423 7.024957656860352 1.000000000000000]
+
+#AreaLightSource "diffuse" #"color L" [2 2 2]
+#  "blackbody L" [5500 .25]
+ReverseOrientation
+
+#Shape "plymesh"
+#	"string filename" #["geometry/Plane_001_0000_m000.ply"]
+
+# Shape "disk" "float height" 7 "float radius" 4
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair 04"
+
+Transform [-1.352859258651733 0.000002053551498 0.000000000000000 0.000000000000000 -0.000002053551498 -1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -1.835080862045288 -0.233733206987381 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_005_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs.004"
+
+Transform [-1.352859258651733 0.000002041209427 0.000000013636263 0.000000000000000 -0.000002053551498 -1.352859258651733 -0.000000000000018 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -1.835080385208130 0.163156718015671 -0.177929341793060 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_004_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_004_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair 03"
+
+Transform [-1.352859258651733 0.000002053551498 0.000000000000000 0.000000000000000 -0.000002053551498 -1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.601839542388916 -0.233733206987381 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_004_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs.003"
+
+Transform [-1.352859258651733 0.000002053551498 0.000000000000000 0.000000000000000 -0.000002053551498 -1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.601839959621429 0.163156718015671 -0.177929326891899 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_003_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_003_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair 02"
+
+Transform [-0.000000865502329 -1.352859258651733 0.000000000000000 0.000000000000000 1.352859258651733 -0.000000865502329 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 2.946556568145752 1.993371486663818 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_003_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs.002"
+
+Transform [-0.000000865502273 -1.352859139442444 0.000000000000004 0.000000000000000 1.352859139442444 -0.000000967373808 -0.000000006818131 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 2.549666643142700 1.993371605873108 -0.177929341793060 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_002_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_002_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair 01"
+
+Transform [1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -1.886224508285522 3.869214057922363 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_002_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs.001"
+
+Transform [1.352859139442444 0.000000293490530 -0.000000015476948 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 -1.886224508285522 3.472323894500732 -0.177929341793060 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_000_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_000_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Table Top"
+
+Transform [1.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 -0.667227387428284 1.915051579475403 0.788318514823914 1.000000000000000]
+
+NamedMaterial "White Marble"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_001_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Walls & Floor"
+
+Transform [1.029811620712280 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 -0.586363077163696 -0.048330441117287 -1.419957637786865 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Floor Tiles"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Paint - White Matt"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair06"
+
+Transform [1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.626897633075714 3.869214057922363 -0.191934317350388 1.000000000000000]
+
+NamedMaterial "White Plastic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cube_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Chair - Legs 006"
+
+Transform [1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.352859258651733 0.000000000000000 0.626897633075714 3.472324132919312 -0.177929356694221 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Chrome"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_001_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Black Rubber"
+
+Shape "plymesh"
+	"string filename" ["geometry/Cylinder_001_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Pitcher"
+
+Transform [-0.212506517767906 -0.124359227716923 0.000000000000000 0.000000000000000 0.124359227716923 -0.212506517767906 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.273847609758377 0.000000000000000 -0.190780073404312 2.390382289886475 0.898893952369690 1.000000000000000]
+
+NamedMaterial "Ceramic"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_002_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Teacup 003"
+
+Transform [-0.429397642612457 0.903115510940552 0.000000000000000 0.000000000000000 -0.903115510940552 -0.429397642612457 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 1.000000000000000 0.000000000000000 1.614856362342834 0.992693066596985 0.916766405105591 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_013_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_013_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Spoon 003"
+
+Transform [-0.002331132069230 0.045555394142866 -0.000000000325673 0.000000000000000 -0.045256782323122 -0.002315851394087 -0.001094039296731 0.000000000000000 -0.001092611229979 -0.000055911106756 0.045316010713577 0.000000000000000 1.577243328094482 0.855170786380768 0.937961995601654 1.000000000000000]
+
+NamedMaterial "Material.005"
+
+Shape "plymesh"
+	"string filename" ["geometry/Plane_003_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Saucer 003"
+
+Transform [-0.999691963195801 -0.051156841218472 0.000000029832140 0.000000000000000 0.051156841218472 -0.999691963195801 0.000000022374079 0.000000000000000 0.000000000000000 0.000000000000000 1.001000046730042 0.000000000000000 1.614856362342834 0.992693066596985 0.916288316249847 1.000000000000000]
+
+AttributeBegin #  ""
+
+NamedMaterial "Material.002"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_005_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Gold Paint"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_005_0000_m001.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  ""
+
+NamedMaterial "Ceramic.001"
+
+Shape "plymesh"
+	"string filename" ["geometry/Circle_005_0000_m002.ply"]
+
+AttributeEnd # ""
+
+AttributeEnd # ""
+
+AttributeBegin #  "Wall Canvas "
+
+Transform [-3.847963809967041 -0.000005840955964 0.000000000000000 0.000000000000000 0.000005840955964 -3.847963809967041 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 3.847963809967041 0.000000000000000 -0.621391296386719 4.315586090087891 4.023087024688721 1.000000000000000]
+
+NamedMaterial "Artwork"
+
+Shape "plymesh"
+	"string filename" ["geometry/Canvas_-_Dry_Paint_Smudge_0000_m000.ply"]
+
+AttributeEnd # ""
+
+AttributeBegin #  "Skirting"
+
+Transform [-0.659938752651215 -0.000000687060322 0.000000000000000 0.000000000000000 0.000000073091620 -0.070206344127655 0.000000000000000 0.000000000000000 0.000000000000000 0.000000000000000 0.070206344127655 0.000000000000000 -0.544918537139893 4.516851425170898 -1.281282067298889 1.000000000000000]
+
+NamedMaterial "Paint - White Gloss"
+
+Shape "plymesh"
+	"string filename" ["geometry/Mesh_024_0000_m000.ply"]
+
+AttributeEnd # ""

BIN
breakfast/geometry/Canvas_-_Dry_Paint_Smudge_0000_m000.ply


BIN
breakfast/geometry/Circle_000_0000_m000.ply


BIN
breakfast/geometry/Circle_000_0000_m001.ply


BIN
breakfast/geometry/Circle_000_0000_m002.ply


BIN
breakfast/geometry/Circle_002_0000_m000.ply


BIN
breakfast/geometry/Circle_002_0000_m001.ply


BIN
breakfast/geometry/Circle_003_0000_m000.ply


BIN
breakfast/geometry/Circle_003_0000_m001.ply


+ 0 - 0
breakfast/geometry/Circle_005_0000_m000.ply


Some files were not shown because too many files changed in this diff