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-06-24Cycles: stop Metal rendering on command buffer errorBrecht Van Lommel
If there is an error we should stop rendering, instead of finishing with a wrong render result or reporting a wrong benchmark time. Ref T96519 Differential Revision: https://developer.blender.org/D15287
2022-06-24GHOST/Wayland: support client-side window decorationsChristian Rauch
This implements client-side window decorations for moving and resizing windows and HiDPI support. This functionality depends on the external project 'libdecor' that is currently a build option: WITH_GHOST_WAYLAND_LIBDECOR. Reviewed by: brecht, campbellbarton Ref D7989
2022-06-24Fix T98427: Crash adding quick effects smoke from PythonCampbell Barton
Manta flow used the `__main__` namespace which it was executed in, this caused a bug when calculating fluid from Python, which clears it's `__main__` name-space after execution. This caused Manta-flows name space to be cleared too. Resolve this by creating a separate name-space for manta-flow. Reviewed by: SonnyCampbell_Unity Ref D15269
2022-06-24GHOST/Wayland: support for cursor warp with hidden/wrapped grab enabledCampbell Barton
As grab already uses it's own virtual coordinates, cursor warping can be used when grab is enabled. Currently nothing depends on this however it could be useful in future.
2022-06-24Cleanup: add C++ compatible WL_ARRAY_FOR_EACH macroCampbell Barton
2022-06-24Cleanup: remove unused cursor struct members in GHOST/WaylandCampbell Barton
2022-06-24Cleanup: use const arguments for GHOST/WaylandCampbell Barton
2022-06-24GHOST: use GHOST_ASSERT for non-release buildsCampbell Barton
GHOST_ASSERT now matches BLI_assert, which is only ignored for release builds. Otherwise it prints or asserts when WITH_ASSERT_ABORT is enabled.
2022-06-24Docs: correct GHOST_TimerProcPtr time doc-stringCampbell Barton
2022-06-24Fix outdated pressure/tilt for tablet motions events under GHOST/WaylandCampbell Barton
Accumulate tablet data before generating an event using the 'frame' callback.
2022-06-23Cleanup: make formatBrecht Van Lommel
2022-06-23Cyles: switch primitive.h inline hints to forceinlineXavier Hallade
This change helps decrease Intel GPU binaries compile time by 5-10 minutes without impacting other backends. Reviewed By: sergey, brecht Differential Revision: http://developer.blender.org/D15273
2022-06-23Cycles: unify math functions namesAndrii Symkin
This patch unifies the names of math functions for different data types and uses overloading instead. The goal is to make it possible to swap out all the float3 variables containing RGB data with something else, with as few as possible changes to the code. It's a requirement for future spectral rendering patches. Differential Revision: https://developer.blender.org/D15276
2022-06-23Cycles: Add diagnostic tracing of MTLLibrary compilation timeMichael Jones
Reviewed By: sergey Differential Revision: https://developer.blender.org/D15268
2022-06-23Fix key repeat continuing after a window loses focus for GHOST/WaylandCampbell Barton
Also remove NULL checks in keyboard enter/leave handlers, as they didn't serve any purpose.
2022-06-23Fix key repeat behavior for GHOST/WaylandCampbell Barton
- Respect modifier keys (Shift press/release didn't change the case). - Changing modifiers resets the timer instead of canceling key-repeat. - Releasing keys (besides the key being repeated) resets the timer instead of canceling key repeat. This makes key-repeat behave the same way as GTK & WIN32 text input.
2022-06-23Cycles: Tidy of KernelData patchup codeMichael Jones
Reviewed By: sergey Differential Revision: https://developer.blender.org/D15267
2022-06-23Cycles: Distinguish Apple GPUs by core countMichael Jones
This patch suffixes Apple GPU device names with `(GPU - # cores)` so that variant GPUs with the same chipset can be distinguished. Currently benchmark scores for these M1 family GPUs are being incorrectly merged: - M1: 7 or 8 cores - M1 Pro: 14 or 16 cores - M1 Max: 24 or 32 cores - M1 Ultra: 48 or 64 cores Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D15257
2022-06-22Fix T99078: Crash closing the file selector in WaylandCampbell Barton
Ensure wayland handlers run that clear the window immediately after the window has been removed so dangling pointers to the window aren't left set.
2022-06-21Cleanup: use full names for generated wayland headers, use own directoryCampbell Barton
Instead of providing our own names for wayland headers, use the filename component as the basis for the header names. This matches most reference documentation for Wayland. Also generate client protocols into a sub-directory `libwayland`, instead of generating headers into the ghost directory. Making the include path more specific & makes it easier to differentiate generated headers from other build files.
2022-06-21Fix error in GHOST_ASSERT under WaylandCampbell Barton
2022-06-20Cleanup: renaming and consistency for kernel dataBrecht Van Lommel
* Rename "texture" to "data array". This has not used textures for a long time, there are just global memory arrays now. (On old CUDA GPUs there was a cache for textures but not global memory, so we used to put all data in textures.) * For CUDA and HIP, put globals in KernelParams struct like other devices. * Drop __ prefix for data array names, no possibility for naming conflict now that these are in a struct.
2022-06-20Cleanup: avoid duplicate lookups when setting the cursorCampbell Barton
Also use `const char *` for cursor names as there isn't an advantage in using `std::string`.
2022-06-20Fix setting the custom cursor for Hi-DPI displays in WaylandCampbell Barton
Changing the cursor would intermittently close Blender's window (without crashing). This happened because the size of a cursor must be the a multiple of the scale, for themed cursor this is always true but with custom cursors it's not. Separate theme scale from custom cursor scale to avoid this bug. In the future we can support Hi-DPI custom cursors, for now they're scale is always set to 1.
2022-06-20GHOST/Wayland: refactor cursor handling & fix errors hiding the cursorCampbell Barton
- Support showing & hiding the cursor without setting the buffer, needed to switch between software and hardware cursor. - Track the state of the software/hardware cursor. This resolves glitches switching between cursors sometimes hiding the cursor.
2022-06-18GHOST/Wayland: implement getAllDisplayDimensionsCampbell Barton
2022-06-18Fix initial window size being scaled down for Hi-DPI displays in WaylandCampbell Barton
getMainDisplayDimensions return values were scaled by the UI-scale, instead of returning pixel values. Also correct an error accessing the rotated monitor size, which happened to be harmless as the value isn't used at the moment.
2022-06-18GHOST/Wayland: support displaying custom software cursorsCampbell Barton
Add a method to access the custom cursor from GHOST which is used for drawing a software cursor. This means the knife tools cursor now work as expected. Although non-custom cursors are still not supported.
2022-06-18Fix crash in wayland when closing a windowCampbell Barton
The focus_pointer only pointer was only cleared when the window existed, which caused a dangling focus_pointer when closing a window.
2022-06-18Fix T98793: Wayland clamps cursor movement fails with gnome-shellCampbell Barton
The current gnome-shell (v42.2) has a bug where grabbing the cursor doesn't scale the region when confining it to the window. For Hi-DPI displays this means the cursor may be confined to a quarter of the window, making grab unusable. Even though this has been fixed up-stream the issue remains in the latest release - so workaround the problem by implementing window confined grab using a software cursor. This is only used gnome-shell for displays that use Hi-DPI scaling.
2022-06-18GHOST: add GHOST_Rect.clampPoint methodCampbell Barton
Method for clamping a point inside a rectangle.
2022-06-17Cleanup: add verbose logging category names instead of numbersBrecht Van Lommel
And use them more consistently than before.
2022-06-17Cleanup: replace uint4 by AttributeMap structBrecht Van Lommel
2022-06-17Fix T98944: Uninitialized XRFrameState can prevent VR/OpenXR viewingPeter Kim
This provides a workaround for the VR session stopping due to an error in locating controller poses. The problem was that for the actions sync on the first frame, the session's XrFrameState/predicted display time had not been initialized yet, which led to an error in xrLocateSpace() (the error was only observed for some OpenXR runtimes since the first frame pose state would be inactive for other runtimes, skipping the call to xrLocateSpace()). The timing of action updates relative to frame state updates could be reworked in the future, but for now simply check for a valid display time to avoid an error on the first frame.
2022-06-17GHOST/Wayland: skip cursor surface operations when hiding the cursorCampbell Barton
Also set the buffer scale before setting the cursor (matching SDL).
2022-06-17Cleanup: use booleans for GHOST C-APICampbell Barton
Also use GHOST_ prefix for public functions.
2022-06-17Cleanup: clang-tidy for GHOSTCampbell Barton
2022-06-17Cleanup: spelling in commentsCampbell Barton
2022-06-16GHOST/Wayland: workaround inability to access window positionCampbell Barton
Wayland doesn't support accessing the position making functionality that would map events to other windows fail, sometimes considering windows overlapping when they weren't (as all window positions were zeroed). Disable dragging between windows when accessing the window the position isn't supported.
2022-06-16Fix memory leak plugging in new keyboards in waylandCampbell Barton
2022-06-16Cleanup: return const vector for system & window outputs() methodCampbell Barton
Move the enter/leave logic into methods so the method can return a const vector which isn't to be manipulated from other functions.
2022-06-16Fix error selecting the window scale in waylandCampbell Barton
Regression in [0] caused all output to be considered when updating after monitor outputs changed. [0]: ac2a56d7f3d6d20a0ed24ece11eea33e23d42f2c
2022-06-16GHOST/Wayland: acquire locks before freeing data on exitCampbell Barton
2022-06-16Fix missing free for drag & drop data with GHOST/WaylandCampbell Barton
2022-06-16GHOST/Wayland: account for fractional scale when picking the outputCampbell Barton
Finding the output with the largest scale now checks fractional scaling. While this is only a minor difference in most cases, it makes the scale deterministic instead of depending on the order outputs are added.
2022-06-15Cleanup: remove redundant key entry from key_repeat_payload_tCampbell Barton
2022-06-15Cleanup: internalize struct members for internal wayland typesCampbell Barton
Missed from 9978689595f87a6b4d8244ee3d014c8fb239e38d.
2022-06-15GHOST/Wayland: add NULL pointer checks on window accessCampbell Barton
There were a few callers that missed checking a NULL return value which can happen in rare cases.
2022-06-15Cleanup: avoid static_cast when accessing wayland windowsCampbell Barton
Rename get_window to window_from_surface and return a GHOST_WindowWayland instead of an GHOST_IWindow since most callers needed to cast. It also makes sense that an call for accessing windows would return the native type.
2022-06-15Cleanup: various minor changes to wayland internal conventionsCampbell Barton
- Initialize values in the struct declarations (help avoid accidental uninitialized struct members). - Use `wl_` prefix for some types to avoid e.g. `output->output`. - Use `_fn` suffix for locally defined function variables. - Use `_handle_` as separator for handlers, making function names easier to follow as this separates the handler name from the interface. - Add doxy sections for listeners in GHOST_WaylandWindow.cpp.