Commit Graph

385 Commits (b8480a3d6087afdad8cd25b970c9a8d33339600a)

Author SHA1 Message Date
Wenzel Jakob 2b7ed93923 documentation updates 2011-08-19 06:13:48 +02:00
Wenzel Jakob faefb39147 python-related cleanups 2011-08-18 19:57:11 -04:00
Wenzel Jakob e86dbea5d5 documentation updates 2011-08-17 15:02:24 -04:00
Wenzel Jakob e7225da4ca python layer improvements 2011-08-17 05:10:16 -04:00
Wenzel Jakob 5c16310852 merge 2011-08-16 21:33:37 -04:00
Wenzel Jakob e830ee1be9 switched the Float keyword from a define to a typedef 2011-08-16 20:49:02 -04:00
Wenzel Jakob 8019a53716 renamed some old function prefixes 2011-08-16 20:37:47 -04:00
Wenzel Jakob 30f000acfa removed a few useless consts 2011-08-16 13:11:03 -04:00
Wenzel Jakob fb8200d41b forgotten line 2011-08-15 15:52:35 -04:00
Wenzel Jakob 42c882d43f nicer implementation of the Properties class based on boost::variant; added various python-related improvements 2011-08-15 14:38:01 -04:00
Wenzel Jakob bdf44fc85b python improvements 2011-08-14 23:56:47 -04:00
Wenzel Jakob 359045517f matrix support 2011-08-14 22:43:47 -04:00
Wenzel Jakob 9bd5619750 linux compilation fixes for GCC 4.5 2011-08-13 20:41:19 -04:00
Wenzel Jakob a0b73a71e9 Python: vector and framework initialization support 2011-08-13 15:46:49 -04:00
Wenzel Jakob 73dfd56677 renamed qtgui to mtsgui for consistency 2011-08-07 21:01:40 -04:00
Wenzel Jakob 73dc3f897a started working on chkms.cpp 2011-08-07 02:54:37 -04:00
Wenzel Jakob 5b735f362d sunsky meta-plugin 2011-07-28 03:18:17 +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 1141eb87e3 port to boost::fileystem v3, some adjustments to the sky luminaire 2011-07-26 21:05:43 +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 1b7b8a6d74 nice modulo function, rearranged BSDF interface 2011-07-19 20:01:48 +02:00
Wenzel Jakob dbfca082b3 added box-muller sampling; applied Marios' HK serialization bugfix 2011-07-19 18:47:55 +02:00
Wenzel Jakob a5d3024a39 various cleanups 2011-07-17 15:20:55 +02:00
Wenzel Jakob 983fff0fcc win32 compilation fix 2011-07-16 16:12:14 -07: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 17eb2166f0 documentation updates, fixed for many typos, fixed the bump map model 2011-07-15 18:37:48 +02:00
Wenzel Jakob 4871d6793a various shader-related improvements 2011-07-12 01:24:58 +02:00
Wenzel Jakob 1debcf3c0b partially working implementation of the rough diffuse model, added a class for representing cubic splines 2011-07-11 14:17:40 +02:00
Wenzel Jakob 873fe06277 finished the roughdiffuse model, fixed a handedness switch in Transform::lookAt 2011-07-11 01:34:17 +02:00
Wenzel Jakob a13583db34 done with the smooth conductor, started working on the rough dielectric 2011-07-07 03:07:32 +02:00
Wenzel Jakob 5c8201d764 further spectrum-related cleanups 2011-07-06 17:52:02 +02:00
Wenzel Jakob c552a79902 did a pass over the spectral rendering support; ported some RGB->Spectrum conversion code from PBRT 2011-07-06 12:50:38 +02:00
Wenzel Jakob 1dc0193f68 spectral rendering improvements, added back further documentation chapters 2011-07-05 18:50:17 +02:00
Wenzel Jakob 4a6d69df32 documentation updates, the chi-square test now also handles delta components, addes support for loading interpolated color spectra from disk 2011-07-05 13:24:22 +02:00
Wenzel Jakob 626794b94a major redesign of the BSDF API 2011-07-04 20:13:36 +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 677ef502dd fully texturable transmittance, reflectance, and roughness in the rough glass model 2011-06-28 11:09:13 +02:00
Wenzel Jakob d40de22c32 chi-square test cleanups 2011-06-25 00:33:30 +02:00
Wenzel Jakob 35d68c19ba fixed the rough glass model sampling code 2011-06-23 23:04:21 +02:00
Wenzel Jakob d0ffa69c9e various cosmetic changes involving dielectric materials, still debugging roughglass.. 2011-06-23 19:41:29 +02:00
Wenzel Jakob 44a928f1e5 chi-square test robustness improvements 2011-06-23 04:23:07 +02:00
Wenzel Jakob a5364d02f1 improved per-component BSDF chi-square test 2011-06-23 01:43:39 +02:00
Wenzel Jakob 5a40118a44 added a chi-square test for validating BSDF models 2011-06-23 01:08:23 +02:00
Wenzel Jakob 41bb3037b1 fixed a statistics counter bug on win64 2011-06-01 23:23:36 +02:00
Wenzel Jakob dd7ef85f17 gizmo removal 2011-05-30 12:17:46 +02:00
Wenzel Jakob b203e2079b removed many win64 compilation warnings 2011-04-30 12:54:56 -07:00
Wenzel Jakob ebd70aede4 bugfix for a pixel traversal issue reported by Marios 2011-04-28 18:14:21 +02:00
Wenzel Jakob 9cefc6ea97 support for custom float/spectrum parameters 2011-04-28 01:48:43 +02:00
Wenzel Jakob 24976234b5 direction interpolation tweaks, cleaned up the gridvolume step size determination 2011-04-26 19:14:54 +02:00
Wenzel Jakob 1eabd9ce9a use a 3x3 eigendecomposition in gridvolume::lookupVector() 2011-04-26 16:48:24 +02:00
Wenzel Jakob 2d193b8b4f support for writing JPEG files, small volumetric path tracer tweaks 2011-04-24 12:44:18 +02:00
Wenzel Jakob c511567250 partial merge with the -ctrewrite branch 2011-04-21 01:12:08 +02:00
Wenzel Jakob 9afac73a70 merge 2011-04-15 12:12:52 +02:00
Wenzel Jakob a98a1928ff OSX build fixes 2011-04-15 02:53:06 +02:00
Wenzel Jakob 09911c03c7 .. and one more! 2011-04-14 21:23:46 +02:00
Wenzel Jakob f86674eb1f switched to a structure tensor for interpolating directions in a medium 2011-04-14 19:45:48 +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 d3ad21f0da chi-square test on the sphere, improved microflake code 2011-04-14 02:46:01 +02:00
Wenzel Jakob 9aa5c13daa cleaned up brent solver 2011-04-13 02:21:21 +02:00
Wenzel Jakob 9baca24e5e microflake sigma-t function 2011-04-12 21:38:44 +02:00
Wenzel Jakob a0d288758b integrated cubature code into Mitsuba 2011-04-12 10:48:34 +02:00
Wenzel Jakob 5a0529c389 OSX build fixes 2011-04-11 11:04:33 +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 d5890fc4d0 copied caching volume data source from the CT project 2011-04-05 12:03:48 +02:00
Wenzel Jakob 54c80f42d4 OSX compilation bugs 2011-04-05 01:53:32 +02:00
Wenzel Jakob e345990242 miscellaneous cleanups 2011-04-05 00:30:59 +02:00
Wenzel Jakob a646132c45 cleanups to the grid data source 2011-04-03 14:42:10 +02:00
Wenzel Jakob 77bcff3550 better medium integration + a two-sided BRDF adapter 2011-03-29 23:47:20 +02:00
Wenzel Jakob d08a351a6c better OpenMP integration 2011-03-21 14:32:05 +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 ab93b94ac6 more accurate parallelized photon gathering steps 2011-03-14 17:31:36 +01:00
Wenzel Jakob d1a982d358 various cleanups 2011-03-12 22:59:37 +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 22a1a37cf0 initial commit with accumulated changes of the participating medium rewrite 2011-03-08 20:23:17 +01:00
Wenzel Jakob d2a0d96f95 OpenMP initialization code 2011-03-04 00:17:43 +01:00
Wenzel Jakob dc801e7d6c a few win32-related compilation fixes 2011-03-01 16:13:18 +01:00
Wenzel Jakob 75462c11d2 merge 2011-02-28 14:10:52 +01:00
Wenzel Jakob 9efd7f785f add squaredDistanceTo() methods to AABB 2011-02-28 14:03:07 +01:00
Wenzel Jakob 967b12960d a few documentation-related cleanups 2011-02-22 00:40:04 +01:00
Wenzel Jakob 04816a4c82 reinterpret_cast is needed 2011-02-16 18:11:21 +01:00
Wenzel Jakob c662679854 another atomic bugfix 2011-02-16 18:04:16 +01:00
Wenzel Jakob 9ded600b45 a few more atomic operations 2011-02-16 13:46:52 +01:00
Wenzel Jakob 16f2454388 atomics bugfix for win32 2011-02-15 16:01:55 +01:00
Wenzel Jakob f43f278a6b AABB bugfix 2011-02-15 15:36:12 +01:00
Wenzel Jakob f81264cd04 win32 build fixes 2011-02-15 15:30:48 +01:00
Wenzel Jakob f4638907bd minor AABB change 2011-02-14 20:27:36 +01:00
Wenzel Jakob f997674b48 minor kd-tree API change 2011-02-14 18:36:41 +01:00
Wenzel Jakob 3e146b0006 bugfix to the dense matrix class 2011-02-11 17:42:44 +01:00
Wenzel Jakob 526467da0e various minor improvements 2011-02-11 16:46:57 +01:00
Wenzel Jakob a1da52f589 atomic FP addition 2011-02-10 17:16:36 +01:00
Wenzel Jakob 33e4108319 export node type via a typedef 2011-02-10 14:05:53 +01:00
Wenzel Jakob e6a8bd5417 two slightly modified search interfaces 2011-02-10 13:58:50 +01:00
Wenzel Jakob 1150063534 added copy constructors to the matrix class 2011-02-10 12:08:46 +01:00
Wenzel Jakob bcdc831b8d added an assignment operator to the matrix class 2011-02-10 11:53:41 +01:00
Wenzel Jakob 0516aacfe2 added left-balanced kd-tree construction as another testcase 2011-02-09 02:13:52 +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 4396a4618d naming conventions 2011-02-04 18:15:11 +01:00
Wenzel Jakob 11bf7be59f column and row access 2011-02-04 18:08:53 +01:00
Wenzel Jakob 6f5f0c11d2 matrix scalar division 2011-02-04 17:15:47 +01:00
Wenzel Jakob 8ea4716dd8 fixed a typo 2011-02-04 12:20:22 +01:00
Wenzel Jakob 4ec8a1dd81 for convenience: support matrix-vector multiplication directly in the dense matrix classes 2011-02-03 16:37:52 +01:00
Wenzel Jakob 806e9b1733 missed an obvious optimization 2011-02-03 15:25:22 +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 07bc3a23fe Scheduler: ability to return the number of local workers 2011-01-12 02:07:34 +01:00
Wenzel Jakob 683c5e463d worker priority chooser UI 2010-12-01 22:14:28 +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 20f3b7e0dc heterogeneous medium: don't require an orientation field 2010-12-01 01:27:33 +01:00
Wenzel Jakob c2d7903f54 much nicer FP exception system 2010-12-01 00:46:06 +01:00
Wenzel Jakob 052f5f0bb8 flake model bugfixes 2010-11-30 21:56:21 +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 5f924f5085 get rid of secure SCL warnings 2010-11-21 12:12:27 -08:00
Wenzel Jakob 5bb3812861 moved dependencies out of the main repository, switch to boost 1.44 2010-11-20 07:30:50 -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 aaa9fe74f5 more work on animation support 2010-11-16 01:00:37 +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 81982c8932 MtsBlend: refresh feature 2010-11-12 15:43:07 +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 bd69a0fb0b added a basic quaternion data structure 2010-11-12 14:16:47 +01:00
Wenzel Jakob 701af0aa4b kd-tree generalizations 2010-11-09 15:35:27 +01:00
Wenzel Jakob fee7a12934 Make the AABB class more general 2010-11-09 14:45:12 +01:00
Wenzel Jakob f87a6a78a2 renamed isnan function 2010-11-04 23:04:40 +01:00
Wenzel Jakob cff0d96f09 applied Edgar's patch (#20) 2010-11-04 22:56:18 +01:00
Wenzel Jakob 41efe48e01 with the fixed ray epsilon issue, sphere intersections can be switched back to single precision 2010-11-03 22:14:26 +01:00
Wenzel Jakob af27507674 switched object reference counting to atomics 2010-11-01 23:48:28 +01:00
Wenzel Jakob 0013e696f7 fixed some accuracy issues 2010-10-24 14:14:12 +02:00
Wenzel Jakob 1fe416408f env map bugfix, cleanups 2010-10-22 19:49:47 +02:00
Wenzel Jakob 10abd101f3 support GLUT-style viewer applications 2010-10-21 23:53:40 +02:00
Wenzel Jakob e8d6be6259 further win64 compilation fixes 2010-10-19 21:15:57 +02:00
Wenzel Jakob 36c341f1a7 fixed various win64 compilation problems 2010-10-19 21:04:47 +02:00
Wenzel Jakob d41876fc4f windows compilation fixes, part 2 2010-10-18 16:50:16 -07:00
Wenzel Jakob d4d34dfd0f windows compilation fixes 2010-10-18 16:44:54 -07: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 2006538af3 forgot to add the atomics header file 2010-10-18 16:15:11 +02:00
Wenzel Jakob fbfe3e395d the octree-class is now completely lock-free (using atomic exchange operations) 2010-10-16 14:10:10 +02:00
Wenzel Jakob 2db91b43f9 scale ray differentials to increase texture sharpness when rendering with multiple samples (idea from PBRTv2) 2010-10-16 12:46:36 +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 5feb7753d8 collect some more statistics, code for fitting SAH cost constants to empirical measurements 2010-10-12 23:47:15 +02:00
Wenzel Jakob ac4fa10d5d nicer statistics 2010-10-11 19:48:52 +02:00
Wenzel Jakob edadfe8096 better statistics, more work on parallelization 2010-10-10 01:09:18 +02:00
Wenzel Jakob 05266a5033 merge with default branch 2010-10-07 18:57:44 +02:00
Wenzel Jakob effb3ebfb0 work on the min-max binning split method 2010-10-07 18:38:06 +02:00
Wenzel Jakob 8351aa5b02 extended the remaining medium classes to handle compound stencil geometry 2010-10-06 21:56:36 +02:00
Wenzel Jakob 5da46517da the initial clustering step works 2010-10-06 02:27:20 +02:00
Wenzel Jakob d57d319048 min-max binning core implementation 2010-10-05 22:49:57 +02:00
Wenzel Jakob 80e4b35c22 merged with main branch 2010-10-05 07:35:24 +02:00
Wenzel Jakob 082facab36 union cast 2010-10-05 07:34:55 +02:00
Wenzel Jakob 4bb5e8c3d6 vertex color and PLY loading support 2010-09-28 19:47:16 +02:00
Wenzel Jakob e2dfe9a330 some OSX build fixes, missing virtual destructors 2010-09-20 22:19:41 +02:00
Wenzel Jakob 686030ef7e feature to track down use of unitialized values (initialize vectors etc. with NaNs if a compile-time flag is set) 2010-09-20 20:50:30 +02:00
Wenzel Jakob 0bba70a89d work on the documentation 2010-09-19 12:07:34 +02:00
Wenzel Jakob 46dcdc4100 work on sutherland-hodgman, allow to set log level to errors only 2010-09-16 02:30:47 +02:00
Wenzel Jakob 7a18e43123 more source-level documentation 2010-09-15 21:15:42 +02:00
Wenzel Jakob 768bacccdc windows compilation bugfixes, removed many warnings 2010-09-14 15:53:11 -07:00
Wenzel Jakob a49d5bf648 portable directory traversal 2010-09-14 15:23:23 +02:00
Wenzel Jakob 5253cb594c cleaned up some forward declarations 2010-09-14 14:28:25 +02:00
Wenzel Jakob fe4b174e52 more cleanups 2010-09-14 00:13:27 +02:00
Wenzel Jakob 943aca4016 faster sutherland-hodgman iteration, added missing partial specialization for integer division involving vectors 2010-09-13 22:36:51 +02:00
Wenzel Jakob a5035b6b10 partial rewrite part 2, the project now fully compiles again 2010-09-13 21:19:04 +02:00
Wenzel Jakob 8e7fdb48dc Partial rewrite, part 1. Does not fully compile yet
- Switched vectors classes to templates
- Moved most path handling over to boost_filesystem
- Nicer include file structure
- Better documentation for libcore
- Doxygen support
- Vector/Point/etc. data structures are now unitialized by default!
2010-09-10 03:14:48 +02:00
Wenzel Jakob 92a627986f better path handling 2010-09-05 21:51:30 +02:00
Wenzel Jakob 8486931b30 Nicer testcase framework, eigendecomposition support 2010-09-05 21:17:35 +02:00
Wenzel Jakob 0f1158c678 added copyright headers to all relevant source files 2010-09-02 23:41:20 +02:00
Wenzel Jakob 995810faaf do sphere & cylinder intersections in double precision 2010-09-02 22:32:33 +02:00
Wenzel Jakob 1c60e7368d testcase support -- see 'test_samplers.cpp' for an example 2010-09-02 17:57:04 +02:00
Wenzel Jakob 02c47237a7 vast collada importer improvements, incomplete bmp loading support 2010-08-31 00:23:34 +02:00
Wenzel Jakob 2650e9f5cb transparent compression support 2010-08-30 21:40:32 +02:00
Wenzel Jakob b49340d02a win32 importer bugfixes 2010-08-26 17:05:13 +02:00
Wenzel Jakob 378833cefd mtsimport crash bugfix 2010-08-24 11:19:13 +02:00
Wenzel Jakob 5645cdf360 debian build process update 2010-08-23 22:03:34 +00:00
Wenzel Jakob e3ea4e9a94 Bitmap: int->size_t 2010-08-23 12:14:31 +02:00
Wenzel Jakob bd9ff72f4d limited TGA loading support, better OBJ material import 2010-08-22 23:46:49 +02:00
Wenzel Jakob b18761dfcc bugfixes to mtsutil, more parallelization documentation 2010-08-17 01:27:08 +02:00
Wenzel Jakob ab2e6b4ca7 Phong now takes a separate color and reflectance argument
This change will soon be implemented with the remaining materials
2010-08-15 15:24:30 +02:00
Wenzel Jakob be13518cc4 new composite material, which represents a linear blend of BSDFs 2010-08-15 12:29:18 +02:00
Wenzel Jakob 08b1861c4d Initial import of Mitsuba version 0.1.1
Unfortunately, no history for the existing files could be imported from
the previous SVN repository (it is mixed with as-of-yet unpublished research).
2010-08-09 19:38:37 +02:00