February 28, 2017, 13:16 (GMT) |
Merge branch 'master' into writefile_rework |
February 28, 2017, 13:06 (GMT) |
Big refactor of differential override storage. On second thought, modifying real data-block to store diff in it is... just bad. Because it affects actual data, because it involves complicated and heavy processes like remapping, and because it stores useless values in .blend file (i.e. values that would give garbage results if e.g. opening .blend file with older version of Blender, etc.). So instead, decided to save an extra data-block in .blend file each time we have some differential overrides. Note that for now, we do full copy of datablock into its extra 'storage' sibbling for .blend file. This is bad (think about double copy of heavy mesh...) and will have to be fixed. Whole copy process will need serious work anyway, for that kind of features we need to be able to copy without increase usercount of IDs etc. In fact, here, maybe we even need a smarter version of copy that would only duplicate sub-data as needed by diff-overriden properties... |
February 27, 2017, 13:50 (GMT) |
Merge branch 'writefile_rework' into id_override_static. That way we don't have to add the same stupid few lines to *all* datatypes writers! Obvious gain on efficiency and security from coding PoV. Conflicts: source/blender/blenloader/intern/writefile.c |
February 27, 2017, 09:03 (GMT) |
Merge branch 'master' into writefile_rework |
February 27, 2017, 08:58 (GMT) |
Merge branch 'master' into id_override_static |
February 23, 2017, 18:41 (GMT) |
Merge branch 'master' into id_override_static |
February 13, 2017, 13:57 (GMT) |
Refactor writefile handling of data-blocks. Instead of calling a function looping over whole list of a given ID type, make whole loop over Main in parent function, and call functions writing a single datablock at a time. This design is more in line with all other places in Blender where we handle whole content of Main (including readfile.c), and much more easy to extend and add e.g. some generic processing of IDs before/after writing, etc. From user point, there should be no change at all, only difference is that data-block types won't be saved in same order as before (.blend file specs enforces no order here, so this is not an issue, but it could bug some third party users using other, simplified .blend file reader maybe). Reviewers: sergey Differential Revision: https://developer.blender.org/D2510 |
February 10, 2017, 08:23 (GMT) |
Fix some crashes when ID would reference itself. Typical case: bones having constraints targetting other bones from same armature. ID swap needs remapping here. Really have to find something better than regular ID copy + swap + relinking for override operations, this is horribly inneficient, complicated and... most likely a nest of bugs and worms. (pretty sure e.g. we still can generate same pointers during writefile with current code :( ). |
February 9, 2017, 13:54 (GMT) |
Merge branch 'master' into id_override_static |
Revision 154b045 by Sybren A. Stüvel / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Alembic: #undef'ed the correct macro TEST_RET is not defined anywhere in Blender's sources, and LAYER_CMP is no longer used after this function ends. |
Revision 1899f6c by Sergey Sharybin / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Cycles: Fix compilation error on OpenCL |
Revision 1a222aa by Sergey Sharybin / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Cycles: Implement record-all transparent shadow function for GPU The idea is to record all possible transparent intersections when shooting transparent ray on GPU (similar to what we were doing on CPU already). This avoids need of doing whole ray-to-scene intersections queries for each intersection and speeds up a lot cases like transparent hair in the cost of extra memory. This commit is a base ground for now and this feature is kept disabled for until some further tweaks. |
Revision 42249eb by Joshua Leung / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
More tweaks to Normalisation options in Graph Editor * Added a new dedicated icon for normalize * Only use an icon for "Auto" |
Revision 4e9e577 by Sergey Sharybin / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Cycles: Solve speed regression by casting opaque ray first |
Revision 54cde6d by Sybren A. Stüvel / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Fix T49249: Alembic export with multiple hair systems crash blender Removed unnecessary call to DM_update_tessface_data(). This call is already performed by DM_ensure_tessface(dm). The call being performed twice caused a failing BLI_assert(). Reviewed by: K�vin Dietrich |
Revision 6b5dde4 by Sybren A. Stüvel / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Alembic export: avoid infinite loops trying to find parent objects. Also added some assertions for debugging purposes Reviewed by: K�vin Dietrich |
Revision 7765614 by Sergey Sharybin / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Cycles: Speedup transparent shadows on CUDA This commit enables record-all behavior of transparent shadows rays. Render times difference goes as following: GTX 1080 render time BMW -0.5% Fishy Cat -0.0% Pabellon Barcelona -11.6% Classroom +1.2% Koro -58.6% Kernel will now use some extra VRAM memory to store the intersection array (200MB on my configuration). This we can optimize out with some further commits. |
Revision 7fc974f by Sybren A. Stüvel / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Alembic export: only create transform writer if the object should be exported Reviewed by: K�vin Dietrich |
Revision 92ecd32 by Sergey Sharybin / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Cycles: Use an utility function to sort intersections array |
Revision a8edfba by Joshua Leung / Bastien Montagne (asset-engine, asset-engine--archived, id_override_static) February 9, 2017, 13:51 (GMT) |
Graph Editor: Replace Normalise/Auto checkboxes with toggle buttons These take less space, fit in better with rest of the UI, and make their relationship clearer |
|