Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-03-16Merge branch 'soc-2019-openxr' into vr_scene_inspectionJulian Eisel
2020-03-16Merge branch 'temp-openxr-ghostxr' into temp-openxr-blendersideJulian Eisel
2020-03-16Fix T74626: Wrong Face Sets overlay rendering in smooth shadingPablo Dobarro
The face set color variable needs to be declared inside of the loop in order to reset it per iteration. Reviewed By: jbakker Maniphest Tasks: T74626 Differential Revision: https://developer.blender.org/D7096
2020-03-16Cleanup: misleading memset useCampbell Barton
This call to memset relied on PassList having a single, zero sized struct member. Pass the passes array instead for readability.
2020-03-13Fix stereoscopy drawing for camera backgroundDalai Felinto
Part of the fix was to get gputexture to use an array to accomodate each eye. This takes care of viewports showing individual Left or Right views. For the combined view the fix was in overlay_image.c:camera_background_images_stereo_setup. Note 1: Referece images are still not supporting stereo. Note 2: For painting, and getting image bindcode I'm hardcording a single-view experience. Note 3: Without D6922 stereo is too broken to even test this patch. With D6922 + this patch the fullscreen modes work (anaglyph/interlace not yet). Differential Revision: D7143
2020-03-12Use golden ratio conjugate for Face Sets hue generationPablo Dobarro
The face set ID is sequential, so implementing this was straightforward. Suggested by Jeroen Bakker Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7123
2020-03-12Merge branch 'temp-openxr-ghostxr' into temp-openxr-blendersideJulian Eisel
2020-03-11EEVEE: Replace octahedron reflection probe by cubemap arrayClément Foucault
We implement cubemap array support for EEVEE's lightcache reflection probes. This removes stretched texels and bottom hemisphere seams artifacts caused by the octahedral projection previously used. This introduce versioning code for the lightcache which will discard any lightcache version that is not compatible. Differential Revision: https://developer.blender.org/D7066
2020-03-11Eevee: internal support for arbitrary number of volume gridsBrecht Van Lommel
This has no user visible impact yet since smoke volumes only support a fixed set of attributes, but will become important with the new volume object. For GPU shader compilation, volume grids are now handled separately from image textures. They are somewhere between a vertex attribute and an image texture, basically an attribute that is stored as a texture. Differential Revision: https://developer.blender.org/D6952
2020-03-11Cleanup: add comment explaining reason for volume texture swizzlingBrecht Van Lommel
2020-03-11Smoke: put density/color in separate textures, fixes for workbench shaderBrecht Van Lommel
This is more in line with standard grids and means we don't have to make many special exceptions in the upcoming change for arbitrary number of volume grids support in Eevee. The workbench shader was also changed to fix bugs where squared density was used, and the smoke color would affect the density so that black smoke would be invisible. This can change the look of smoke in workbench significantly. When using the color grid when smoke has a constant color, the color grid will no longer be premultiplied by the density. If the color is constant we want to be able not to store a grid at all. This breaks one test for Cycles and Eevee, but the setup in that test using a color without density does not make sense. It suffers from artifacts since the unpremultiplied color grid by itself will not have smooth boundaries. Differential Revision: https://developer.blender.org/D6951
2020-03-11GPU: minor changes to support standalone GHOST buildsCampbell Barton
- Move gpuPush/Pop from GPU_draw.h into GPU_state.h as this is for pushing/popping state. - Add 'GPU_STANDALONE' define, to bypass use of user-preferences for theme colors and pixelsize, as well as pbvh init/free functions. Needed to get GHOST tests working again.
2020-03-10Merge branch 'soc-2019-openxr' into vr_scene_inspectionJulian Eisel
2020-03-10Merge branch 'temp-openxr-ghostxr' into temp-openxr-blendersideJulian Eisel
2020-03-09Face Sets: Use white color for a default Face Set to enable the overlayPablo Dobarro
This introduces a variable to store a face set ID which is going to be rendered white. When initializing a mesh or randomizing the colors, this variable gets updated to always render a white face set. This way the face set overlay can be enabled without adding colors to the mesh if face sets are not in use. After creating the first face set, new colors are generated randomly like usual. The face set stored as default does not have any special meaning for tools or brushes, it just affects the rendering color. Reviewed By: brecht Differential Revision: https://developer.blender.org/D7035
2020-03-09Cleanup: Move Face Sets random color generation to its own functionPablo Dobarro
This way we can change the color generation easily if we want to improve it in the future. I also added more values to randomize a little bit the saturation and value of the colors, as previously it was too easy to get similar colors when creating new faces, forcing you to use the randomize colors more than necessary. Reviewed By: brecht Differential Revision: https://developer.blender.org/D7042
2020-03-09GPencil: Refactor of Draw Engine, Vertex Paint and all internal functionsAntonio Vazquez
This commit is a full refactor of the grease pencil modules including Draw Engine, Modifiers, VFX, depsgraph update, improvements in operators and conversion of Sculpt and Weight paint tools to real brushes. Also, a huge code cleanup has been done at all levels. Thanks to @fclem for his work and yo @pepeland and @mendio for the testing and help in the development. Differential Revision: https://developer.blender.org/D6293
2020-03-09Fix T74533: Crash when entering sculpt modeGermano Cavalcante
Apparently this happened when the object is in a flat view and has customdata `CD_SCULPT_FACE_SETS` Differential Revision: https://developer.blender.org/D7073
2020-03-09Cleanup: Replace ABS/SQUARE/CUBE with function callsSergey Sharybin
While it might be handy to have type-less functionality which is similar to how C++ math is implemented it can not be easily achieved with just preprocessor in a way which does not have side-effects on wrong usage. There macros where often used on a non-trivial expression, and there was at least one usage where it was causing an actual side effect/bug on Windows (see change around square_f(sh[index++]) in studiolight.c). For such cases it is handy to have a function which is guaranteed to have zero side-effects. The motivation behind actually removing the macros is that there is already a way to do similar calculation. Also, not having such macros is a way to guarantee that its usage is not changed in a way which have side-effects and that it's not used as an inspiration for cases where it should not be used. Differential Revision: https://developer.blender.org/D7051
2020-03-09Merge branch 'soc-2019-openxr' into vr_scene_inspectionJulian Eisel
2020-03-09Merge branch 'temp-openxr-ghostxr' into temp-openxr-blendersideJulian Eisel
2020-03-05Sculpt Face SetsPablo Dobarro
Face Sets are the new system to control the visibility state of the mesh in sculpt and paint modes. They are designed to work in modes where brushes are the primary way of interaction and they provide much more control when working with meshes with complex shapes and overlapping surfaces. This initial commit includes: - Sculpt Face Sets data structures and PBVH rendering. - Face Set overlay and opacity controls. - Sculpt Undo support. - Remesher reprojection support. The visibility state of the mesh is also preserved when remeshing. - Automasking and Mesh filter support. - Mask expand operator mode to expand Face Sets (Shift + W) and flood fill areas by connectivity (press Ctrl while expanding). - Sculpt Mode Face Sets and Visibility API. - Sculpt Face Sets creation and visibility management operators. - Operator to randomize the Face Sets colors. - Draw Face Sets brush tool to create and edit the Face Sets. Drawing on the mesh creates a new Face Set. Pressing Ctrl before drawing modifies the Face Set under the brush at the beginning of the stroke. - Updated keymap and menu to work with Face Sets from Sculpt Mode (H to toggle visibility, Alt + H to show all, Shit + H to hide). - Pie menu on the W key with Face common Sets operations. Know limitations: - Multires support. The Face Sets and Visibility API needs to be implemented for Multires. Reviewed By: jbakker, #user_interface, Severin Differential Revision: https://developer.blender.org/D6070
2020-03-02Merge branch 'soc-2019-openxr' into vr_scene_inspectionJulian Eisel
2020-03-02Fix compiler warning on Linux, swapping with wrong typeJulian Eisel
2020-03-02Bring back vertically mirrored drawing for DirectX compatibilityJulian Eisel
2020-02-28Sculpt: Cloth brushPablo Dobarro
This brush has a simple physics solver that helps when sculpting cloth. - The mass and the damping properties of the simulation are properties of the brush. - It has two additional radius control to limit the influence and falloff of the simulation. - Masked vertices are pinned in the simulation, and it applies the sculpt gravity directly in the solver. - The Cloth Brush has 7 deformation modes with 2 falloff types (radial and plane). The brush can create the constraints only on the required PBVH nodes, so the simulation is isolated on high poly meshes. As long as the brush size is not too big it should be possible to keep it real time. Known issues: - The way constraints are created is extremely basic and it creates repeated constraints. Maybe there is another way to create fewer constraints while keeping the simulation quality decent. This part can also be multithreaded. (As it is it works ok, but it could be better) Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6715
2020-02-27Cleanup: more refactoring of GPU material attributes and texturesBrecht Van Lommel
This further separates requested attributes and textures from the actual node graph, that can be retained after the graph has been compiled and freed. It makes it easier to add volume grids as a native concept, which sits somewhere between an attribute and a texture. It also adds explicit link types for UDIM tile mapping, rather than relying on fairly hidden logic.
2020-02-27Fix T74248: Crash using a movie clip for the camera backgroundCampbell Barton
Missing NULL check in recent half-float support.
2020-02-25GPU: Add Image property to allow high bitdepth support on a per image basisClément Foucault
This adds the `Half Float Precision` option in the image property panel. This option is only available on float textures and is enabled by default. Adding a flag inside the imbuf (IB_halffloat) on load is done for EXR and PSD formats that can store half floating point (16bits/channels). The option is then not displayed in this case and forced. Related task T73086 Reviewed By: brecht Differential Revision: https://developer.blender.org/D6891
2020-02-24Fix compiler warning on Linux, swapping with wrong typeJulian Eisel
2020-02-20Cleanup: declatatuons for functions that don't existCampbell Barton
2020-02-20GPU: Fix huge performance regression regarding instancingClément Foucault
Under some circumstances, MultiDrawIndirect was disabled to improve perf. of average scene. But this conflicted with the normal instancing buffer filling if only 1 or 2 instances were needed to fill the buffer. All consecutive drawcalls could not be batched together and performance would degrade rapidly. This patch make my instance test scene go from 11fps back to 40fps where it should have been.
2020-02-20GPU: Limit Mesa workaround to older versionClément Foucault
2020-02-20Cycles: Vector Rotate Node using Axis and Angle methodCharlie Jolly
This node provides the ability to rotate a vector around a `center` point using either `Axis Angle` , `Single Axis` or `Euler` methods. Reviewed By: #cycles, brecht Differential Revision: https://developer.blender.org/D3789
2020-02-20Cleanup: declatatuons for functions that don't existCampbell Barton
2020-02-19Fix too bright rendering on some runtimesJulian Eisel
Transform to display space on our end is only needed for the Monado runtime.
2020-02-19Bring back vertically mirrored drawing for DirectX compatibilityJulian Eisel
2020-02-18GPU: Fix huge performance regression regarding instancingClément Foucault
Under some circumstances, MultiDrawIndirect was disabled to improve perf. of average scene. But this conflicted with the normal instancing buffer filling if only 1 or 2 instances were needed to fill the buffer. All consecutive drawcalls could not be batched together and performance would degrade rapidly. This patch make my instance test scene go from 11fps back to 40fps where it should have been.
2020-02-18GPU: Limit Mesa workaround to older versionClément Foucault
2020-02-17Cycles: Vector Rotate Node using Axis and Angle methodCharlie Jolly
This node provides the ability to rotate a vector around a `center` point using either `Axis Angle` , `Single Axis` or `Euler` methods. Reviewed By: #cycles, brecht Differential Revision: https://developer.blender.org/D3789
2020-02-17Fix compile errors and broken drawing after changes in masterJulian Eisel
There are still some issues left after the changes in master: * Some optimizations need to be redone differently * Color-space handling needs to be redone differently * Upside-down drawing is broken
2020-02-17Merge branch 'temp-openxr-ghostxr' into temp-openxr-blendersideJulian Eisel
This will currently fail to compile. Fixes upcoming.
2020-02-16Fix T73880: error rendering UDIM in Eevee after recent refactorBrecht Van Lommel
2020-02-15Cleanup: refactor GPU material attribute and texture requestsBrecht Van Lommel
2020-02-15Cleanup: split off code from gpu_codegen.c into smaller filesBrecht Van Lommel
2020-02-15Cleanup: don't perform some GPU shader codegen operations twiceBrecht Van Lommel
2020-02-15Fix potential crash with Eevee render of missing image texturesBrecht Van Lommel
This NULL check is needed elsewhere, do it here as well.
2020-02-15GPU: Add GPU support to fill a texture image with a constant valuemano-wii
This solution is optimized for GL version 4.4 or greater.
2020-02-11DRW: Color Management improvementClément Foucault
Reviewed By: brecht sergey jbakker Differential Revision: http://developer.blender.org/D6729
2020-02-06Cleanup: refactor default materials and shader nodesBrecht Van Lommel