Commit Graph

315 Commits (scons-python3)

Author SHA1 Message Date
Wenzel Jakob 13ab236e7c kd-tree & photon map cleanups 2011-08-28 13:28:18 -04:00
Wenzel Jakob 749d30ab7f implemented a photon map performance testcase 2011-08-28 03:09:35 -04:00
Wenzel Jakob 94fd78d0a5 done with the python integration (for now) 2011-08-21 18:54:13 -04:00
Wenzel Jakob 482ca30bfc documentation updates 2011-08-20 17:49:20 -04:00
Wenzel Jakob 9cf5f001e7 python binding improvements 2011-08-20 17:09:59 -04:00
Wenzel Jakob d0e9e2d0ac documentation updates 2011-08-19 13:53:26 -04:00
Wenzel Jakob ec70443156 documentation updates 2011-08-19 12:05:24 -04:00
Wenzel Jakob a4439bc7a7 documentation updates 2011-08-19 03:24:40 -04:00
Wenzel Jakob b5307c3163 get rid of a few Intel C++ compiler warnings, pt 2 2011-08-16 14:40:05 -04:00
Wenzel Jakob eda308eaf2 get rid of a few Intel C++ compiler warnings 2011-08-16 14:38:37 -04:00
Wenzel Jakob 80d76ae867 added a coating GLSL shader, some name refactoring 2011-08-07 01:37:24 -04:00
Wenzel Jakob 0ae25c4ea2 switched to a more consistent API for the two BSDF::sample() methods -- they now both return the importance weight 2011-08-05 11:44:03 -04:00
Wenzel Jakob 8e448eaf6c added an environment luminaire, changed the sky.cpp implementation so that it forwards to envmap.cpp 2011-07-28 02:52:31 +02:00
Wenzel Jakob 7305768f61 fixed some over-zealous refactoring 2011-07-27 18:41:25 +02:00
Wenzel Jakob bd3291fad0 reverting back to Boost::Filesystem v2, since not all platforms provide v3 yet 2011-07-27 17:11:57 +02:00
Wenzel Jakob b657152081 cleanup of the medium & dipole data input interface 2011-07-22 01:30:14 +02:00
Wenzel Jakob 33a6fd58c0 sky luminaire by Tom Kazimiers, composite light sources, rayleigh scattering in media 2011-07-21 17:42:44 +02:00
Wenzel Jakob c84be3969a switched order of initialization accordingly 2011-07-19 20:04:09 +02:00
Wenzel Jakob 1b7b8a6d74 nice modulo function, rearranged BSDF interface 2011-07-19 20:01:48 +02:00
Wenzel Jakob 0230c6fbe7 switched to a new BSDFQueryRecord constructor, which encapsulates the assumption that a sampler instance is always available when sampling the model 2011-07-17 17:18:58 +02:00
Wenzel Jakob ef2c813b10 Added an XSLT-based scene 'upgrade' tool to handle content from old versions of Mitsuba.
Some of the documentation was improved, and there are now example bump map
renderings.
2011-07-17 00:28:28 +02:00
Wenzel Jakob 54cb9b6fcd merge 2011-07-15 10:16:15 +02:00
Wenzel Jakob 5f27a96432 Patch by Tom Kazimiers: automatically cancel photon gathering if few or no photons are being generated 2011-07-15 10:15:57 +02:00
Wenzel Jakob ce9ad8515d BSDFs now flag spatially varying components 2011-07-13 17:40:26 +02:00
Wenzel Jakob d4818ae43d back-ported the phong model 2011-07-12 11:53:36 +02:00
Wenzel Jakob bf9dc03fd8 fancy roughplastic sampling strategy, just before cleanup 2011-07-11 22:36:10 +02:00
Wenzel Jakob 1fe405ec23 OSX build fixes 2011-07-08 16:17:11 +02:00
Wenzel Jakob 736a8e6866 improved interface for ensuring energy conservation 2011-07-07 17:49:21 +02:00
Wenzel Jakob 5c8201d764 further spectrum-related cleanups 2011-07-06 17:52:02 +02:00
Wenzel Jakob 626794b94a major redesign of the BSDF API 2011-07-04 20:13:36 +02:00
Wenzel Jakob 5cc7e40df2 started a new branch for a material development cycle. new features: glass preview in the VPL renderer, more documentation 2011-07-03 02:46:09 +02:00
Wenzel Jakob cb3dcdb377 exactly sample the fresnel term in roughglass.cpp, added a directory for the bidirectional library (this is only meant to contain a few backported components for now) 2011-07-01 11:35:49 +02:00
Wenzel Jakob 06cc8005f0 rough glass generalization; bugfixes 2011-07-01 01:48:33 +02:00
Wenzel Jakob c34ad9f58a slight tweaks to the BSDF API, components now specify whether they are front or back-facing 2011-06-23 05:31:46 +02:00
Wenzel Jakob 5a40118a44 added a chi-square test for validating BSDF models 2011-06-23 01:08:23 +02:00
Wenzel Jakob 994836207f added basic support for hair scattering models 2011-06-21 10:58:05 +02:00
Steve Marschner 60f406efbd initial hair shading rough framework 2011-06-20 16:30:21 +02:00
Wenzel Jakob ad02615d34 bugfix in volpath regarding index-matched participating media. improved the handling of the strictNormals parameter in all path tracers 2011-06-07 21:31:06 +02:00
Wenzel Jakob 47b4deec9c fixed a subtle bug in the simpson integration method in heterogeneous.cpp; added support for querying the maximum value in density data volumes 2011-06-04 00:25:07 +02:00
Wenzel Jakob c1c222eb94 icl fixes 2011-06-01 11:53:20 -07:00
Wenzel Jakob ffdbc6f867 camera-related cleanups, dolly support in the GUI 2011-05-30 20:12:20 +02:00
Wenzel Jakob abeb41e75c support for stochastic transmittance functions 2011-04-27 12:01:29 +02:00
Wenzel Jakob 26e3881fce optional: strict surface normals 2011-04-24 18:42:02 +02:00
Wenzel Jakob 3e8e0bba53 VPL pruning 2011-04-24 15:24:04 +02:00
Wenzel Jakob c511567250 partial merge with the -ctrewrite branch 2011-04-21 01:12:08 +02:00
Wenzel Jakob 70c762691d anisotropic medium rendering integrated into heterogeneous.cpp 2011-04-14 15:44:13 +02:00
Wenzel Jakob 10fad3b341 header changes 2011-04-14 15:15:59 +02:00
Wenzel Jakob 9f58f35623 microflake bugfixes 2011-04-14 14:19:08 +02:00
Wenzel Jakob f807062c8f cleanups 2011-04-11 07:12:14 +02:00
Wenzel Jakob d612e23971 minor improvements 2011-04-10 22:07:08 +02:00
Wenzel Jakob b45a27a6cb exporter tweaks 2011-04-07 17:55:41 +02:00
Wenzel Jakob 4bf47e36b2 bug-huting 2011-04-06 02:07:04 +02:00
Wenzel Jakob e345990242 miscellaneous cleanups 2011-04-05 00:30:59 +02:00
Wenzel Jakob cd8f6b3dcb ported the heterogeneous volume to the new system 2011-04-04 12:01:14 +02:00
Wenzel Jakob 8933987ebf volumetric path tracer fixed, started working on the heterogeneous medium 2011-04-03 23:41:51 +02:00
Wenzel Jakob 3e316e6efd instancing support in the realtine preview 2011-03-31 00:44:20 +02:00
Wenzel Jakob 77bcff3550 better medium integration + a two-sided BRDF adapter 2011-03-29 23:47:20 +02:00
Wenzel Jakob 6ac68886b1 plugin bugfixes 2011-03-28 01:52:00 +02:00
Wenzel Jakob d08a351a6c better OpenMP integration 2011-03-21 14:32:05 +01:00
Wenzel Jakob 79ff47e7b1 bugfix, started adapting the heterogeneous medium 2011-03-16 19:12:55 +01:00
Wenzel Jakob 8e9b0d5d21 a few more medium-related bugfixes 2011-03-15 20:08:01 +01:00
Wenzel Jakob 7405a77078 various bugfixes 2011-03-15 17:11:49 +01:00
Wenzel Jakob da246ae3a5 started an implementation of the beam radiance estimate 2011-03-15 11:54:24 +01:00
Wenzel Jakob ece6baf6ce further photon mapper fixes 2011-03-14 19:12:14 +01:00
Wenzel Jakob 5ab1f51959 improved particle tracer 2011-03-14 18:52:30 +01:00
Wenzel Jakob ab93b94ac6 more accurate parallelized photon gathering steps 2011-03-14 17:31:36 +01:00
Wenzel Jakob 852d232cae missed photon files 2011-03-14 14:58:58 +01:00
Wenzel Jakob d1a982d358 various cleanups 2011-03-12 22:59:37 +01:00
Wenzel Jakob 89e7b71df1 bugfixes 2011-03-11 20:58:58 +01:00
Wenzel Jakob 03c67c1ab3 ported the homogeneous medium to the new system 2011-03-10 20:12:05 +01:00
Wenzel Jakob cc25c2175a everything finally compiles 2011-03-10 03:26:15 +01:00
Wenzel Jakob 62cb0f64b1 medium-related changes 2011-03-09 19:06:01 +01:00
Wenzel Jakob 02764afe0d more cleanups 2011-03-09 13:34:26 +01:00
Wenzel Jakob 9e922042c3 further tweaks 2011-03-09 10:53:41 +01:00
Wenzel Jakob 419fb7843f a few more tweaks 2011-03-09 02:33:04 +01:00
Wenzel Jakob 22a1a37cf0 initial commit with accumulated changes of the participating medium rewrite 2011-03-08 20:23:17 +01:00
Wenzel Jakob 9c1c16ab87 added a point kd-tree class 2011-02-09 01:32:35 +01:00
Wenzel Jakob a9efb5cd1a AABB bugfixes, generic kd-tree 2011-02-07 15:59:13 +01:00
Wenzel Jakob df553745c4 A few missing matrix methods 2011-02-03 15:14:43 +01:00
Wenzel Jakob 48ae1f3eae A batch of changes that have piled up:
- Cleaner build system organization (1 SConscript file per directory instead
  of a single huge file)
