Revision 3469e06 by Julian Eisel January 22, 2021, 15:58 (GMT) |
Fix memory leak when opening file browser The name string of each file was duplicated but not freed. The new flag to ensure the file-list frees the name wasn't set. Mistake in ca475479eb26. |
Revision bbe6d44 by Kévin Dietrich January 22, 2021, 15:08 (GMT) |
Cycles: optimize device updates This optimizes device updates (during user edits or frame changes in the viewport) by avoiding unnecessary computations. To achieve this, we use a combination of the sockets' update flags as well as some new flags passed to the various managers when tagging for an update to tell exactly what the tagging is for (e.g. shader was modified, object was removed, etc.). Besides avoiding recomputations, we also avoid resending to the devices unmodified data arrays, thus reducing bandwidth usage. For OptiX and Embree, BVH packing was also multithreaded. The performance improvements may vary depending on the used device (CPU or GPU), and the content of the scene. Simple scenes (e.g. with no adaptive subdivision or volumes) rendered using OptiX will benefit from this work the most. On average, for a variety of animated scenes, this gives a 3x speedup. Reviewed By: #cycles, brecht Maniphest Tasks: T79174 Differential Revision: https://developer.blender.org/D9555 |
Revision 131a758 by Bastien Montagne January 22, 2021, 15:05 (GMT) |
Refactor BMain relations temp data. `bmain.relations` is used to store temp data of relations between IDs, to speed-up some complex processes heavily relying on such information. Previous implementation was failry unclear/confusing, and required a not-so-nice hack to 'tag' some ID as processed. New code changes as such: * Using `from`/`to` naming (instead of `user`/`used`). * More clear separation between `to` `id_pointer` and `from` one, using an union instead of hacking around difference between `ID *` and `ID **` pointers. * Adds storage of `session_uuid` informations (mainly useful as debug/ensuring proper consistency of data currently). * Adds a structure per ID in the mapping. This enables possibility of storing tags (and potentially more data in the future) per-ID, without polluting the IDs themselves with very short-life info. Differential Revision: https://developer.blender.org/D10164 |
Revision be7106a by Bastien Montagne January 22, 2021, 14:31 (GMT) |
LibOverride: Add an 'post apply' callback to IDTypeInfo. Currently this is needed to properly tag PointCache's for info update (fixes an issue reported in T82503). Suspect we may need this in more cases in the future though, RNA assign/update processes are not always 100% enough to deal with complicated corner cases. |
Revision 7e32bb8 by Sergey Sharybin January 22, 2021, 13:32 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 226eb5e by Sergey Sharybin January 22, 2021, 13:31 (GMT) |
Cycles: Fix usage of double floating precision in CNanoVDB Double floating point precision is an extension of OpenCL, which might not be implemented by certain drivers, such as Intel Xe graphics. Cycles does not use double floating point precision, and there is no need on keeping doubles unless there is an explicit decision to use them. This is a simple fix from Cycles side to replace double floating point type with a type of same size and alignment rules. Inspired by Brecht and Patrick. Tested on NVidia Titan V, Radeon RX Vega M, and TGL laptop. Differential Revision: https://developer.blender.org/D10143 |
Revision 18e063b by Jacques Lucke January 22, 2021, 12:46 (GMT) |
Functions: use better conversion from float2 to float3 Previously float2 was converted to float3 by implicitly converting to a float pointer first, which was then passed to the float3 constructor. This leads to uninitialized memory in the z component of the new float3. Ideally this should be solved in float2/float3 itself, but my first fix for that resulted in a compile error: rB6ac0a3d83c8e5a39bd5356aa0d68e3166bd91e82 This is an alternative fix that can be used for now. Will have to look into the conversion in more detail again. |
Revision 7a07ca1 by Jacques Lucke January 22, 2021, 12:41 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 6449765 by Jacques Lucke January 22, 2021, 12:40 (GMT) |
Revert "BLI: add conversion from float2 to float3" This reverts commit 6ac0a3d83c8e5a39bd5356aa0d68e3166bd91e82. |
Revision 9fbf307 by Sergey Sharybin January 22, 2021, 11:26 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 2ba2d2b by Sergey Sharybin January 22, 2021, 11:26 (GMT) |
Fix T76936: Mesh shape amended upon undoing in sculpt mode Was happening when there are deform modifiers prior to the multires. There are detail in the comment around sculpt_undo_refine_subdiv(), but briefly: the subdiv was refined with wrong base mesh coordinates. Differential Revision: https://developer.blender.org/D10158 |
Revision 7f96e6e by Jacques Lucke January 22, 2021, 11:17 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 6ac0a3d by Jacques Lucke January 22, 2021, 11:16 (GMT) |
BLI: add conversion from float2 to float3 Previously float2 was converted to float3 by implicitly converting to a float pointer first, which was then passed to the float3 constructor. This leads to uninitialized memory in the z component of the new float3. |
Revision ae4a430 by Bastien Montagne January 22, 2021, 10:54 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 526373b by Dalai Felinto January 22, 2021, 10:47 (GMT) |
Cleanup - Point Instance: Use own DNA struct We will need to expand this node soon to add weight/count for different elements inside the collection. For that it is better to have the node to use its own DNA. |
Revision cd8893d by Bastien Montagne January 22, 2021, 10:39 (GMT) |
Fix (unreported) LibOverride: hair cache settings not working. Thanks to that same point cache being exposed in **four** different RNA paths (twice in particle system, and twice in its embedded cloth simulation settings). Only way is to also make particle system overridable. |
Revision d179e1c by Antonio Vazquez January 22, 2021, 10:26 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 0373d1b by Antonio Vazquez January 22, 2021, 10:25 (GMT) |
GPencil: Fix unreported Vertex Paint masking error The masking was not working as expected and allowed to paint non selected strokes. |
Revision 8eaea99 by Campbell Barton January 22, 2021, 09:00 (GMT) |
Merge branch 'blender-v2.92-release' |
Revision 927d099 by Stefan Werner January 22, 2021, 08:30 (GMT) |
Particles: Fixed thread work size calculation. Dividing the workload by number of tasks in float is imprecise and lead in some cases to particles not being calculated at all (example: 20000 particles, 144 tasks). Switching this calculation to integer makes sure we don't lose count. Differential Revision: https://developer.blender.org/D10157 |
|
|
|


Master Commits
MiikaHweb | 2003-2021