summaryrefslogtreecommitdiff
path: root/drivers/vulkan
AgeCommit message (Collapse)Author
2020-02-18Merge pull request #36320 from madmiraal/fix-c4996-warning-vulkan_contextRémi Verschelde
Fix VisualStudio throwing multiple C4996 warnings in vulkan_context.cpp.
2020-02-18Fix VisualStudio throwing multiple C4996 warnings in vulkan_context.cpp.Marcel Admiraal
Use Godot's String to concatenate C-strings instead of strcat and sprintf, which are unsafe, because they don't check for buffer overflows.
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-14Vulkan-Loader: Mark secure_getenv as available on LinuxRémi Verschelde
It's a GNU extension part of glibc since 2.17, and it was also added recently to musl libc. It doesn't seem to be available on *BSD (but also not used there by Vulkan-Loader). Could be made more thorough by doing a test compilation of a file to check for the existence of the function on the host system, but unless we run into actual issues, that's likely overkill.
2020-02-14Fix various GCC compilation warnings after Vulkan mergeRémi Verschelde
Part of #36132.
2020-02-13Fixes some memory leaksHaoyu Qiu
2020-02-11Vulkan: Move thirdparty code out of drivers, style fixesRémi Verschelde
- `vk_enum_string_helper.h` is a generated file taken from the SDK (Vulkan-ValidationLayers). - `vk_mem_alloc.h` is a library from GPUOpen: https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
2020-02-11Auto exposure re-implemented in VulkanJuan Linietsky
2020-02-11Update Vulkan loader to 1.1.127bruvzg
2020-02-11Several fixes to GIProbesJuan Linietsky
2020-02-11Use a different strategy to get textures from GPU (via buffers), for more ↵Juan Linietsky
compatibility.
2020-02-11Improve HiDPI handling, fix incorrect window viewport clipping.bruvzg
2020-02-11Dynamic object support for GI Probes (a bit buggy still)Juan Linietsky
2020-02-11More GIProbe work and fixesJuan Linietsky
2020-02-11Better GIProbe quality settings.Juan Linietsky
2020-02-11GIProbes working.Juan Linietsky
2020-02-11Untested support for compute shadersJuan Linietsky
2020-02-11Visual GPU profiler and related profiling support in Vulkan.Juan Linietsky
2020-02-11Several fixes to 3D rendering, and multimesh implementation.Juan Linietsky
2020-02-11Rewrote large part of rendering, omni and spot shadows now work.Juan Linietsky
2020-02-11Environment sky more or less working.Juan Linietsky
2020-02-11Yay very basic 3D (only white) finally shows.Juan Linietsky
2020-02-11Base 3D engine done, still untested, though.Juan Linietsky
2020-02-11SCons: Streamline Vulkan buildsystem + fixupsRémi Verschelde
- Renamed option to `builtin_vulkan`, since that's the name of the library and if we were to add new components, we'd likely use that same option. - Merge `vulkan_loader/SCsub` in `vulkan/SCsub`. - Accordingly, don't use built-in Vulkan headers when not building against the built-in loader library. - Drop Vulkan registry which we don't appear to need currently. - Style and permission fixes.
2020-02-11Merge pull request #29993 from bruvzg/vulkanRémi Verschelde
Initial Vulkan support for macOS (MoltenVK) and Windows
2020-02-11Add runtime GLES2 / Vulkan context selection.bruvzg
2020-02-11Add static Vulkan loader.bruvzg
Initial Vulkan support for Windows. Initial Vulkan support for macOS.
2020-02-11Moved the shader source compilation code outside RenderingDevice and VulkanJuan Linietsky
2020-02-11Added a spinlock template as well as a thread work pool class.Juan Linietsky
Also, optimized shader compilation to happen on threads.
2020-02-11Replaced GLSLang reflection by SPIRV-Reflect, eventually allowing to move ↵Juan Linietsky
GLSLang out.
2020-02-11Custom material support seems complete.Juan Linietsky
2020-02-11Completed material/2D shader support (missing SCREEN_TEXTURE)Juan Linietsky
2020-02-11Modified light rendering to make it more compatible.Juan Linietsky
Modified polygon management to make it more compatible with MoltenVK
2020-02-11Normalmapping and Specularmapping working in 2D engineJuan Linietsky
Added support for Sprite, AnimatedSprite and Polygon2D (should add for tileset eventually).
2020-02-11Added ability to retrieve back textures stored on GPUJuan Linietsky
2020-02-11Bugfixes and ability to better specify filter and repeat modes everywhere.Juan Linietsky
Removes antialiased flag for draw_* methods.
2020-02-11basic 2D engine is more or less working with Vulkan, including editor.Juan Linietsky
Still a lot to do
2020-02-11Basic 2D engine is more or less working, needs more work for editor to be ↵Juan Linietsky
usable.
2020-02-11A lot of progress with canvas rendering, still far from working.Juan Linietsky
2020-02-11Changed my mind on Vulkan image API, images should now include mipmapsJuan Linietsky
This should make it easier to obtain the data directly from an Image
2020-02-11Modify RenderingDevice to use RIDs, now that they are O(1)Juan Linietsky
2020-02-11Added support for push constantsJuan Linietsky
2020-02-11Improved validation of attachmentsJuan Linietsky
2020-02-11Initial work on Vulkan:Juan Linietsky
-Added VulkanContext -Added an X11 implementation -Added a rendering device abstraction -added a Vulkan rendering device abstraction -Engine does not work, only shows Godot logo (run it from bin/)