- Robustness improvements to the KD-tree construction code (now does a better
  job at handling degenerate triangles)
- Switched to an epsilon-free KD-tree traversal loop using Havran's T_{AB}^rec
  algorithm
- Generalization of the KD-tree construction code (now supports plugging in
  arbitrary tree construction heuristics)
- Addition of some utility code (LRU cache, adaptive Gauss-Lobatto
  quadrature, etc.)
- Generic dense matrix class that supports arbitrary dimensions
- Pixel traversal within image blocks now uses a space-filling curve
  ordering
- Added support for several noise functions from PBRT
- Cleanups of various top-level interfaces (Luminaires, Phase functions,
  BSDFs, Participating media, etc.)
- Robustness improvements to the participating media code (faster + now
  does a better job at dielectric boundaries)
- Added a basic tonemapping utility (can be invoked via mtsutil)
2011-02-03 09:15:25 +01:00
Wenzel Jakob 55ba3887bd moved the re-centering feature to the OBJ loader, where it makes more sense 2010-12-08 11:35:56 +01:00
Wenzel Jakob 2131a1b2d0 re-centering feature 2010-12-08 10:44:47 +01:00
Wenzel Jakob 04d26f0dae backported a bunch of serious bugfixes from the bidirectional branch 2010-12-01 11:33:11 +01:00
Wenzel Jakob 2131bdb817 initial support for computing shading normals with a specifiable angle cutoff, switched to Thuermer-Wuethrich-style smooth normal computation 2010-11-25 20:40:28 +01:00
Wenzel Jakob 94e1d825b7 miscellaneous bugfixes and improvements 2010-11-23 23:01:47 +01:00
Wenzel Jakob 7a581340ee win32 bugfixes 2010-11-22 18:24:25 +01:00
Wenzel Jakob d631da2187 miscellaneous bugfixes 2010-11-21 02:50:15 +01:00
Wenzel Jakob 87ac8b57bd generalized the XML schema 2010-11-19 14:07:14 +01:00
Wenzel Jakob 6a42b631f7 merged with main branch 2010-11-17 12:58:03 +01:00
Wenzel Jakob da6f122ccc windows compilation fix 2010-11-16 11:41:56 -08:00
Wenzel Jakob df1a3fc3ba got it to compile 2010-11-16 17:20:24 +01:00
Wenzel Jakob ceaa1907c0 miscellaneous bugfixes, animated instance 2010-11-16 14:59:52 +01:00
Wenzel Jakob c7c6d32579 more work on importing animations 2010-11-16 10:36:49 +01:00
Wenzel Jakob aaa9fe74f5 more work on animation support 2010-11-16 01:00:37 +01:00
Wenzel Jakob 02d6129df9 store imported geometry more compactly 2010-11-15 20:51:31 +01:00
Wenzel Jakob 5452a0d30b more work on importing animations 2010-11-15 17:27:42 +01:00
Wenzel Jakob 710890d894 initial support for importing animation tracks 2010-11-15 16:05:50 +01:00
Wenzel Jakob c82899de89 expose texture wrapping 2010-11-14 14:27:32 +01:00
Wenzel Jakob e394456621 fix annoying win32 template static member linkage errors 2010-11-12 19:35:15 -08:00
Wenzel Jakob f2f4f94bdf changed dimension functions to constants to fix compilation on windows 2010-11-13 02:14:22 +01:00
Wenzel Jakob a5b07f06ab matrices and linear transformations are now stored on the stack 2010-11-12 15:09:37 +01:00
Wenzel Jakob 37d06c5623 instancing works 2010-11-12 11:03:43 +01:00
Wenzel Jakob 57d13dfe7b partial support for geometry instancing 2010-11-12 03:15:32 +01:00
Wenzel Jakob 2a53d3240f changed the way that luminaire importance sampling works -- now, a sampling weight can be specified 2010-11-11 21:52:49 +01:00
Wenzel Jakob cd80c15814 further generalizations 2010-11-09 15:48:20 +01:00
Wenzel Jakob 701af0aa4b kd-tree generalizations 2010-11-09 15:35:27 +01:00
Wenzel Jakob 437169e4b4 support scaling and translating textures 2010-11-05 01:03:13 +01:00
Wenzel Jakob cff0d96f09 applied Edgar's patch (#20) 2010-11-04 22:56:18 +01:00
Wenzel Jakob ba5a9654d9 documentation updates, allow to specify the configuration file 2010-11-01 22:33:00 +01:00
Wenzel Jakob 7036116997 further documentation updates 2010-10-31 16:20:58 +01:00
Wenzel Jakob 6433604064 documentation updates 2010-10-31 16:06:26 +01:00
Wenzel Jakob aecd28dc8d bug-hunt, fixed some hair-shape related issues 2010-10-25 22:36:30 +02:00
Wenzel Jakob 707bb4a2ac faster+more approximate micro-flake sampling 2010-10-25 17:18:10 +02:00
Wenzel Jakob a8763c890d clipping for hair is done 2010-10-25 13:30:01 +02:00
Wenzel Jakob a3842d5e2c realtime preview: render triangle approximations of analytic shapes 2010-10-25 09:05:30 +02:00
Wenzel Jakob 90d488d3ba kd-tree visualization mode 2010-10-24 16:17:39 +02:00
Wenzel Jakob 0013e696f7 fixed some accuracy issues 2010-10-24 14:14:12 +02:00
Wenzel Jakob 0e1534e863 the hair primitive works, made shadow ray intersections faster 2010-10-24 00:22:44 +02:00
Wenzel Jakob 589398f61a hair primitive compiles again 2010-10-23 21:54:11 +02:00
Wenzel Jakob 36c341f1a7 fixed various win64 compilation problems 2010-10-19 21:04:47 +02:00
Wenzel Jakob f531af3e2d fix fast-math kd-tree building problem on windows 2010-10-19 19:19:12 +02:00
Wenzel Jakob a057677e89 windows compilation fixes, part 3 2010-10-18 17:04:47 -07:00
Wenzel Jakob d4d34dfd0f windows compilation fixes 2010-10-18 16:44:54 -07:00
Wenzel Jakob 19eb23b13f Fix bug #12 reported by Jirka Vorba (propagate named objects between included files) 2010-10-18 23:26:15 +02:00
Wenzel Jakob 69dd286edc cylinders work again 2010-10-18 22:59:07 +02:00
Wenzel Jakob e77e1096de sphere works again, initial support for coherent RT with non-tri shapes 2010-10-18 19:20:20 +02:00
Wenzel Jakob c42f31751d slimmed down the shape interface 2010-10-17 00:08:55 +02:00
Wenzel Jakob d6e0638ceb bugfixes 2010-10-16 02:03:38 +02:00
Wenzel Jakob d788010885 committed a number of accumulated architectural changes (see body for details)
- primitive clipping is now more paranoid about roundoff errors
- significantly improved the kd-tree benchmark "kdbench"
- fixed a parallelization-related bug in the kd-tree builder
- fixed some remaining floating point issues in the min-max binning code
- completely moved TriMesh over to a more compact SoA representation
- the OpenGL renderer now sends smaller packets of geometry to the GPU, which
  helps keep the operating system more responsive (NVidia drivers didn't like
  the previous behavior much).
