Commit graph

1217 commits

Author SHA1 Message Date
pbrt4bounty
88f324c337
Fix denoise issues
This patch fix a issue using denoise because a Variance channel names exposed here: https://github.com/mmp/pbrt-v4/issues/300
2022-11-01 13:32:03 +01:00
Matt Pharr
accfbcba62 Attempt to enable compute 5.2 for NVIDIA GPU support
Issue #292.
2022-08-31 15:57:58 -07:00
Matt Pharr
d4f5a4a43f
Merge pull request #294 from shadeops/DiffuseAreaLight_nullptr_fix
Fix nullptr access reported in issue #293
2022-08-31 15:51:57 -07:00
jim price
f8643db0e4 Remove unused channelDesc variable. 2022-08-26 16:04:50 -07:00
jim price
f13448d4ea Fix nullptr access reported in issue #293 2022-08-26 12:11:49 -07:00
Matt Pharr
8f2d8527af Add optix 7.5 to github actions build test 2022-08-15 15:58:12 -07:00
Matt Pharr
94cd445df5
Merge pull request #289 from 1div0/denoiseAlpha
Corrected denoiseAlpha parameter type
2022-08-15 15:51:19 -07:00
Peter Kovář
692cc6d039 Added OptiX version control to the denoise alpha mode 2022-08-15 19:11:51 +02:00
Peter Kovář
edaa80a13f Corrected denoiseAlpha parameter type 2022-08-06 17:45:59 +02:00
Matt Pharr
3e197af29f Small fixes from book copyedits. 2022-07-17 13:52:32 -07:00
Matt Pharr
3a756e200f Remove medium samples from RaySamples used in wavefront integrator.
The previous implementation would inadvertently reuse the same sample value
for medium distance sampling when rays passed through interfaces between
different scattering media. In turn, this led to significant errors in
rendered images.

See issue #221...
2022-07-11 06:59:59 -04:00
Matt Pharr
14e5cf4b47 Update README.md with book release information. 2022-07-07 06:29:16 -07:00
Matt Pharr
d013ea7e9d Issue a more-friendly error if an unsupported camera is used with a bidir integrator.
There's no need for the user to see a fatal error, which should be reserved
for an actual internal error rather than a problem with the scene as
specified...

Issue #279.
2022-07-07 05:43:16 -07:00
Matt Pharr
e02f75bfaa
Merge pull request #286 from pbrt4bounty/master
Add a option to use arbitrary names for grids
2022-07-07 05:29:40 -07:00
pbrt4bounty
c15e109950
Fix issue using the new 'temperaturename' option 2022-07-07 09:42:02 +02:00
pbrt4bounty
1e734de4e5
Add a option to use arbitrary names for grids
Sometimes .nvdb files use arbitrary names for grids. This change adds two options for the user to specify different names for 'density' and 'temperature' grids.
2022-07-07 09:30:01 +02:00
Matt Pharr
8e128c18a6 TrowbridgeReitzDistribution: enforce minimum roughness for anisotropic
Previously, we'd get NaN values with anisotropic surfaces with zero
roughness in one direction and non-zero roughness in the other.

