Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync blender master #4002

Merged
merged 442 commits into from
Dec 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
442 commits
Select commit Hold shift + click to select a range
63432f0
Cleanup: Store sculpt undo nodes with C++ Vector
HansGoudey Dec 8, 2023
eb7d5d0
Fix #115933: Assert with invalid time-stamp on X11 with XIM input
ideasman42 Dec 8, 2023
f355575
Vulkan: Add Debug Name To Descriptor Sets
jeroenbakker-atmind Dec 8, 2023
65e58fe
CMake: Fix Compiling Shader Builder on macOS
jeroenbakker-atmind Dec 8, 2023
b9cbc5b
Fix #115909: Walk Navigation Up and Down is interrupted by WASD
PratikBorhade302 Dec 8, 2023
2e5d4a8
GPv3: Clean loose points operator
PratikBorhade302 Dec 8, 2023
0137e54
Fix #40009: Win32 Use Message Time for Events not Current Time
harley-acheson Dec 8, 2023
83810e2
Cleanup: Sculpt explicitly retrieve mesh face visibility attribute
HansGoudey Dec 8, 2023
e5814ab
Cleanup: Move majority of sculpt paint module to C++ namespaces
HansGoudey Dec 8, 2023
956d00e
Cleanup: Return sculpt node automasking data by value
HansGoudey Dec 8, 2023
854cdd1
Cleanup: Use consistent "mesh" variable name (replace "me")
HansGoudey Dec 8, 2023
e0d95b9
Fix: Build error and format fixes after previous cleanup
HansGoudey Dec 8, 2023
639272e
Fix #100784: Truncate Text with Ellipsis inside Number Inputs
harley-acheson Dec 8, 2023
f3c1111
Fix #114838: Force Full Redraw When Duplicating Areas
harley-acheson Dec 8, 2023
76bf43f
Fix #115938: BLF Handle Negative Left-Side Bearings
harley-acheson Dec 9, 2023
7bfb7af
Cleanup: Remove excessive use of optimized IndexMask functions
HansGoudey Dec 8, 2023
85012cc
Cleanup: Use simpler positions name in curves selection functions
HansGoudey Dec 8, 2023
7c5fa8b
IO: Add initial support for File Handlers registration
Dec 9, 2023
0b1049b
BMesh: Optimize copying attributes from many elements at once
HansGoudey Dec 9, 2023
2c85561
Fix invalid cursor move time-stamp on WIN32
ideasman42 Dec 9, 2023
15cff1f
BMesh: optimize attribute copying by reusing BMCustomDataCopyMap
ideasman42 Dec 9, 2023
5e07e9f
Fix (unreported): Set Color Tag broken when inside meta strip
Dec 9, 2023
b5ce6b6
Fix #114951: Waveform drawn incorrectly in strips with hold offset
RichardAntalik Dec 9, 2023
79dff81
Cleanup: VSE waveform drawing variables
RichardAntalik Dec 9, 2023
dd9eeca
Fix Cycles versioning error after displacement_method removal
brechtvl Dec 10, 2023
3069d59
GHOST/Wayland: correct fix for #106040
ideasman42 Dec 10, 2023
5d5fd5d
Cleanup: make read_file_as_buffer into a generic utility function
ideasman42 Dec 10, 2023
af4160d
Cleanup: avoid redundant read(..) call in read_file_as_buffer
ideasman42 Dec 10, 2023
3c7b753
Cleanup: minor changes to read_file_as_buffer logic
ideasman42 Dec 10, 2023
7ee8de9
Cleanup: replace WM_cursor_set with WM_cursor_wait for image copy/paste
ideasman42 Dec 10, 2023
6afad4b
Cleanup: indent readme.html
ideasman42 Dec 10, 2023
49c6e4e
PyAPI: micro optimization accessing keyword arguments for bpy functions
ideasman42 Dec 10, 2023
ded3692
Cleanup: spelling in comments
ideasman42 Dec 10, 2023
21525b4
License headers: add SPDX headers
ideasman42 Dec 10, 2023
21fbd9d
Cleanup: add missing header, sort files
ideasman42 Dec 10, 2023
ff47eb3
Cleanup: minor style tweaks, surround ELEM by parenthesis
ideasman42 Dec 10, 2023
52a7555
Cleanup: match header/source argument naming
ideasman42 Dec 10, 2023
64c4b34
Cleanup: remove redundant "contains" checks before erasing items
ideasman42 Dec 10, 2023
cbf1eac
Cleanup: avoid pass-by-value on vector argument for ContextVK
ideasman42 Dec 10, 2023
f02ebe7
Cleanup: correct assert to avoid null pointer deference
ideasman42 Dec 10, 2023
0e64c95
Fix "project_source_info" use with clang
ideasman42 Dec 10, 2023
ffc84da
Cleanup: use const variables & arguments, remove unused assignments
ideasman42 Dec 10, 2023
22d65ba
Cleanup: pass BMesh by pointer instead of reference
ideasman42 Dec 10, 2023
12c4d22
Fix #115937: Context override fails to restore screen
ideasman42 Dec 10, 2023
798a0b3
Cycles: update OSL to work with version 1.13.5
brechtvl Dec 10, 2023
bbb7e7a
Cycles: update to work with OpenVDB 11
brechtvl Dec 10, 2023
8ba474d
Refactor: replace NanoVDB SampleFromVoxels by own code
brechtvl Dec 9, 2023
6cdb431
Refactor: replace NanoVDB kernel side implementation by own code
brechtvl Dec 9, 2023
91fd6b1
Fix #115288: EEVEE-Next: Horizon Scan light leaking
Dec 10, 2023
ae70d25
EEVEE-Next: Refactor Raytracing pipeline
Dec 10, 2023
4eee57f
Fix #115979: Object bounds display type doubled size
HansGoudey Dec 10, 2023
edb7656
Cleanup: Remove unused BoundBox functions
HansGoudey Dec 10, 2023
6ebe196
Metal: Add support for attachment-less framebuffer
Dec 10, 2023
6d70e9b
UI: fix and improve a few messages
PiOverFour Dec 10, 2023
fb5d03b
Fix: Typo in recent commit to BMesh copy function
HansGoudey Dec 10, 2023
1b99987
GPU: Shader Builder Filter
jeroenbakker-atmind Dec 11, 2023
089383a
Cleanup: rename bArmature.collections -> bArmature.collections_legacy
cessen Dec 11, 2023
274dc81
Fix: update collada export code to use the new bone collections array
cessen Dec 11, 2023
eabe386
Compositor: Use full precision inputs for GPU compositor
OmarEmaraDev Dec 11, 2023
5179e1e
I18N: Enable Belarusian language in UI translations.
Dec 11, 2023
750bc5c
I18N: Updated UI translations from git/weblate (f26db8403b919d).
Dec 11, 2023
01eade9
Fix: Assert When Using Shader Builder
jeroenbakker-atmind Dec 11, 2023
8157f33
Cleanup: Move opensubdiv C-API headers to C++
HansGoudey Dec 11, 2023
aa40e9b
Cleanup: GPv3: render engine
Dec 11, 2023
f9d69da
Build: remove Cycles build options to disable RTTI
brechtvl Dec 11, 2023
cf1505d
Fix Cycles division by zero with zero length curves
brechtvl Dec 11, 2023
25e74f0
Fix (harmless) uninitialized variable usage in Cycles Metal device
brechtvl Dec 11, 2023
809365d
Cleanup: EEVEE-Next: Add pipeline defines
Dec 11, 2023
4ed9b4f
EEVEE-Next: More work into supporting horizon scan in AO node
Dec 11, 2023
bac94fe
EEVEE-Next: Make AO node respect the normal input
Dec 11, 2023
fa2f9ef
Vulkan: Generate Correct GLSL After Changing Workarounds
jeroenbakker-atmind Dec 11, 2023
b484018
Fix: EEVEE-Next: ObjectKey
pragma37 Dec 11, 2023
a32b4ec
EEVEE-Next: Make Hi-Z buffer swap on set_source
Dec 11, 2023
85f9758
Fix: EEVEE-Next: Crash when using Planar Probe
Dec 11, 2023
3df81b0
Fix: EEVEE-Next: Planar Probe rendering broken
Dec 11, 2023
5fa44c0
Fix: EEVEE-Next: Broken HiZ for planar probe
Dec 11, 2023
4c14557
Fix: EEVEE-Next: Undefined behavior with only diffuse material
Dec 11, 2023
bcea221
Realtime Compositor: Cache bokeh kernel image
OmarEmaraDev Dec 11, 2023
6bc3445
Fix: Crash copying BMesh from typo in CustomData copy
HansGoudey Dec 11, 2023
eefe19a
Fix #115994: Crashes with edit mode tools using custom data correction
HansGoudey Dec 11, 2023
3313e99
Fix: EEVEE-Next: Broken Shadow usage tagging
Dec 11, 2023
feae0b4
Curves: Support for edit mode draw tool
lduburas Dec 11, 2023
73a5826
Fix: EEVEE-Next: Film matrix
pragma37 Dec 11, 2023
8ab23ea
Fix: EEVEE-Next: Missing indirect light in ShaderToRGBA
Dec 11, 2023
fe2a7f4
EEVEE-Next: Support ShaderToRGBA on Dithered materials
Dec 11, 2023
4e10aa6
Fix #115086: Retimed hard split sound strip does not seek correctly
RichardAntalik Dec 11, 2023
d8497e4
Cleanup: Use `is_empty()` instead of `size() == 0`
HansGoudey Dec 11, 2023
99f6f13
GPv3: Avoid creating cyclic attribute when unnecessary in duplicate o…
HansGoudey Dec 11, 2023
a416677
Cleanup: Remove unnecessary "using namespace" lines
HansGoudey Dec 11, 2023
6dad7af
Cleanup: Doxygen section title case consistency
HansGoudey Dec 11, 2023
7dc6a6b
GPv3: Specialize duplicate function for curve selection domain
HansGoudey Dec 11, 2023
9af176b
Curves: Add edit mode duplicate operator
HansGoudey Dec 11, 2023
dcf9d74
Cleanup: Remove unused curves keymap items
HansGoudey Dec 11, 2023
c02784b
Cleanup: Make format
HansGoudey Dec 11, 2023
1bcf393
Cleanup: Use C++ Vector in transform translate
Dec 11, 2023
3612e0e
Fix #116058: 'Align Rotation to Target' does not consider object orie…
Dec 11, 2023
cf4558d
Fix: EEVEE-Next: Opaque dielectric packing broken
Dec 11, 2023
9313750
Metal: Add fallback path for texture atomics V2
Dec 11, 2023
249c8b0
Cleanup: Improve mesh MLoopTri struct comment
HansGoudey Dec 11, 2023
d93a594
Cleanup: compiler warnings
ideasman42 Dec 12, 2023
77204be
Cleanup: spelling in comments
ideasman42 Dec 12, 2023
dc2d7a4
License headers: conform copyright to SPDX
ideasman42 Dec 12, 2023
6e3d1be
Licenses: add MPL-2.0 (from recent inclusion of NanoVDB.h)
ideasman42 Dec 12, 2023
7f64bf4
Cleanup: rename GHOST event processing arguments
ideasman42 Dec 12, 2023
857714c
WM: warn about suspicious event time-stamps in debug builds
ideasman42 Dec 12, 2023
3b2ed40
Windows: Remove workaround for ARM64/WSL Mesa drivers
anthony-linaro Dec 12, 2023
f66ad2d
Cleanup: Suppress Unused Variables In Release Builds
jeroenbakker-atmind Dec 12, 2023
6428f23
Anim: reorder "View in Graph Editor" buttons in the context menu
PiOverFour Dec 12, 2023
1db8035
Fix: Debug assert in file_handler_test
jessey-git Dec 12, 2023
f926931
Fix #116075: OpenGL Shader Compilation On Selected Platforms
jeroenbakker-atmind Dec 12, 2023
a694831
Fix #116037: Corner Pin mask retains original alpha
OmarEmaraDev Dec 12, 2023
efc1094
Metal: Enable Shader Validation on Buildbot
jeroenbakker-atmind Dec 12, 2023
e23b8ee
BLI: destruct non-trivial types after using remove_if
Dec 12, 2023
598a480
Cleanup: correct & improve MLoopTri struct comment
ideasman42 Dec 12, 2023
f70e9cf
Fix #116024: Face set unhide crash for masked type
PratikBorhade302 Dec 12, 2023
16705f0
Fix #116000: Face set toggle visibility not working correctly
PratikBorhade302 Dec 12, 2023
d015e98
Fix Cycles ASAN error with boolean kernel arguments
brechtvl Dec 11, 2023
a43f847
Cleanup: compiler warning
brechtvl Dec 12, 2023
858349d
Fix #113728: fireflies in Principled Hair Huang with MIS
Dec 12, 2023
e503536
Fix #92621: foreach_get/set doesn't work for enum
Mysteryem Dec 12, 2023
c110045
GPU: Remove the Word OpenGL from Build Scripts
jeroenbakker-atmind Dec 12, 2023
fd3629b
Refactor: Remove dependencies on Editor code from animrig
Dec 12, 2023
36097b7
Cleanup: Use loops instead of PBVH iter macro in sculpt undo
HansGoudey Dec 12, 2023
36d5443
Cleanup: Remove unnecessary "sculpt_undo" prefix for local functions
HansGoudey Dec 12, 2023
ba6c07f
Cleanup: Simplify vertex index retrieval in sculpt undo nodes
HansGoudey Dec 12, 2023
93a3423
Cleanup: Slightly improve variable naming in sculpt undo nodes
HansGoudey Dec 12, 2023
0ad6576
Cleanup: Remove unnecessary PBVH function
HansGoudey Dec 12, 2023
d7b2141
Fix: Sculpt undo crash for multires after recent cleanup
HansGoudey Dec 12, 2023
460439a
Fix #116022: Binary PLY import fails if first data byte is 0x0A or 0x0D
aras-p Dec 12, 2023
a0640ce
PLY: extend test coverage for #116022
aras-p Dec 12, 2023
9d5164d
Build: Linux: patch ocloc to store binaries per-generation
ph0b Dec 12, 2023
c00c8b1
IO: Add support for multiple drag-n-drop files
Dec 12, 2023
a6838c8
Geometry Nodes: Change Instance Rotation node to use rotation socket
HansGoudey Dec 12, 2023
5875349
Fix: Mesh draw normals extraction ignores sharp_edge with no sharp_face
HansGoudey Dec 12, 2023
86953df
Cleanup: Change information messages to not mention "VSE" but "Video …
DarkDefender Dec 12, 2023
75f160e
Geometry Nodes: Add Active Camera input node
douglyuckling Dec 12, 2023
cd61a14
Depsgraph: avoid unnecessary image updates, for compositor caching
brechtvl Dec 12, 2023
7aee812
Fix: Out of bounds array access building PBVH for empty BMesh
HansGoudey Dec 12, 2023
a7e8d8c
Fix #115326: Memory leak toggling dyntopo on and off with empty mesh
HansGoudey Dec 12, 2023
b86d656
Fix #114284: EEVEE-Next: Light cutoff with small radius
pragma37 Dec 12, 2023
2246582
EEVEE-Next: Add Light Path node support
pragma37 Dec 12, 2023
46a9530
Cleanup: move internal Wayland cursor API's into their own doxy section
ideasman42 Dec 12, 2023
6e0037e
Fix #115878: build error with LIBDECOR & WITH_GHOST_WAYLAND_DYNLOAD=OFF
ideasman42 Dec 12, 2023
1d0179a
Cleanup: Move mesh update tags to DNA struct
HansGoudey Dec 12, 2023
c53e220
Cleanup: Use C++ attribute API instead of CustomData API
HansGoudey Dec 12, 2023
402cec5
Fix #112293: wrong console line cursor position with multi-byte chars
PiOverFour Dec 12, 2023
c4d91ad
Fix: EEVEE-Next: Numerical imprecision with emission only volumes
Dec 12, 2023
c1130ee
Cleanup: EEVEE-Next: Avoid use of float math when needed
Dec 12, 2023
79ade78
Cleanup: Move draw_manager_text.h to C++
HansGoudey Dec 13, 2023
768cd9b
Cleanup: Remove inline functions and extra includes from draw extraction
HansGoudey Dec 13, 2023
2d171aa
Tests: ensure BLI_str_utf8_offset_from_index index is logically clamped
ideasman42 Dec 13, 2023
7ad2c71
Cleanup: remove redundant clamp with BLI_str_utf8_offset_from_index
ideasman42 Dec 13, 2023
ac11ccd
EEVEE-Next: Add Translucent BSDF support
Dec 13, 2023
7f8763d
Fix: EEVEE-Next: OpenGL errors in probe capture
Dec 13, 2023
a7ed0e2
USD: Apply MaterialBindingAPI to Curves with materials
jessey-git Dec 13, 2023
4aff321
Fix: EEVEE-Next: Broken surfel lighting
Dec 13, 2023
c9a810d
WM: correct error printing for suspicious time-stamps
ideasman42 Dec 13, 2023
a56d0c7
Fix GHOST/Wayland handling of out-of-order time-stamps
ideasman42 Dec 13, 2023
356480f
Realtime Compositor: Add static cached images
OmarEmaraDev Dec 13, 2023
23df139
IMB: Read single-layer XYZ channels as a combined image
OmarEmaraDev Dec 13, 2023
3f485c8
Geometry Nodes: add support for blackbody shader node
Dec 13, 2023
105db1a
Fix #115907: Select similar edge direction skips opposite direction
lichtwerk Dec 13, 2023
931c188
Compositor: Refactor File Output node
OmarEmaraDev Dec 13, 2023
123da34
Cleanup: Move Cryptomatte node defines into enums
OmarEmaraDev Dec 13, 2023
048f70e
GPU: Add function for setting float array uniforms
OmarEmaraDev Dec 13, 2023
fb8bf8b
LibOverride: Modify automatic handling of which IDs to override in a …
Dec 6, 2023
f01bc93
Cleanup: Move `BKE_blendfile` headers to CPP.
Dec 13, 2023
1a4f410
Cleanup: rename dynamic paint specific volume grid
JacquesLucke Dec 13, 2023
3370228
Geometry Nodes: rename ValueOrField to SocketValueVariant
JacquesLucke Dec 13, 2023
5519a48
Cleanup: remove unnecessary alias
JacquesLucke Dec 13, 2023
65274dc
Fix #116130: Mirrored custom normals broken again
lichtwerk Dec 13, 2023
b52a071
Cleanup: Remove unnecessary Mesh C-API functions
HansGoudey Dec 13, 2023
4c1817e
Cleanup: Un-inline mesh data access functions
HansGoudey Dec 13, 2023
766b0ce
Fix #116122: Frame Selected/All operators incorrectly frame view
HansGoudey Dec 13, 2023
30d9596
Cleanup: Forward declare some classes in mesh headers
HansGoudey Dec 13, 2023
6a1009c
Cleanup: Remove const for Span and by-value types in headers
HansGoudey Dec 13, 2023
e657aa2
Cleanup: Move two mesh functions to C++ header
HansGoudey Dec 13, 2023
96dff1d
Fix: Warnings and build error after previous forward declaration commit
HansGoudey Dec 13, 2023
51bb324
Fix #116144: Tag update relations for Active Camera node
illua1 Dec 13, 2023
7e4c2b2
Fix: EEVEE-Next: DeferredProbelLayer emissive materials
pragma37 Dec 13, 2023
6525256
Fix #116025: Uninitialized value when versioning old node trees
HansGoudey Dec 13, 2023
f7383cf
Geometry Nodes: use dynamic declaration for switch node
JacquesLucke Dec 13, 2023
6c40adc
Fix: GPU: from_up_axis
pragma37 Dec 13, 2023
f831803
Fix #115590: UV window menus disappearing
Dec 13, 2023
b840ba1
Fix (unreported) crash when trying to link/append while a linked scen…
Dec 13, 2023
60a9c8e
Fix #115486: Linked scenes disappear after reopening file.
Dec 13, 2023
937c4ed
Fix: from_up_axis sign
pragma37 Dec 13, 2023
8e9ce4d
Fix: EEEVEE-Next: Volume lighting
pragma37 Dec 13, 2023
5092fe6
VSE: implement selection of "linked" retiming keys
RichardAntalik Dec 13, 2023
f372ac6
VSE: Keep exiting retiming when changing speed
RichardAntalik Dec 13, 2023
fd8bb41
Cycles: Enable HIP devices for OpenImageDenoise
Dec 13, 2023
639de68
Fix eyedropper outside blender on mac
rajveermalviya Dec 13, 2023
ac753fe
Fix: Cycles assert with CPU denoiser
brechtvl Dec 13, 2023
463dc4d
Fix #116137: Overflow causing event time false positive warnings
harley-acheson Dec 13, 2023
cdb2f1e
Fix #116140: GPU subdivision ignores completely smooth shading
HansGoudey Dec 13, 2023
173a4df
Fix invalid size of allocated looptris array
ideasman42 Dec 14, 2023
adb74ad
Cleanup: follow convention for naming array lengths
ideasman42 Dec 14, 2023
a4af406
Clenaup: spelling in comments
ideasman42 Dec 14, 2023
d8ffa64
Cleanup: merge doc-strings, correct comments in WM_api.hh
ideasman42 Dec 14, 2023
931b255
Refactor: move BEZKEYTYPE define to DNA
ideasman42 Dec 14, 2023
944e048
Cleanup: clarify naming for MLoopTri
ideasman42 Dec 14, 2023
0d9acf8
Cleanup: match argument naming for headers/source
ideasman42 Dec 14, 2023
664b49c
Cleanup: replace C expressions with plain text in cloth errors
ideasman42 Dec 14, 2023
bff5ffc
Cleanup: use naming for the size of a looptris array
ideasman42 Dec 14, 2023
3241db3
Docs: correct code comment for LaplacianSystem::tris
ideasman42 Dec 14, 2023
e5cb2b2
Fix #116141: Missing task isolation when storing sculpt undo node
HansGoudey Dec 14, 2023
410e202
Cleanup: quiet parentheses warning
ideasman42 Dec 14, 2023
4f609a4
Cleanup: typo in internal ghost/wayland prefix
ideasman42 Dec 14, 2023
42e7d9f
GHOST/Wayland: unbreak build without threaded event handling
ideasman42 Dec 14, 2023
3e635c3
GHOST/Wayland: set windows scale on creation when it's known
ideasman42 Dec 14, 2023
a1bee22
Cleanup: duplicate assert left in by mistake
ideasman42 Dec 14, 2023
ba33dba
Fix window frames not following blender window with fractional scaling
ideasman42 Dec 14, 2023
39f378d
Fix incorrectly sized maximized windows on Wayland + KDE
ideasman42 Dec 14, 2023
a7bcee8
Fix crash with change to window initialization order
ideasman42 Dec 14, 2023
2db12cc
Fix #116121: Resolve framebuffer resize issue in Metal
Dec 14, 2023
a8e1399
Realtime Compositor: Implement Cryptomatte node
OmarEmaraDev Dec 14, 2023
92ad16a
Anim: Don't use keying sets when inserting keyframes during autokeying
Dec 14, 2023
5c868e9
Fix #115581: Channel Context Menu mis-labeled
Draise14 Dec 14, 2023
9bfd7de
Refactor: Move ED_id_action_ensure to animrig
Dec 14, 2023
f79da9f
Cleanup: remove libdecor workaround for fractional scale
ideasman42 Dec 14, 2023
7df6d9e
Build: update Windows ocloc to store binaries per generation
brechtvl Dec 14, 2023
9479b49
GHOST/Wayland: remove workaround when resizing windows with LIBDECOR
ideasman42 Dec 14, 2023
1a998c7
Fix: Keying Channel Defaults
Dec 14, 2023
1e931f5
Anim: Bake Channel operator
Dec 14, 2023
40a89c0
GHOST/X11: Enable desktop sample capability
rajveermalviya Dec 14, 2023
5197dd2
Cleanup: use local variable, replace pointer with reference
ideasman42 Dec 14, 2023
915358f
Cleanup: Remove unused EnumPropertyItem
Dec 14, 2023
a52a362
Studiolights: Remove Unused Options
jeroenbakker-atmind Dec 14, 2023
1e0bf33
ImBuf: optimize IMB_transform
aras-p Dec 14, 2023
5b05320
Fix #116017: Mesh edit mode vertex slide allocation ignores alignment
HansGoudey Dec 14, 2023
451aa56
Cleanup: Move BLI_delaunay_2d.hh to C++
HansGoudey Dec 14, 2023
4a34dcb
Studiolight: Free Resources for Unused Lights.
jeroenbakker-atmind Dec 14, 2023
5cac8e2
VSE: reduce effects code duplication, making gaussian blur faster in …
aras-p Dec 14, 2023
a494d6a
Cleanup: Remove unnecessary C API for delaunay triangulation
HansGoudey Dec 14, 2023
b5e7e6b
Cleanup: Anim, add explanation to bone collection assign operator
drsybren Dec 11, 2023
999c0f6
Cleanup: Fix compiler warning in face group boundaries node
illua1 Dec 14, 2023
9bf942d
Cleanup: Conver macros into functions
pragma37 Dec 14, 2023
bb2a289
Cleanup: Use utility function to calculate face normal
HansGoudey Dec 14, 2023
34bf1f6
Cleanup: Slightly simplify delaunay triangulation input gathering
HansGoudey Dec 14, 2023
5be9a1c
Cleanup: Slightly simplify some loops in delaunary triangulation
HansGoudey Dec 14, 2023
5fa4fec
Merge branch 'main' into sync_blender_master
Draise14 Dec 14, 2023
262572a
Cleanup: Move PBVH update functions to C++ namespace
HansGoudey Dec 14, 2023
f15bca6
Cleanup: Remove useless PBVH update function
HansGoudey Dec 14, 2023
1d94003
Cleanup: Remove unnecessary sculpt visibility update
HansGoudey Dec 14, 2023
71b6f0e
Cleanup: Pass vertex update array as argument when building PBVH
HansGoudey Dec 14, 2023
ce4ec6d
Cleanup: Tweak PBVH node face indices functions, add comments
HansGoudey Dec 14, 2023
4c1f766
Cleanup: Remove unnecessary PBVH threading settings function
HansGoudey Dec 14, 2023
87e8a28
Fix: PBVH has face sets check ignored for BMesh
HansGoudey Dec 14, 2023
8c6898c
Fix #116135: Ensure blf_font_width_to_rstrlen always works
harley-acheson Dec 14, 2023
e36222a
Merge branch 'main' into sync_blender_master
Draise14 Dec 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 10 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,13 @@ trim_trailing_whitespace = true
insert_final_newline = true
indent_style = tab
indent_size = 4
max_line_length = 120
max_line_length = 120

