Blender Git Statistics -> Developers -> pmoursnv

Patrick Mours (pmoursnv)

Total Commits : 42
Master Commits : 42
Branch Commits : 0
First Commit : August 26, 2019
Latest Commit : January 22, 2020

Commits by Month

DateNumber of Commits
January, 20209
December, 20191
November, 20198
October, 20195
September, 20195
August, 201914

Commit Distribution

PathNumber of Commits

Favourite Files

FilenameTotal Edits

File Changes

ActionTotalPer Commit

Code Changes

ActionTotalPer Commit
Lines Added1 96757.9
Lines Removed1 16934.4

Latest commits Feed

Revision 26687dd by Patrick Mours (master)
January 22, 2020, 14:49 (GMT)
Fix T71344: Optix render errors with motion blur and unknown bone constraint relationship

The OptiX SRT motion expects a motion defined by translation,
rotation, shear and scale, but the matrix decomposition code in
Cycles was not able to extract shear information and instead
produced a stretch matrix with the information baked in. This
caused conflicting transforms between traversal and shading
and lead to render artifacts.
This patch changes the matrix decomposition to produce factors
inline with what OptiX expects to fix that.

Reviewed By: brecht

Differential Revision:
Revision 2a638e8 by Patrick Mours (master)
January 14, 2020, 16:49 (GMT)
Merge branch 'blender-v2.82-release'
Revision ff430de by Patrick Mours (master)
January 14, 2020, 16:48 (GMT)
Fix rendering motion blur scenes with OptiX failing with CUDA_ERROR_INVALID_CONTEXT

Commit baeb11826b9fe5525db6dd05ba5271949079fc1e switched memory
allocation for the motion transform to use CUDA directly, instead of going
through abstractions. But no CUDA context was set active before those
were called, so the calls failed. This fixes that by binding a context beforehand.
Revision 01d9a2f by Patrick Mours (master)
January 10, 2020, 17:32 (GMT)
Merge branch 'blender-v2.82-release'
Revision 1cb938e by Patrick Mours (master)
January 10, 2020, 15:30 (GMT)
Cycles: Fix viewport rendering when displaying as byte and not half float

Commit rB7e61e597253f3ca75f2fb86a57212ca750ffbbe8 broke viewport rendering when not displaying as halfs.
This fixes that by actually using the `scale` parameter that is passed into `film_map` and also de-duplicates code around it.

Differential Revision:
Revision 89578a8 by Patrick Mours (master)
January 10, 2020, 15:03 (GMT)
Fix OptiX acceleration structure failing to build in viewport

The `optixAccelBuild` API throws an error when the property to get compacted size is passed in
without the `OPTIX_BUILD_FLAG_ALLOW_COMPACTION` flag set. This is not currently hit
because `background` is always true (set in `mem_alloc`), but would become an issue once that
is sorted out, so fixing it now to be safe.
Revision 6915555 by Patrick Mours (master)
January 10, 2020, 14:49 (GMT)
Merge branch 'blender-v2.82-release'
Revision 1d149f6 by Patrick Mours (master)
January 10, 2020, 14:47 (GMT)
Fix T72470: OptiX render fails with scene with many translucent planes on Linux.

OptiX always uses record-all behavior for transparent shadow rays, but did not check
whether the maximum number of hits exceeded the shadow hit stack. This fixes that.
Revision d5ca721 by Patrick Mours (master)
January 8, 2020, 15:53 (GMT)
Cycles: Add OptiX AI denoiser support

This patch adds support for the OptiX denoiser as an alternative to the existing NLM denoiser in Cycles. It's re-using the same denoising architecture based on tiles and therefore implicitly also works with multiple GPUs.

Reviewed By: sergey

Differential Revision:
Revision baeb118 by Patrick Mours (master)
December 9, 2019, 13:32 (GMT)
Cycles: Add OptiX acceleration structure compaction

This adds compaction support for OptiX acceleration structures, which reduces the device memory footprint in a post step after building. Depending on the scene this can reduce the amount of used device memory quite a bit and even improve performance (smaller acceleration structure improves cache usage). It's only enabled for background renders to make acceleration structure builds fast in viewport.

Also fixes a bug in the memory management for OptiX acceleration structures: These were held in a dynamic vector of 'device_memory' instances and used the mem_alloc/mem_free functions. However, those keep track of memory instances in the 'cuda_mem_map' via pointers to 'device_memory' (which works fine everywhere else since those are never copied/moved). But in the case of the vector, it may decide to reallocate at some point, which invalidates those pointers and would result in some nasty accesses to invalid memory. So it is not actually safe to move a 'device_memory' object and therefore this removes the move operator overloads again.

Reviewed By: brecht

Differential Revision:

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18 MiikaHweb | 2003-2020