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
path: root/intern
AgeCommit message (Collapse)Author
2022-08-31Fix returning a freed context when initialization fails for GHOST/Win32Campbell Barton
2022-08-31Fix uninitialized variable use for ID3D11RenderTargetViewCampbell Barton
When 'm_render_target' was NULL, backbuffer_res would be used without being assigned. While it seems likely this code-path is rarely used (if at all), resolve the logical error.
2022-08-31Cleanup: check GetKeyboardState succeeds before using it's valuesCampbell Barton
Quiets compiler warning.
2022-08-31Cleanup: tablet press could fall through to release on GHOST/Win32Campbell Barton
Introduced in [0], checking the logic here, there seems to be no reason a press event should ever run release logic, relocate break statement. In practice this was unlikely to cause problems as peeking into press events would need to fail, peeking into release would need to succeed. Even so, better avoid accidental fall through in switch statements. [0]: 6f158f834dcfa638639391f37afcb2ca8457cb45
2022-08-31Cleanup: remove 'else' after returnCampbell Barton
2022-08-31Cleanup: use bool for GHOST_SystemWin32::setConsoleWindowState returnCampbell Barton
2022-08-31Node: Mix nodeCharlie Jolly
This patch is a response to T92588 and is implemented as a Function/Shader node. This node has support for Float, Vector and Color data types. For Vector it supports uniform and non-uniform mixing. For Color it now has the option to remove factor clamping. It replaces the Mix RGB for Shader and Geometry node trees. As discussed in T96219, this patch converts existing nodes in .blend files. The old node is still available in the Python API but hidden from the menus. Reviewed By: HooglyBoogly, JacquesLucke, simonthommes, brecht Maniphest Tasks: T92588 Differential Revision: https://developer.blender.org/D13749
2022-08-30Cleanup: simplify comparison, clarify commentCampbell Barton
2022-08-30Cleanup: spelling in commentsCampbell Barton
2022-08-30Cleanup: formatCampbell Barton
2022-08-29Build: automatically disable WITH_GHOST_WAYLAND if missing librariesBrecht Van Lommel
Same as other build options, don't make it a hard requirement to have Wayland libraries installed when it gets enabled by default. Also fixes wayland-protocols not being found on the buildbot.
2022-08-29Cycles: add option to specify OptiX runtime root directoryBrecht Van Lommel
This allows individual users or Linux distributions to specify a directory Cycles will automatically look for the OptiX include folder, to compile kernels at runtime. It is still possible to override this with the OPTIX_ROOT_DIR environment variable at runtime. Based on patch by Sebastian Parborg. Ref D15792
2022-08-29Cycles: disable Scrambling Distance UI when using Sobol BurleyBrecht Van Lommel
Contributed by Alaska. Differential Revision: https://developer.blender.org/D15794
2022-08-29Cleanup: move Cycles display driver context handling to render moduleBrecht Van Lommel
This is highly coupled to Blender logic so doesn't belong in Cycles.
2022-08-29Allocator: add MEM_cnew_arrayBrecht Van Lommel
This is a more C++ friendly version MEM_calloc_arrayN, like MEM_cnew is for MEM_callocN. For cases where data structures are still C and Vector or Array don't work.
2022-08-29Merge branch 'blender-v3.3-release'Nikita Sirgienko
2022-08-29Cycles: Remove "return" and "assert" from oneAPI kernel codeNikita Sirgienko
2022-08-29Merge branch 'blender-v3.3-release'Nikita Sirgienko
2022-08-29Cycles: Increased minimum supported driver for Windows in oneAPINikita Sirgienko
2022-08-27CMake: include missing header filesCampbell Barton
2022-08-27CMake: cleanup, rename INC_HD_CYCLES to SRC_HD_CYCLES_HEADERSCampbell Barton
Our convention is to use `INC_*` for include directories, this caused `make check_cmake` to incorrectly fail as it expected these files to be include directories.
2022-08-27Cleanup: simplify key input handling for GHOST/Win32Campbell Barton
- Don't create utf8 text for key release events. - Reduce variable scope.
2022-08-27Cleanup: add missing braces for GHOST/Win32Campbell Barton
2022-08-27Cleanup: use C style comments for GHOST/Win32 textCampbell Barton
2022-08-27Fix T100582: Windows-10 Switching Desktops locks Ctrl KeyCampbell Barton
Regression in recent fix for T66088 [0]. caused by much older problem introduced with [1] & [2]. Unlike other platforms, as of [1] GHOST/Win32 was keeping track of the pressed modifier keys. Since GHOST/Win32 cleared the modifier state on window activation [2] and only changes to modifier state would generate key events, activating the window and releasing the modifier would not send the release event. Resolve this by removing the stored modifier state from GHOST/Win32, always passing modifier press/release events through to Blender (matching other GHOST back-ends). Instead, use key-repeat detection to prevent repeated modifier keys from being generated - an alternate solution to T26446. [0]: 8bc76bf4b957c51ddc5a13c6305f05c64b218a27 [1]: d6b43fed313b60bb6a269680b3c5622955b8a690 [2]: 6b987910e43ff5f91512a3c361ea3141590d4e45
2022-08-26Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-26Fix T55284: error in Hybrid MultiFractal Musgrave textureLuis Pereira
The calculation was revised to address two issues: * Discontinuities occurring when detail was a non-integer greater than 2. * Levels of detail in the interval [0,1) repeating the levels of detail in the interval [1,2). This fixes Cycles, Eevee and geometry nodes. Differential Revision: https://developer.blender.org/D15785
2022-08-26Cleanup: spelling in comments, formatCampbell Barton
2022-08-26Fix incorrect UI scaling after changing monitors DPI under WaylandCampbell Barton
Add a GHOST_kEventWindowDPIHintChanged event to ensure the UI is properly updated.
2022-08-25Merge branch 'blender-v3.3-release'Sergey Sharybin
2022-08-25Fix Cycles oneAPI for a newer DPC++ compiler versionSergey Sharybin
2022-08-25Fix accessing freed memory for GHOST/Wayland clipboard accessCampbell Barton
2022-08-24Merge branch 'blender-v3.3-release'Brecht Van Lommel
2022-08-24Fix WITH_CYCLES_ONEAPI_BINARIES issues with make releaseBrecht Van Lommel
Fix typo in blender_release.cmake, and ensure that "make release" still works when ocloc is not available. While a fatal error is useful for debugging, the current convention is to disable features, especially in cases like this where there is no simple way to make the feature work. Differential Revision: https://developer.blender.org/D15774
2022-08-23Cleanup: match names between functions & declarationsCampbell Barton
2022-08-22Merge branch 'blender-v3.3-release'Jacques Lucke
2022-08-22Fix T90706: crash when deleting fluid sim geometrySonny Campbell
Differential Revision: https://developer.blender.org/D15299
2022-08-19Merge branch 'blender-v3.3-release'Brecht Van Lommel
2022-08-19Fix T96133: Cycles viewport render crash with NVIDIA GPUs on macOSBrecht Van Lommel
2022-08-19Cleanup: replace CHECK_TYPE macro with static_assertBrecht Van Lommel
To avoid conflicts with BLI headers and simplify code.
2022-08-19Cycles: add Sobol-Burley sampling patternNathan Vegdahl
Based on the paper "Practical Hash-based Owen Scrambling" by Brent Burley, 2020, Journal of Computer Graphics Techniques. It is distinct from the existing Sobol sampler in two important ways: * It is Owen scrambled, which gives it a much better convergence rate in many situations. * It uses padding for higher dimensions, rather than using higher Sobol dimensions directly. In practice this is advantagous because high-dimensional Sobol sequences have holes in their sampling patterns that don't resolve until an unreasonable number of samples are taken. (See Burley's paper for details.) The pattern reduces noise in some benchmark scenes, however it is also slower, particularly on the CPU. So for now Progressive Multi-Jittered sampling remains the default. Differential Revision: https://developer.blender.org/D15679
2022-08-19Fix T89399: Mouse wrapping causes erratic movementGermano Cavalcante
As mentioned in T89399, "the source of this bug is that cursor wrap moves the cursor, but when it later checks the mouse position it hasn't yet been updated, so it re-wraps". As far as I could see, this happens for two reasons: 1. During the first warp, there are already other mousemove events in the queue with an outdated position. 2. Sometimes Windows occasionally and inexplicably ignores `SetCursorPos()` or `SendInput()` events. (See [1]) The solution consists in checking if the cursor is inside the bounds right after wrapping. If it's not inside, it indicates that the wrapping either didn't work or the event is out of date. In these cases do not change the "accum" values. 1. https://github.com/libsdl-org/SDL/blob/f317d619ccd22e60cebf1b09d716d3985359c981/src/video/windows/SDL_windowsmouse.c#L255) Maniphest Tasks: T89399 Differential Revision: https://developer.blender.org/D15707
2022-08-18Merge branch 'blender-v3.3-release'Brecht Van Lommel
2022-08-18Fix T100246: Cycles GPU render error when adding AO node during viewport renderBrecht Van Lommel
2022-08-18Cycles: disable Metal inlining optimization on Apple GPUsBrecht Van Lommel
This gave a 1.1x speedup, however also leads to very long compile times that make it seems like Blender has stopped working. This can be brought back in the future behind an option that users can explicitly enabled. Fix T100102 Ref D14923, D14763, T92212
2022-08-18CMake: always unset CMAKE_REQUIRED_* variables after useCampbell Barton
Always unset these variables after use as they could interfere with other checks made afterwards.
2022-08-18CMake: support building with musl libclistout
Instead of using macros like GLIBC we can use the CMake build systems internal functions to check if some header or functions are present on the running system's libc. Add ./build_files/cmake/have_features.cmake to add checks for platform features which can be used to set defines for source files that require them. Reviewed By: campbellbarton Ref D15696
2022-08-17Metaball: Evaluate metaball objects as mesh componentsHans Goudey
With the ultimate goal of simplifying drawing and evaluation, this patch makes the following changes and removes code: - Use `Mesh` instead of `DispList` for evaluated basis metaballs. - Remove all `DispList` drawing code, which is now unused. - Simplify code that converts evaluated metaballs to meshes. - Store the evaluated mesh in the evaluated geometry set. This has the following indirect benefits: - Evaluated meshes from metaball objects can be used in geometry nodes. - Renderers can ignore evaluated metaball objects completely - Cycles rendering no longer has to convert to mesh from `DispList`. - We get closer to removing `DispList` completely. - Optimizations to mesh rendering will also apply to metaball objects. The vertex normals on the evaluated mesh are technically invalid; the regular calculation wouldn't reproduce them. Metaball objects don't support modifiers though, so it shouldn't be a problem. Eventually we can support per-vertex custom normals (T93551). Differential Revision: https://developer.blender.org/D14593
2022-08-17Cleanup: Fix "unused m_system" warningsSebastian Parborg
The dummy `m_system` variable is not needed in the GHOST_NULL classes
2022-08-17GHOST/EGL: Only draw grey into buffers attached to windowsCampbell Barton
Avoid redundant drawing, match GHOST/GLX behavior.