# HTML
[*.html]
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
indent_style = space
indent_size = 2
max_line_length = 99
39 changes: 39 additions & 0 deletions .gitea/issue_template/api_docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Python API Documentation
about: File a bug report for the python API documentation
labels:
- "Type/Report"
- "Status/Needs Triage"
- "Priority/Normal"
body:
- type: markdown
attributes:
value: |
### Instructions
Thank you for reporting an issue with Blender's Python API documentation.
If you meant to file an issue with the software please create a normal [bug report](https://projects.blender.org/blender/blender/issues/new?template=.gitea%2fissue_template%2fbug.yaml).

Please add to the description below explain the issue at hand.
Use **Report issue on this page** at the bottom of the page with an issue to autofill some information.

Including details, examples, or suggested fixes are appreated and will help resolve the issue as soon as possible.

- type: textarea
id: body
attributes:
label: "Description"
hide_label: true
value: |
**Page Information**
Blender Version: (example: 4.0, edbf15d3c044, main)
[Permanent Link](https://docs.blender.org/api/current/) (Update me to the URL of the page with an issue)

**Short description of issue**
[Please fill out a short description of the issue here]


- type: markdown
attributes:
value: |
### Help the developers

Bug fixing is important, the developers will handle reports swiftly. For that reason, carefully provide exact steps and a **small and simple Python scipt** if neccesarry to reproduce the problem. You do your half of the work, then we do our half!
45 changes: 34 additions & 11 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,15 +53,11 @@ endif()
# quiet output for Makefiles, 'make -s' helps too
# set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)

# global compile definitions since add_definitions() adds for all.
# Global compile definitions since add_definitions() adds for all.
# _DEBUG is a Visual Studio define, enabled for all platforms.
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
$<$<CONFIG:Debug>:DEBUG;_DEBUG>
$<$<CONFIG:Release>:NDEBUG>
$<$<CONFIG:MinSizeRel>:NDEBUG>
$<$<CONFIG:RelWithDebInfo>:NDEBUG>
$<$<CONFIG:Debug>:_DEBUG>
)


# -----------------------------------------------------------------------------
# Set policy

Expand Down Expand Up @@ -99,7 +95,6 @@ endif()

include(build_files/cmake/macros.cmake)


# -----------------------------------------------------------------------------
# Initialize Project

Expand Down Expand Up @@ -733,6 +728,9 @@ mark_as_advanced(WITH_CXX_GUARDEDALLOC)
option(WITH_ASSERT_ABORT "Call abort() when raising an assertion through BLI_assert()" ON)
mark_as_advanced(WITH_ASSERT_ABORT)

option(WITH_ASSERT_RELEASE "Build with asserts enabled even for non-debug configurations" OFF)
mark_as_advanced(WITH_ASSERT_RELEASE)

if((UNIX AND NOT APPLE) OR (CMAKE_GENERATOR MATCHES "^Visual Studio.+"))
option(WITH_CLANG_TIDY "\
Use Clang Tidy to analyze the source code \
Expand Down Expand Up @@ -762,8 +760,8 @@ endif()

# Unit testing
option(WITH_GTESTS "Enable GTest unit testing" OFF)
option(WITH_OPENGL_RENDER_TESTS "Enable OpenGL render related unit testing (Experimental)" OFF)
option(WITH_OPENGL_DRAW_TESTS "Enable OpenGL UI drawing related unit testing (Experimental)" OFF)
option(WITH_GPU_RENDER_TESTS "Enable GPU render related unit testing (EEVEE, Workbench and Grease Pencil)" OFF)
option(WITH_GPU_DRAW_TESTS "Enable GPU drawing related unit testing (GPU backends and draw manager)" OFF)
option(WITH_COMPOSITOR_REALTIME_TESTS "Enable regression testing for realtime compositor" OFF)
if(UNIX AND NOT (APPLE OR HAIKU))
option(WITH_UI_TESTS "\
Expand Down Expand Up @@ -1786,13 +1784,21 @@ if(CMAKE_COMPILER_IS_GNUCC)
CXX_WARN_NO_SUGGEST_OVERRIDE -Wno-suggest-override
CXX_WARN_UNINITIALIZED -Wuninitialized

# NOTE(@ideasman42): In GCC 13.2.1 on Linux this causes internal compiler errors.
# The crashes can be resolved by disabling the flag per module (but not via pragmas).
# However this also causes a type mix-up FreeStyle (Blender & FreeStyle's `Curve`)
# so it seems to impact GCC's the internal state enough that it's too risky to enable.
# When this is resolved the check can be enabled for fixed GCC versions.
#
# Prevents linking errors with MSVC.
# `CXX_WARN_MISMATCHED_TAGS -Wmismatched-tags`

# Useful but too many false positives and inconvenient to suppress each occurrence.
CXX_WARN_NO_STRINGOP_OVERREAD -Wno-stringop-overread
CXX_WARN_NO_STRINGOP_OVERFLOW -Wno-stringop-overflow

# Use `[[fallthrough]]` or `ATTR_FALLTHROUGH` macro to suppress.
CXX_WARN_IMPLICIT_FALLTHROUGH -Wimplicit-fallthrough=5

)

# causes too many warnings
Expand Down Expand Up @@ -1895,6 +1901,9 @@ elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
CXX_WARN_UNDEF_PREFIX -Wundef-prefix
CXX_WARN_UNUSED_PARAMETER -Wunused-parameter

# Prevents linking errors with MSVC.
CXX_WARN_MISMATCHED_TAGS -Wmismatched-tags

# Gives too many unfixable warnings.
# `C_WARN_UNUSED_MACROS -Wunused-macros`
# `CXX_WARN_UNUSED_MACROS -Wunused-macros`
Expand Down Expand Up @@ -2165,6 +2174,20 @@ if(WITH_ASSERT_ABORT)
add_definitions(-DWITH_ASSERT_ABORT)
endif()

# NDEBUG is the standard C define to disable asserts.
if(WITH_ASSERT_RELEASE)
# CMake seemingly be setting the NDEBUG flag on its own already on some configurations
# therefore we need to remove the flags if they happen to be set.
remove_cc_flag("-DNDEBUG") # GCC/CLang
remove_cc_flag("/DNDEBUG") # MSVC
else()
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
$<$<CONFIG:Release>:NDEBUG>
$<$<CONFIG:MinSizeRel>:NDEBUG>
$<$<CONFIG:RelWithDebInfo>:NDEBUG>
)
endif()

# message(STATUS "Using CFLAGS: ${CMAKE_C_FLAGS}")
# message(STATUS "Using CXXFLAGS: ${CMAKE_CXX_FLAGS}")

Expand Down
1 change: 1 addition & 0 deletions build_files/build_environment/cmake/ocloc.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ ExternalProject_Add(external_ocloc
PREFIX ${BUILD_DIR}/ocloc
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ocloc ${DEFAULT_CMAKE_FLAGS} ${OCLOC_EXTRA_ARGS}
INSTALL_DIR ${LIBDIR}/ocloc
PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/ocloc/src/external_ocloc/ < ${PATCH_DIR}/ocloc.diff
)

add_dependencies(
Expand Down
1 change: 1 addition & 0 deletions build_files/build_environment/cmake/openimagedenoise.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ if(NOT APPLE)
${OIDN_EXTRA_ARGS}
-DOIDN_DEVICE_SYCL=ON
-DOIDN_DEVICE_SYCL_AOT=OFF
-DOIDN_DEVICE_HIP=ON
-DLEVEL_ZERO_ROOT=${LIBDIR}/level-zero/lib
)
endif()
Expand Down
6 changes: 0 additions & 6 deletions build_files/build_environment/cmake/openvdb.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,6 @@ set(OPENVDB_EXTRA_ARGS
)

set(OPENVDB_PATCH ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff)
if(APPLE)
set(OPENVDB_PATCH
${OPENVDB_PATCH} &&
${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb_metal.diff
)
endif()

ExternalProject_Add(openvdb
URL file://${PACKAGE_DIR}/${OPENVDB_FILE}
Expand Down
14 changes: 14 additions & 0 deletions build_files/build_environment/patches/ocloc.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
diff --git a/shared/offline_compiler/source/ocloc_fatbinary.cpp b/shared/offline_compiler/source/ocloc_fatbinary.cpp
index 98a1c0e..4d9b5b0 100644
--- a/shared/offline_compiler/source/ocloc_fatbinary.cpp
+++ b/shared/offline_compiler/source/ocloc_fatbinary.cpp
@@ -286,7 +286,9 @@ int buildFatBinaryForTarget(int retVal, const std::vector<std::string> &argsCopy
productConfig = ProductConfigHelper::parseMajorMinorRevisionValue(argHelper->productConfigHelper->getProductConfigFromDeviceName(product));
}

- fatbinary.appendFileEntry(pointerSize + "." + productConfig, pCompiler->getPackedDeviceBinaryOutput());
+ // Storing binaries under the hardware prefix instead of the full architecture version number,
+ // as they would otherwise be ignored if they do not fully match that of the execution device.
+ fatbinary.appendFileEntry(pointerSize + "." + NEO::hardwarePrefix[argHelper->productConfigHelper->getProductFamilyFromDeviceName(productConfig)], pCompiler->getPackedDeviceBinaryOutput());
return retVal;
}