2010-10-16 00:33:32 +02:00
Wenzel Jakob a1b8d2266d copied over coherent RT code from the previous KDTree impl. 2010-10-14 01:00:42 +02:00
Wenzel Jakob b2679e8adc allow to disable the preview 2010-10-13 23:20:20 +02:00
Wenzel Jakob 0d085fc2dc serious bugfixes to the builder 2010-10-13 22:35:15 +02:00
Wenzel Jakob 6a173cb9fd cleanups 2010-10-13 20:56:13 +02:00
Wenzel Jakob 7f4d55bdbd some bugfixes, PBRT-style traversal routine 2010-10-13 19:19:30 +02:00
Wenzel Jakob 30d7e45479 rendering using the new tree code now works 2010-10-13 12:28:09 +02:00
Wenzel Jakob 3fa45c6cb2 integration of the new kd-tree implementation (no coherent RT yet) 2010-10-13 05:15:52 +02:00
Wenzel Jakob c74924fb7a cleanups 2010-10-13 03:38:44 +02:00
Wenzel Jakob 57c329d646 preparations to support the TriAccel4 format 2010-10-13 00:28:06 +02:00
Wenzel Jakob 5feb7753d8 collect some more statistics, code for fitting SAH cost constants to empirical measurements 2010-10-12 23:47:15 +02:00
Wenzel Jakob efb75bbf7b typo 2010-10-12 17:56:27 +02:00
Wenzel Jakob 13878de3fb added a plain traversal routine, havran-style wins 2010-10-12 17:55:32 +02:00
Wenzel Jakob a5736bd8ba lots of bugfixes 2010-10-12 14:51:30 +02:00
Wenzel Jakob 5e7839b9b7 record SAH costs of the old implementation 2010-10-12 11:36:21 +02:00
Wenzel Jakob 82faa961a2 snapshot before searching for remaining traversal/building bug 2010-10-12 03:06:46 +02:00
Wenzel Jakob 76abaf1cb8 added a havran-style traversal routine 2010-10-12 02:36:05 +02:00
Wenzel Jakob 440656a875 initial generic ray intersection architecture 2010-10-12 01:10:28 +02:00
Wenzel Jakob baa41a195a cleanups 2010-10-11 21:04:05 +02:00
Wenzel Jakob 84cff419f8 build better trees 2010-10-11 14:20:20 -04:00
Wenzel Jakob ac4fa10d5d nicer statistics 2010-10-11 19:48:52 +02:00
Wenzel Jakob d09655dbe6 a few more optimizations after profiling the builder 2010-10-11 19:40:40 +02:00