Fixes issue #283.
2022-07-05 06:50:49 -07:00
Matt Pharr
f558c37411
Merge pull request #284 from pbrt4bounty/master
Avoid Clang 14 error compiling under Windows
2022-07-03 06:47:03 -07:00
Matt Pharr
4ac4b5dd77
Merge pull request #281 from shadeops/absolute_filepath_check
Check to see if a filepath exists before making absolute
2022-07-03 06:46:25 -07:00
pbrt4bounty
c868468440
Avoid Clang 14 error compiling under Windows
Build with Clang 14 under Windows show this error
```
clang-14: error: no such file or directory: '/D'
clang-14: error: no such file or directory: 'PTEX_STATIC'
```
This commit fix this and is also OK for MSVC
2022-07-03 02:05:36 +02:00
Matt Pharr
f69b53e596
Merge pull request #282 from shadeops/realistic_cam_aperture_file
Only resolve aperture as a file if not a builtin name
2022-06-30 05:40:06 -07:00
jim price
3763f6698a Only resolve aperture as a file if not a builtin name 2022-06-27 17:22:48 -07:00
jim price
7fb4ce0629 Check to see if a filepath exists before making absolute
One approach to solving issue #280
2022-06-27 14:23:00 -07:00
Matt Pharr
2701ba6022 SPPMIntegrator: set default seed via Options->seed 2022-06-22 20:39:38 +02:00
Matt Pharr
6743986a37 RGBGridMedium: rename "LeScale" parameter to "Lescale"
Make it consistent with how it's specified with the other media..
2022-06-22 20:39:38 +02:00
Matt Pharr
5e0884f7b7 NanoVDBMedium: rename "temperaturecutoff" parameter to "temperatureoffset"
And similarly for the corresponding member variable.
"temperaturecutoff" is still accepted for backwards compatibility.
2022-06-22 20:39:38 +02:00
Matt Pharr
e273b3d81e Fix bug in WeightedReservoirSampler::Merge(): reservoirWeight wasn't being set correctly.
Found by @guoxx, issue #250.
2022-06-04 17:14:01 -07:00
Matt Pharr
82f2356a17 Change SafeSqrt() to std::sqrt() in Refract()
Opportunity noted by @star-hengxing, issue #238.
2022-06-04 08:58:49 -07:00
Matt Pharr
d7bce5a680 Prohibit "interface" materials as elements of MixMaterial
It's not clear what this would mean and this case isn't handled by
integrators in any case. (cc #271)
2022-05-30 07:22:57 -07:00
Matt Pharr
ebeff92d51
Merge pull request #275 from pbrt4bounty/master
Silent most of the MSVC warnings except 4244 and 4146 for non clear reason
2022-05-30 06:12:13 -07:00
pbrt4bounty
0a6c136786
Silent MSVC warnings for a dependencies 2022-05-30 10:08:36 +02:00
pbrt4bounty
e6894bee49
Silent MSVC warnings 2022-05-30 10:06:11 +02:00
Matt Pharr
cdccb71cb1 Fix handling of interface materials in Path and SimplePath integrators
For these, if a ray goes through an interface we need to treat the interface
as specular. (This is needed since the shadow ray test used in these
integrators does not handle interfaces but just returns false for shadow
rays that hit them.) Related to #271.
2022-05-27 16:08:52 -07:00
Matt Pharr
dbd005ac52 Fix bug in updateMaterialNeeds()'s detection of interface materials
*haveMedia would never be set to true due to a check for a nullptr material
at the start of the function... In turn, this led to the wavefront integrator not
detecting the case of interface materials without participating media, which
still requires special handling for direct lighting to come out right.

This should fix #271.
2022-05-27 16:07:17 -07:00
Matt Pharr
08b9d33b34 Small fixes to PBRT_DBG calls in pbrt/wavefront/ 2022-05-27 16:04:40 -07:00
Matt Pharr
e6a13b27bf Rename plymesh "displacement.edgelength" parameter to "edgelength" 2022-05-27 15:41:41 -07:00
Matt Pharr
ca6b91c86d HairMaterial: rename "color" parameter to "reflectance"
(Still accept "color" for backwards compatibility.)
2022-05-27 15:41:21 -07:00
Matt Pharr
96347e7441 clang-format run 2022-05-23 09:53:36 -07:00
Matt Pharr
31cbb793a5
Merge pull request #268 from gonsolo/optix_from_environment
Read Optix path from environment.
2022-05-23 06:16:41 -07:00
Andreas Wendleder
932aba808c Read Optix path from environment.
This way it doesn't has to be set in CMakeCache.txt every time the
repository is checked out.
2022-05-23 12:47:00 +02:00
Matt Pharr
fb1d962a23
Merge pull request #252 from gonsolo/mouse
Add mouse handling.
2022-05-22 19:24:24 -07:00
Matt Pharr
d12a23353e Fix format string error in HaltonSampler::Create()
Noted by @pbrt4bounty in #246.
2022-05-14 07:54:04 -07:00
Matt Pharr
19336a6c7f Fix bug with CPU writing to managed memory while OptiX is creating BVHs
On Windows, both CPU and GPU can't write to managed memory at the same time.
Previously, it was possible that the asynchronous creation of the sampler, camera,
film, etc., could still be running when OptiX BVH construction started. This was
especially likely with the Halton sampler + random digit permutations, which take
a while to initialize.

Fixes #246.
2022-05-14 07:52:43 -07:00
Matt Pharr
78091839a1 Merge branch 'master' of github.com:mmp/pbrt-v4 2022-05-13 13:36:25 -07:00
Matt Pharr
358be8380a
Merge pull request #254 from mmp/cuda-toolkit
Cuda toolkit
2022-05-13 07:10:30 -07:00
Matt Pharr
42ab6e26f4 Update CUDA versions used for github workflow CI.
Add more recent versions, up to 11.7.0, and remove older ones.
11.2.2 is now the oldest version tested.
2022-05-13 06:20:46 -07:00
Matt Pharr
a55307fa46 Update to cuda-toolkit@v0.2.6.
Allows removing the workaround for NVIDIA's changed signing keys.
2022-05-13 06:12:44 -07:00
Hearwindsaying
c5f3533ffb
Fix TaggedPointer ambiguous DispatchCPU() call issue when instantiated with 8x types. (#253)
taggedptr_test.cpp adds a test type to check if the fix works as expected.
2022-05-12 10:02:01 -07:00
Andreas Wendleder
6f7d81adfa Add mouse handling. 2022-05-10 13:02:20 +02:00
Matt Pharr
bc25558763 Cleanup: std::is_*<*>::value -> std::is_*_v<*> 2022-05-07 12:06:53 -07:00