summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Reimplement skeletons and blend shapesreduz2020-12-162-4/+17
| | | | Uses compute shaders, which only once, on demand, and all in parallel.
* Sync RasterizerDummy changes.Fabio Alessandrelli2020-12-091-0/+2
| | | | Will also need to be renamed.
* Merge pull request #44199 from bruvzg/pvs_fixes_1Rémi Verschelde2020-12-091-2/+2
|\ | | | | PVS-Studio static analyzer fixes
| * Static analyzer fixes:bruvzg2020-12-091-2/+2
| | | | | | | | | | | | Removes unused code in OS. Fixes return types. Fixes few typos.
* | Merge pull request #44161 from Faless/fix/fa_buffered_removeRémi Verschelde2020-12-091-1/+0
|\ \ | |/ |/| Remove unused FileAccessBuffered
| * Remove now unused FileAccessBuffered.Fabio Alessandrelli2020-12-061-1/+0
| |
* | Fix dummy rasterizer so that javascript can build againDavid Snopek2020-12-061-5/+5
|/
* Rename RD texture "type" to "texture_type"Aaron Franke2020-12-041-7/+7
| | | "type" isn't very descriptive for exposed code, and this variable is exposed via RD_SETGET.
* Rename RD uniform "type" to "uniform_type"Aaron Franke2020-12-041-3/+3
| | | "type" isn't very descriptive for exposed code, and this variable is exposed via RD_SETGET.
* RenderingServer reorganizationreduz2020-12-041-19/+19
|
* Refactored Mesh internals and formats.reduz2020-12-021-1/+2
| | | | | | | | | | | | | | | -Changed how mesh data is organized, hoping to make it more efficient on Vulkan and GLES. -Removed compression, it now always uses the most efficient format. -Added support for custom arrays (up to 8 custom formats) -Added support for 8 weights in skeleton data. -Added a simple optional versioning system for imported assets, to reimport if binary is newer -Fixes #43979 (I needed to test) WARNING: -NOT backwards compatible with previous 4.x-devel, will most likely never be, but it will force reimport scenes due to version change. -NOT backwards compatible with 3.x scenes, this will be eventually re-added. -Skeletons not working any longer, will fix in next PR.
* Sync RasterizerDummy changes.Fabio Alessandrelli2020-11-301-2/+6
|
* Merge pull request #38939 from hbina/vk_error_handlingRémi Verschelde2020-11-291-4/+3
|\ | | | | Better error handling of vkEnumerateInstanceExtensionProperties
| * Better error handling of vkEnumerateInstanceExtensionPropertiesHanif Bin Ariffin2020-11-281-4/+3
| | | | | | | | | | | | | | | | | | Refer: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/vkEnumerateInstanceExtensionProperties.html According to the documentation, there are 2 success code: 1. VK_SUCCESS 2. VK_INCOMPLETE VK_INCOMPLETE will be returned when not all avaiable properties are returned.
* | Merge pull request #42761 from fire/color-grading-3dRémi Verschelde2020-11-281-1/+1
|\ \ | |/ |/| Environment brightness, contrast, saturation restore with 3d LUT.
| * Environment brightness, contrast, saturation restore with color correction.clayjohn2020-11-281-1/+1
| | | | | | | | | | | | | | | | | | Allow gradients and 2d images. Use shader versions for LUT in tonemap Co-authored-by: alex-poe <3957610+CptPotato@users.noreply.github.com> Co-authored-by: QbieShay <cislaghi.ilaria@gmail.com> Co-authored-by: Clay John <claynjohn@gmail.com>
* | Merge pull request #42987 from clayjohn/VULKAN-sky-onlyRémi Verschelde2020-11-281-0/+2
|\ \ | | | | | | Add sky_only setting to DirectionalLight3Ds
| * | Add sky_only setting to DirectionalLight3Dsclayjohn2020-10-211-0/+2
| | |
* | | Prevent ALSA audio corruptionCooper Harasyn2020-11-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the ALSA driver, corruption would occur if `snd_pcm_writei` was unable to consume the entire sound buffer. This would occur frequently on the Raspberry Pi 3 which uses the `snd_bcm2835` audio driver. This bug resulted from incorrect pointer math on line 187, resulting in the sample source pointer being advanced by `total * ad->channels` bytes instead of `total * ad->channels` samples. In my opinion, the best fix is to change `*src` to type `int16_t`, since that is the sample type in use. Fixes #43927.
* | | Initialize class/struct variables with default values in core/ and drivers/Rafał Mikrut2020-11-239-166/+159
| |/ |/|
* | doc: Warn about using Node internal processingRémi Verschelde2020-11-201-2/+2
| | | | | | | | | | | | | | | | See #43689. Also 'fixed' some spelling for behavior in publicly visible strings. (Sorry en_GB, en_CA, en_AU, and more... Silicon Valley won the tech spelling war.)
* | allow vulkan validation layers in release builds if explicity asked forJordan Schidlowsky2020-11-182-2/+1
| |
* | Remove empty lines around braces with the formatting scriptAaron Franke2020-11-165-17/+0
| |
* | Fixes crash if Vulkan presentation surface is not available.bruvzg2020-11-141-1/+2
| |
* | RasterizerDummy fixes.Fabio Alessandrelli2020-11-101-8/+16
| |
* | Reorganized core/ directory, it was too fatty alreadyreduz2020-11-0731-41/+41
| | | | | | | | | | | | -Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
* | Synchronization - Clean subpass dependency initJohn Zulauf2020-10-291-3/+3
| | | | | | | | Fix incorrect subpass dependency initialization
* | vulkan: Backport build fix for MinGW-w64 8.0.0Rémi Verschelde2020-10-291-1/+0
| | | | | | | | | | | | | | Taken from https://github.com/KhronosGroup/Vulkan-Loader/pull/475. Supersedes and reverts #43119 since the upstream change removes the need for that custom define.
* | Implement CanvasGroup and CanvasItem clippingreduz2020-10-281-5/+4
| | | | | | | | | | | | | | | | -Allows merging several 2D objects into a single draw operation -Use current node to clip children nodes -Further fixes to Vulkan barriers -Changed font texture generation to white, fixes dark eges when blurred -Other small misc fixes to backbuffer code.
* | Vulkan: Make validation layers optionalRémi Verschelde2020-10-272-41/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They're now disabled by default, and can be enabled with the command line argument `--vk-layers`. When enabled, the errors about them being missing are now warnings, as users were confused and thought this meant Vulkan is broken for them. Fix crash in `~VulkanContext` when validation layers are disabled (exposed by this PR since before they could not be disabled without source modification). Also moved VulkanContext member initializations to header. Fixes #37102.
* | Changes for 43094 mingw llvm build error.K. S. Ernest (iFire) Lee2020-10-261-0/+1
| |
* | Merge pull request #42817 from akien-mga/vulkan-sdk-1.2.154.0Rémi Verschelde2020-10-261-1/+0
|\ \ | | | | | | vulkan: Sync loader, headers and glslang to sdk-1.2.154.0
| * | vulkan: Sync loader, headers and glslang to sdk-1.2.154.0Rémi Verschelde2020-10-151-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually sdk-1.2.154.1 for Vulkan-Loader. glslang is updated to bacaef3237c515e40d1a24722be48c0a0b30f75f which is the known-good version for Vulkan-ValidationLayers 1.2.154.0. COPYRIGHT.txt was synced with the current version of the glslang LICENSE.txt, and `glslang/register_types.cpp` now uses the upstream definition for its default builtin resource instead of hardcoding it.
* | | Merge pull request #43056 from Ev1lbl0w/bugfix-wrong-exitcodeRémi Verschelde2020-10-261-1/+1
|\ \ \ | | | | | | | | Fix wrong exit code being returned
| * | | Fix wrong exit code being returnedEv1lbl0w2020-10-241-1/+1
| | |/ | |/|
* | | Fix crash in RenderingDeviceVulkan::shader_creatersjtdrjgfuzkfg2020-10-251-1/+3
| | | | | | | | | | | | | | | | | | | | | This commit moves the declaration of a local variable to ensure its scope survives long enough; at least in some versions of GCC and LLVM the associated memory was freed too early and thus caused issues ranging from black screens to crashes.
* | | Refactored 2D shader and lighting systemreduz2020-10-241-3/+3
|/ / | | | | | | | | | | | | | | | | | | -Removed normal/specular properties from nodes -Create CanvasTexture, which can contain normal/specular channels -Refactored, optimized and simplified 2D shaders -Use atlas for light textures. -Use a shadow atlas for shadow textures. -Use both items aboves to make light rendering stateless (faster). -Reorganized uniform sets for more efficiency.
* | Fix invalid buffer updates in SDFGIreduz2020-10-191-0/+22
| |
* | Revert "Revert "Synchronization validation fix patch set 3 (inclusive of all ↵Juan Linietsky2020-10-192-67/+149
| | | | | | | | previous patches)""
* | Revert "Synchronization validation fix patch set 3 (inclusive of all ↵Juan Linietsky2020-10-192-149/+67
| | | | | | | | previous patches)"
* | Revert "Cause buffer_update to emit error if called during compute/draw list"Juan Linietsky2020-10-191-4/+0
| |
* | Merge pull request #40849 from jzulauf-lunarg/zulauf_buffer_update_err_msgJuan Linietsky2020-10-191-0/+4
|\ \ | | | | | | Cause buffer_update to emit error if called during compute/draw list
| * | Cause buffer_update to emit error if called during compute/draw listJohn Zulauf2020-07-291-0/+4
| | | | | | | | | | | | Add error message to buffer update if a compute or draw list is active.
* | | Merge pull request #42866 from jzulauf-lunarg/zulauf_sync_fixes_3Juan Linietsky2020-10-192-67/+149
|\ \ \ | | | | | | | | Synchronization validation fix patch set 3 (inclusive of all previous patches)
| * | | Add pre-copy barrier to buffer updateJohn Zulauf2020-10-161-1/+1
| | | | | | | | | | | | | | | | | | | | Add a barrier to "safe" the buffer update write from previous accesses to buffer range being updated. Remove duplicate unneed barrier.
| * | | Add subpass sync support for layout transitionsJohn Zulauf2020-10-161-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add additional source and dest mask bits for "from external" and "to external" subpass dependencies (respectively) when intial and final layouts cause implicit layout transitions. This is a big hammer -- any transition in a given direction will create a full barrier. Attachment specific stage and access flags could be used instead with additional logic to deduce the prior and intended subsequent usages.
| * | | Sync fix for clear textureJohn Zulauf2020-10-161-12/+16
| | | | | | | | | | | | | | | | | | | | Make pre and post barriers non-conditional on format, as there are cases where pending operations in the GENERAL layout hazarding with clear.
| * | | Sync fix texture_get_data bad barrier paramJohn Zulauf2020-10-161-1/+1
| | | | | | | | | | | | | | | | Changed srcStageMask to the valid stage for post transfer barrier.
| * | | Additional synchronization fixes w/o FORCE_FULL_BARRIERJohn Zulauf2020-10-161-18/+76
| | | | | | | | | | | | | | | | | | | | Additional synchronization fixes from hazards arising from disabling FORCE_FULL_BARRIER.
| * | | Correct stage masks for storage texture barriersJohn Zulauf2020-10-161-1/+1
| | | | | | | | | | | | | | | | | | | | Change the srcStageMasks and dstStageMasks for the storage texture end draw barriers to refer to the correct stages for the use.