summaryrefslogtreecommitdiffstats
path: root/drivers/vulkan/rendering_device_vulkan.h
Commit message (Collapse)AuthorAgeFilesLines
* Add proper type to most public API uses of ArrayJuan Linietsky2020-04-211-9/+9
|
* Exposed RenderingDevice to script APIJuan Linietsky2020-04-201-2/+2
| | | | | | | | | | | | | Also added an easier way to load native GLSL shaders. Extras: Had to fix no-cache for subresources in resource loader, it was not properly working, making shaders not properly reload. Note: The precommit hooks are broken because they don't seem to support enums from one class being used in another. Feel free to fix this after merging this PR.
* Ability to create local RenderingDevice instances.Juan Linietsky2020-04-181-3/+14
|
* Implement MSAAJuan Linietsky2020-04-121-0/+1
|
* Moved most of the effect code to compute.Juan Linietsky2020-04-111-0/+2
| | | | | Simplifies it and improves performance. Improves image barrier handling per mipmap on RenderingDeviceVulkan
* Merge pull request #36919 from nekomatata/android-vulkan-renderingRémi Verschelde2020-04-091-0/+2
|\ | | | | Vulkan rendering support on Android
| * Display Server supportPouleyKetchoupp2020-04-081-0/+2
| |
* | Vulkan: Use VK_NULL_HANDLE for handles, fixes 32-bit buildsRémi Verschelde2020-04-061-1/+1
|/ | | | | | | | | | | | | | Some Vulkan types are defined as "non dispatchable handles" and use a different typedef on 32-bit and 64-bit systems (struct pointer on 64-bit, `uint64_t` otherwise). https://github.com/KhronosGroup/Vulkan-Headers/blob/0e78ffd1dcfc3e9f14a966b9660dbc59bd967c5c/include/vulkan/vulkan_core.h#L59-L65 Contrarily to `NULL`, `nullptr` can't be converted to `uint64_t` so build was now failing on 32-bit after converting the codebase from using `NULL` to `nullptr`. Fixes #37620.
* Replace NULL with nullptrlupoDharkael2020-04-021-4/+4
|
* Renaming of servers for coherency.Juan Linietsky2020-03-271-1/+1
| | | | | | | | | | VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
* Added a Window node, and made it the scene root.Juan Linietsky2020-03-261-3/+3
| | | | Still a lot of work to do.
* Style: Set clang-format Standard to Cpp11Rémi Verschelde2020-03-171-4/+4
| | | | | | | | | | For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
* rendering_vulkan: VertexDescriptionKey equal comparator was checking only ↵Mateo Dev .592020-02-191-1/+3
| | | | the first element of his vector of VertexDescription
* PoolVector is gone, replaced by VectorJuan Linietsky2020-02-181-10/+10
| | | | | Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
* Vulkan: Move thirdparty code out of drivers, style fixesRémi Verschelde2020-02-111-2/+2
| | | | | | | - `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
* Several fixes to GIProbesJuan Linietsky2020-02-111-0/+1
|
* Use a different strategy to get textures from GPU (via buffers), for more ↵Juan Linietsky2020-02-111-1/+1
| | | | compatibility.
* More GIProbe work and fixesJuan Linietsky2020-02-111-2/+1
|
* GIProbes working.Juan Linietsky2020-02-111-13/+28
|
* Untested support for compute shadersJuan Linietsky2020-02-111-4/+108
|
* Visual GPU profiler and related profiling support in Vulkan.Juan Linietsky2020-02-111-0/+35
|
* Rewrote large part of rendering, omni and spot shadows now work.Juan Linietsky2020-02-111-0/+2
|
* Environment sky more or less working.Juan Linietsky2020-02-111-2/+3
|
* Yay very basic 3D (only white) finally shows.Juan Linietsky2020-02-111-1/+3
|
* Base 3D engine done, still untested, though.Juan Linietsky2020-02-111-2/+3
|
* Merge pull request #29993 from bruvzg/vulkanRémi Verschelde2020-02-111-0/+41
|\ | | | | | | Initial Vulkan support for macOS (MoltenVK) and Windows
| * Add runtime GLES2 / Vulkan context selection.bruvzg2020-02-111-0/+11
| |
| * Add static Vulkan loader.bruvzg2020-02-111-0/+30
| | | | | | | | | | Initial Vulkan support for Windows. Initial Vulkan support for macOS.
* | Added a spinlock template as well as a thread work pool class.Juan Linietsky2020-02-111-13/+13
|/ | | | Also, optimized shader compilation to happen on threads.
* Moved the shader source compilation code outside RenderingDevice and VulkanJuan Linietsky2020-02-111-4/+3
|
* Custom material support seems complete.Juan Linietsky2020-02-111-38/+133
|
* Modified light rendering to make it more compatible.Juan Linietsky2020-02-111-1/+6
| | | | Modified polygon management to make it more compatible with MoltenVK
* Normalmapping and Specularmapping working in 2D engineJuan Linietsky2020-02-111-1/+1
| | | | Added support for Sprite, AnimatedSprite and Polygon2D (should add for tileset eventually).
* Added ability to retrieve back textures stored on GPUJuan Linietsky2020-02-111-1/+6
|
* basic 2D engine is more or less working with Vulkan, including editor.Juan Linietsky2020-02-111-18/+53
| | | | Still a lot to do
* Basic 2D engine is more or less working, needs more work for editor to be ↵Juan Linietsky2020-02-111-0/+2
| | | | usable.
* A lot of progress with canvas rendering, still far from working.Juan Linietsky2020-02-111-6/+8
|
* Changed my mind on Vulkan image API, images should now include mipmapsJuan Linietsky2020-02-111-2/+2
| | | | This should make it easier to obtain the data directly from an Image
* Modify RenderingDevice to use RIDs, now that they are O(1)Juan Linietsky2020-02-111-144/+79
|
* Added support for push constantsJuan Linietsky2020-02-111-1/+19
|
* Improved validation of attachmentsJuan Linietsky2020-02-111-3/+3
|
* Initial work on Vulkan:Juan Linietsky2020-02-111-0/+830
-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/)