Commit graph

33 commits

Author SHA1 Message Date
Juan Linietsky
cd72b19320 Skeletons are now working. 2019-12-12 17:08:50 +01:00
Rémi Verschelde
aeb155ce99 Merge pull request #32281 from Chaosus/vk_shader_array_varying2
[Vulkan] Implement shader array support for varyings
2019-12-12 17:08:39 +01:00
Yuri Roubinsky
e3938a09dd [Vulkan] Implement shader array support for varyings
Remake of #32175
2019-12-12 17:08:38 +01:00
Rémi Verschelde
efa8d6b1d0 Merge pull request #32280 from Chaosus/vk_shader_switch2
[Vulkan] Implements switch flow control operator in shaders
2019-12-12 17:08:37 +01:00
Yuri Roubinsky
4d8411acc6 [Vulkan] Implements switch flow control operator in shaders 2019-12-12 17:08:26 +01:00
Juan Linietsky
ccaf7d5c35 Properly working instancing, and compatibility fixing for old meshes 2019-12-12 17:08:06 +01:00
Juan Linietsky
a0a7732aec Visual GPU profiler and related profiling support in Vulkan. 2019-12-12 17:08:05 +01:00
Juan Linietsky
3f6b9c8611 Proper texture reloading (was broken). 2019-12-12 17:08:03 +01:00
Juan Linietsky
8501b37b8f Modernized default 3D material, fixes material bugs. 2019-12-12 17:08:02 +01:00
Juan Linietsky
7919ef863b Several fixes to 3D rendering, and multimesh implementation. 2019-12-12 17:08:00 +01:00
Juan Linietsky
bae6f608d2 Reflection probes working 2019-12-12 17:08:00 +01:00
Juan Linietsky
6651336a8a Directional light cleanup. 2019-12-12 17:07:49 +01:00
Juan Linietsky
dd875c2c3c Directional lights and shadow mapping are functional. 2019-12-12 17:07:49 +01:00
Juan Linietsky
5f6ed2349c Rewrote large part of rendering, omni and spot shadows now work. 2019-12-12 17:07:48 +01:00
Juan Linietsky
8f5dc4f06c Tonemapping ported (not all parameters supported yet, only enough to get correct color) 2019-12-12 17:07:48 +01:00
Juan Linietsky
7db3532b2e Environment sky more or less working. 2019-12-12 17:07:47 +01:00
Rémi Verschelde
aaeac6633d Merge pull request #31527 from Chaosus/vk_shader_array_support2
[Vulkan] Implemented local shader arrays
2019-12-12 17:07:33 +01:00
Yuri Roubinski
b994cdbdc6 [Vulkan] Implemented local shader arrays 2019-12-12 17:07:32 +01:00
Rémi Verschelde
8fc7efb3d7 Merge pull request #31526 from Chaosus/shader_bug_vk2
[Vulkan] Fix ternary operator shader compiler expression
2019-12-12 17:07:29 +01:00
Yuri Roubinski
f7812b3ee6 [Vulkan] Fix ternary operator shader compiler expression 2019-12-12 17:07:29 +01:00
Yuri Roubinski
d49b6a72de [Vulkan] Implemented do/while loops for shaders 2019-12-12 17:07:19 +01:00
Juan Linietsky
bb712cca18 Yay very basic 3D (only white) finally shows. 2019-12-12 17:06:46 +01:00
Juan Linietsky
75299f4a63 Base 3D engine done, still untested, though. 2019-12-12 17:06:38 +01:00
Juan Linietsky
112c4c546c Vulkan/RD rasterizer now does clean exit. 2019-12-12 17:05:11 +01:00
Juan Linietsky
9b71f07c64 Fix comment 2019-12-12 17:05:07 +01:00
Rémi Verschelde
9b2dc59003 Merge pull request #29993 from bruvzg/vulkan
Initial Vulkan support for macOS (MoltenVK) and Windows
2019-12-12 17:04:53 +01:00
bruvzg
397545e97f Add runtime GLES2 / Vulkan context selection. 2019-12-12 13:48:47 +01:00
bruvzg
142188639c Add static Vulkan loader.
Initial Vulkan support for Windows.
Initial Vulkan support for macOS.
2019-12-12 13:19:45 +01:00
Juan Linietsky
d71ae5c152 Add a system to properly update materials if the uniform set is gone (likely deleted texture) 2019-12-12 13:08:26 +01:00
Juan Linietsky
9ae5001b0e Added a spinlock template as well as a thread work pool class.
Also, optimized shader compilation to happen on threads.
2019-12-12 13:05:27 +01:00
Juan Linietsky
e7c33ca141 Moved the shader source compilation code outside RenderingDevice and Vulkan 2019-12-12 13:05:25 +01:00
Juan Linietsky
f5f3d820e0 Replaced GLSLang reflection by SPIRV-Reflect, eventually allowing to move GLSLang out. 2019-12-12 13:01:23 +01:00
Juan Linietsky
ffbc9823d9 Custom material support seems complete. 2019-12-12 12:54:09 +01:00