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
2022-11-01Refactor: Rename Object->obmat to Object->object_to_worldSergey Sharybin
Motivation is to disambiguate on the naming level what the matrix actually means. It is very easy to understand the meaning backwards, especially since in Python the name goes the opposite way (it is called `world_matrix` in the Python API). It is important to disambiguate the naming without making developers to look into the comment in the header file (which is also not super clear either). Additionally, more clear naming facilitates the unit verification (or, in this case, space validation) when reading an expression. This patch calls the matrix `object_to_world` which makes it clear from the local code what is it exactly going on. This is only done on DNA level, and a lot of local variables still follow the old naming. A DNA rename is setup in a way that there is no change on the file level, so there should be no regressions at all. The possibility is to add `_matrix` or `_mat` suffix to the name to make it explicit that it is a matrix. Although, not sure if it really helps the readability, or is it something redundant. Differential Revision: https://developer.blender.org/D16328
2022-11-01Fix compilation error on Windows.Jeroen Bakker
Missing return statement in recent commit. Code is disabled by default, so might not have been noticed.
2022-11-01Cleanup: spelling in commentsCampbell Barton
2022-11-01Cleanup: doxy comment formattingCampbell Barton
2022-11-01Cleanup: fix translation for rare UV unwrapping with unit scaleChris Blackbourn
Fixes very rare cases where the UV Cylinder Project, UV Sphere Project and UV From View might not set the translation correctly if the scale is exactly 1.0. Mainly fixed because this code might later be reused elsewhere.
2022-10-31Geometry Nodes: Use attribute API in deform curves on surface nodeHans Goudey
Retrieve the surface UV coordinates with the attribute API instead of the helper function. This allows more flexibility of data types (and domains), which is helpful especially because geometry nodes can't write 2D vectors yet.
2022-10-31Nodes: Improve socket node lookup performanceHans Goudey
Use the newly added node topology cache to find the node that contains a socket rather than looping through all nodes every time. The change improves performance of drawing a some large node trees by 2-3x.
2022-10-31GPU: Add placeholder for Vulkan backend.Jeroen Bakker
This patch adds a placeholder for the vulkan backend. When activated (`WITH_VULKAN_BACKEND=On` and `--gpu-backend vulkan`) it might open a blender screen, but nothing should be visible as none of the functions are implemented or otherwise crash on a nullptr. This is expected as this is just a placeholder. The goal is to add shader compilation +validation to this backend as one of the next steps so we can validate changes to existing shaders on OpenGL, Metal and Vulkan at the same time. Reviewed By: fclem Differential Revision: https://developer.blender.org/D16338
2022-10-31Fix variable value assigned twice in successionGermano Cavalcante
Error introduced in rBa7aa0f1a0c24 Mentioned in https://pvs-studio.com/en/blog/posts/cpp/1004/ It could cause the absolute snap to the y direction to fail in some editor.
2022-10-31BLI_path: only operate on native path slashes for BLI_path_name_at_indexCampbell Barton
Prefer using the native path separator for low level path functions.
2022-10-31BLI_path: only operate on native path slashes for BLI_path_joinCampbell Barton
Previously both slashes were considered when joining paths, meaning slashes that were part of the path name could be stripped before joining the path. Prefer using the native path separator for low level path functions, callers can always convert slashes into the expected direction if they need. This also matches BLI_path_append behavior.
2022-10-31Cleanup: quiet warning building with MSVC (_CONCAT redefined)Campbell Barton
This is defined by a system header (xatomic.h) with MSVC.
2022-10-30Fix T102126 Regression: Grease Pencil: Broken 2D LayeringClément Foucault
This was because `stroke_id` was not using `vertex_start`. But since `vertex_start` is not 1 based like it used to be, we need to add 1 to it to avoid a fragment depth of `0.0` which would be equal to the background and not render.
2022-10-30Fix T102163: GPencil:Set start point Operator make stroke deletedAntonio Vazquez
There were two problems: * The stroke was deleted if the last point was selected. Now the stroke is flipped because is faster. * If the second point was selected, the first point was removed because the internal api, removed one point strokes by default. This was done becaus ethe tools that used this API did not need one point strokes as result. Now this optional and keep one point strokes.
2022-10-30DRW: Manager: Add possibility to record a framebuffer change inside a passClément Foucault
This is a convenience when one needs to often change the current framebuffer and avoid the overhead of creating many Main/Simple passes.
2022-10-30Fix T102160: Regression: GPencil gradient fill not workingClément Foucault
Was caused by uvs not being sourced from the correct buffer.
2022-10-30DRW: Manager: Allow custom draw command in PassMainClément Foucault
This allows using drawcalls with non default vertex range. These calls will be culled like any other instance by the GPU culling pipeline. But they will not be batched together since the vertex range is part of the group.
2022-10-30Cleanup: replace BLI string copy & append with BLI_path_join(..)Campbell Barton
Copying and appending is unnecessarily verbose with each call having to pass in the buffer size.
2022-10-30BLI_path: add BLI_path_append_dir (appends and ensures trailing slash)Campbell Barton
Avoid copying the string then calling BLI_path_slash_ensure afterwards.
2022-10-30Fix potential buffer overflow with BLI_path_slash_ensure useCampbell Barton
BLI_path_slash_ensure was appending to fixed sized buffers without a size check.
2022-10-30Fix T102132: Directory selection fails to add trailing slashCampbell Barton
Regression in [0], accessing the path from the file selector relied on BLI_join_dirfile adding a trailing "/" when the filename was empty. [0]: 9f6a045e23cf4ab132ef78eeaf070bd53d0c509f
2022-10-29NLA: Push down Action names the Track after the ActionSybren A. Stüvel
When pushing down an Action to a new NLA track, the track is now named after the Action.
2022-10-29Cleanup: use STREQ macroCampbell Barton
2022-10-28Cleanup: formatCampbell Barton
2022-10-27GPencil: Fix MSVC warning in lineart_cpp_bridge.ccRay Molenkamp
MSVC give a rather large warning when using blender::parallel_sort without using a lambda for the comparison. Fixed by using a lambda
2022-10-27Fix T102092: GPencil Sculpt Grab crash using Shift keyAntonio Vazquez
There was a problem with the hash table that was not created as expected. Also fixed an unreported memory leak in Grab tool not related to this crash but detected during debug.
2022-10-26Fix T101925: sculpt color painting not updating with Cycles viewport renderBrecht Van Lommel
* External engines do not use the PBVH and need slower depsgraph updates. * Final depsgraph tag after stroke finishes was missing for sculpt color painting, caused missing updates for other viewports as well as any modifiers or nodes on other objects using the colors.
2022-10-26Fix slow continuous depsgraph updates in sculpt paint mode in some casesBrecht Van Lommel
Updates for cursor could cause the paint data to be continuously refreshed, which is pretty cheap by itself, but not when it starts tagging the depsgraph. The paint slot refresh code ideally should not be doing depsgraph tags at all, but checking if there were changes at least avoids continuous updates.
2022-10-26Fix build error on Windows without precompiled headersBrecht Van Lommel
Recent refactoring to use uint relied on indirect includes and precompiled headers for uint to be defined. Explicitly include BLI_sys_types where this type is used now.
2022-10-26Sculpt: fix T102067: Set material properly in new pbvh drawJoseph Eagar
Note: Still need to fix PBVH_BMESH.
2022-10-26Fix: set more UI colors to PROP_COLOR_GAMMAPhilipp Oeser
Followup to rBfb424db2b7bb. Found some more candidates. UI colors should use PROP_COLOR_GAMMA to avoid being affected by scene color management (clarification by @brecht). Differential Revision: https://developer.blender.org/D16337
2022-10-25Cleanup: formatChris Blackbourn
2022-10-25Cleanup: Curves: Remove GPUTexture wrappers for buffer textureClément Foucault
These are unecessary now that we can bind buffers as textures directly.
2022-10-25Fix T102052 GPencil: stroke outline glitches in object modeClément Foucault
Was caused by an extra point per stroke being drawn.
2022-10-25DRW: Pointcloud: Refactor drawing to remove instancingClément Foucault
This change the attribute binding scheme to something similar to the curves objects. Attributes are now buffer textures sampled per points. The actual geometry is now rendered using an index buffer that avoid too many vertex shader invocation. Drawcall is wrapped in a DRW function to reduce complexity of future changes.
2022-10-25Fix T99603: node body colors colormanagement issuePhilipp Oeser
This led to the color actually looking different on the node body itself vs. in the panel, also using the colorpicker gave unexpected results. UI colors should use PROP_COLOR_GAMMA to avoid being affected by scene color management (clarification by @brecht). Maniphest Tasks: T99603 Differential Revision: https://developer.blender.org/D16334
2022-10-25Fix T101933: pick deselecting bones in empty space deactivates armaturePhilipp Oeser
As a consequence of this, subsequent box-selection of bones would not show correctly in Animation Editors (not showing the channels there because of the lack of an active object). The bug was caused by rBba6d59a85a38. Prior to said commit, code logic was relying on the check for `basact` being NULL to determine if object selection changes need to happen. After that commit, this was handled by a `handled` variable, but this was not set correctly if `basact` is actually NULL after the initial pick (aka deselection by picking). Maniphest Tasks: T101933 Differential Revision: https://developer.blender.org/D16326
2022-10-25UI: Fix count on node editor/group header when fake userDalai Felinto
The number of node groups was including the fake user count. I was ignoring the Fake User, and how it affects the id->us count. This problem was present since the initial commit: 84825e4ed2e09895.
2022-10-24GPencil: Fix crash when using circle or rectangle toolClément Foucault
This was caused by a wrongly sized vertex buffer for the stroke buffer.
2022-10-24GPencil: Fix missing fillsClément Foucault
For some reason stroke_id needs to be the triangle index, not the vertex index.
2022-10-24Fix T102015: AV1 - No valid formats foundRay Molenkamp
I did a poor master merge in D14920 before landing and AV_CODEC_ID_AV1 accidentally ended up in `ffmpeg_format_items` rather than `ffmpeg_codec_items`
2022-10-24VSE: Don't use timecodes if not explicitly enabledRichard Antalik
UI panel may suggest, that disabling "Proxy & timecode" would cause timecodes not being used, but this was not the case. Now timecodes will be used only if the checkbox is checked.
2022-10-24Fix T100571: Subdivision disabled with Orbit Around SelectionGermano Cavalcante
The bug has existed since crasy space was implemented. rBbf8a26b7453d made the error even worse as the `modifiers_disable_subsurf_temporary` function, which works like a toggle, did not temporarily re-enable subsurf. The main problem is that the derived mesh is modified but not marked as dirty at the end.
2022-10-24Fix T101981: Incorrect playback of AVI filesRichard Antalik
Commit bcc56253e26e introduced 3 frame negative offset for seeking. This can result in negative seek values. Ensure, that seek value is always positive.
2022-10-24Fix T101210: invalid internal node links lead to crashJacques Lucke
Internal links are run-time/derived data. Therefore it is not necessary to load them from .blend files where invalid internal links may be stored. They will be regenerated after a node tree is loaded anyway.
2022-10-24GPencil: Fix regression (part3) with edit mode introduced in rB0ee9282b5c51Clément Foucault
Vertex indexing has not been updated and stroke_start usage was wrong. Update all `stroke_start` usage.
2022-10-24Pencil: Fix regression (part2) with stroke buffer introduced in rB0ee9282b5c51Clément Foucault
`vert_len` was being shadowed and index_min & max wasn't correctly set.
2022-10-24GPencil: Fix regression with stroke buffer introduced in rB0ee9282b5c51Clément Foucault
2022-10-24GPencil: Fix regressions introduced in rB0ee9282b5c51Clément Foucault
Batching was broken / disabled and starting indices were wrong.
2022-10-24Fix T101946: Outliner data-block counter treats bones as collectionPhilipp Oeser
Mistake in own rBb6a35a8153c3 which caused code to always recurse into bone hierarchies (no matter which collapsed level an armature was found). This led to bone counts always being displayed even outside a collapsed armature (e.g. if an armature was somewhere down a object or collection, the collapsed object or collection would show this bonecount). This is inconsistent with other data counting in the Outliner, e.g. vertexgroups or bonegroups do have their indicator at object level, however the counter only shows if `Vertex Groups` or `Bone Groups` line shows (so if the object is not collapsed). And this also led to the bug reported in T101946 which was that the bone counts would be treated as collections when further down a collapsed hierarchy. Background: The whole concept of `MergedIconRow` is based on the concept of counting **objects types or collectinons/groups**. If other things like overrides, vertexgroups or bonegroups are displayed in a counted/ merged manner, then these will always be counted in the array spots that are usually reserved for groups/collections. But for things this is not a problem (since these are only displayed below their respective outliner entry -- and will never be reached otherwise). So to correct all this, we now only recurse into a bone hierarchy if a bone is at the "root-level" of a collapsed subtree (direct child of the collapsed element to merge into). NOTE: there are certainly other candidates for counted/merged display further up the hierarchy (not just bones -- constraints come to my mind here, but that is for another commit) Maniphest Tasks: T101946 Differential Revision: https://developer.blender.org/D16319