March 18, 2020, 12:16 (GMT) |
GPencil: Remove duplicated Mode parameter from Color Subpanel in Vertex Paint This parameter is now at Brush level, so it was duplicated in the Color panel. |
March 18, 2020, 12:10 (GMT) |
Cleanup: Rename variables |
March 18, 2020, 12:06 (GMT) |
GPencil: Remove background to Dopesheet buttons This was missing in previous commit. |
March 18, 2020, 11:53 (GMT) |
Fix BPY enum property definiton failing if items contain spaces Mistake in 03a4d3c33f82, turns out this actually is called from BPY (which I didn't think it was). So only error out during makesrna, not at runtime. |
March 18, 2020, 11:28 (GMT) |
Cleanup: spelling |
March 18, 2020, 10:23 (GMT) |
Tests: add OpenVDB volume tests |
March 18, 2020, 10:23 (GMT) |
Volumes: add render settings for volume datablock * Space: volume density and step size in object or world space * Step Size: override automatic step size * Clipping: values below this are ignored for tighter volume bounds The last two are Cycles only currently. Ref T73201 |
March 18, 2020, 10:23 (GMT) |
Cycles: change volume step size controls, auto adjust based on voxel size By default it will now set the step size to the voxel size for smoke and volume objects, and 1/10th the bounding box for procedural volume shaders. New settings are: * Scene render/preview step rate: to globally adjust detail and performance * Material step rate: multiplied with auto detected per-object step size * World step size: distance to steo for world shader Differential Revision: https://developer.blender.org/D1777 |
March 18, 2020, 10:23 (GMT) |
March 18, 2020, 10:23 (GMT) |
Cycles: support rendering new Volume object type Voxels are loaded directly from the OpenVDB grid. Rendering still only supports dense grid, so memory usage is not great for sparse volumes, this is to be addressed in the future. Ref T73201 |
March 18, 2020, 10:23 (GMT) |
Cycles: support for different 3D transform per volume grid This is not yet fully supported by automatic volume bounds but works fine in most cases that will have mostly matching bounds. Ref T73201 |
March 18, 2020, 10:23 (GMT) |
Objects: Eevee and workbench rendering of new Volume, Hair, PointCloud Only the volume drawing part is really finished and exposed to the user. Hair plugs into the existing hair rendering code and is fairly straightforward. The pointcloud drawing is a hack using overlays rather than Eevee and workbench. The most tricky part for volume rendering is the case where each volume grid has a different transform, which requires an additional matrix in the shader and non-trivial logic in Eevee volume drawing. In the common case were all the transforms match we don't use the additional per-grid matrix in the shader. Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6955 |
March 18, 2020, 10:23 (GMT) |
Objects: add Volume object type, and prototypes for Hair and PointCloud Only the volume object is exposed in the user interface. It is based on OpenVDB internally. Drawing and rendering code will follow in another commit. https://wiki.blender.org/wiki/Source/Objects/Volume https://wiki.blender.org/wiki/Reference/Release_Notes/2.83/Volumes Hair and PointCloud object types are hidden behind a WITH_NEW_OBJECT_TYPES build option. These are unfinished, and included only to make it easier to cooperate on development in the future and avoid tricky merges. https://wiki.blender.org/wiki/Source/Objects/New_Object_Types Ref T73201, T68981 Differential Revision: https://developer.blender.org/D6945 |
March 18, 2020, 10:23 (GMT) |
UI: add new icons for Volume, Hair and PointCloud |
March 18, 2020, 10:12 (GMT) |
GPencil: Cleanup int comparisons |
March 18, 2020, 09:19 (GMT) |
GPencil: Invert Dopesheet icons to same order than properties panel |
March 18, 2020, 08:55 (GMT) |
Weight Paint: Implement a new Lock-Relative mode. This check box alters how weights are displayed and painted, similar to Multi Paint, but in a different way. Specifically, weights are presented as if all locked vertex groups were deleted, and the remaining deform groups normalized. The new feature is intended for use when balancing weights within a group of bones while all others are locked. Enabling the option presents weight as if the locked bones didn't exist, and their weight was proportionally redistributed to the editable bones. Conversely, the Multi-Paint feature allows balancing a group of bones as a whole against all unselected bones, while ignoring weight distribution within the selected group. This mode also allows temporarily viewing non-normalized weights as if they were normalized, without actually changing the values. Differential Revision: https://developer.blender.org/D3837 |
March 18, 2020, 03:21 (GMT) |
Modifier: skip calling MOD_deform_mesh_eval_get This is only needed in certain cases. When testing performance improvements to the modifier stack it's useful to bypass this function. |
March 17, 2020, 21:23 (GMT) |
Fix typo causing compile error with WITH_XR_OPENXR disabled |
March 17, 2020, 20:42 (GMT) |
VR: Initial Virtual Reality support - Milestone 1, Scene Inspection NOTE: While most of the milestone 1 goals are there, a few smaller features and improvements are still to be done. Big picture of this milestone: Initial, OpenXR-based virtual reality support for users and foundation for advanced use cases. Maniphest Task: https://developer.blender.org/T71347 The tasks contains more information about this milestone. To be clear: This is not a feature rich VR implementation, it's focused on the initial scene inspection use case. We intentionally focused on that, further features like controller support are part of the next milestone. - How to use? Instructions on how to use this are here: https://wiki.blender.org/wiki/User:Severin/GSoC-2019/How_to_Test These will be updated and moved to a more official place (likely the manual) soon. Currently Windows Mixed Reality and Oculus devices are usable. Valve/HTC headsets don't support the OpenXR standard yet and hence, do not work with this implementation. --------------- This is the C-side implementation of the features added for initial VR support as per milestone 1. A "VR Scene Inspection" Add-on will be committed separately, to expose the VR functionality in the UI. It also adds some further features for milestone 1, namely a landmarking system (stored view locations in the VR space) Main additions/features: * Support for rendering viewports to an HMD, with good performance. * Option to sync the VR view perspective with a fully interactive, regular 3D View (VR-Mirror). * Option to disable positional tracking. Keeps the current position (calculated based on the VR eye center pose) when enabled while a VR session is running. * Some regular viewport settings for the VR view * RNA/Python-API to query and set VR session state information. * WM-XR: Layer tying Ghost-XR to the Blender specific APIs/data * wmSurface API: drawable, non-window container (manages Ghost-OpenGL and GPU context) * DNA/RNA for management of VR session settings * `--debug-xr` and `--debug-xr-time` commandline options * Utility batch & config file for using the Oculus runtime on Windows. * Most VR data is runtime only. The exception is user settings which are saved to files (`XrSessionSettings`). * VR support can be disabled through the `WITH_XR_OPENXR` compiler flag. For architecture and code documentation, see https://wiki.blender.org/wiki/Source/Interface/XR. --------------- A few thank you's: * A huge shoutout to Ray Molenkamp for his help during the project - it would have not been that successful without him! * Sebastian Koenig and Simeon Conzendorf for testing and feedback! * The reviewers, especially Brecht Van Lommel! * Dalai Felinto for pushing and managing me to get this done ;) * The OpenXR working group for providing an open standard. I think we're the first bigger application to adopt OpenXR. Congratulations to them and ourselves :) This project started as a Google Summer of Code 2019 project - "Core Support of Virtual Reality Headsets through OpenXR" (see https://wiki.blender.org/wiki/User:Severin/GSoC-2019/). Some further information, including ideas for further improvements can be found in the final GSoC report: https://wiki.blender.org/wiki/User:Severin/GSoC-2019/Final_Report Differential Revisions: D6193, D7098 Reviewed by: Brecht Van Lommel, Jeroen Bakker |
|
|
|


Master Commits
MiikaHweb | 2003-2021