Jérôme Leclercq
|
b85cb174ce
|
Reverse Y axis (+Y is now up)
|
2021-06-06 15:59:25 +02:00 |
Jérôme Leclercq
|
86097b331b
|
Renderer: Add support for device-enabled features (anisotropic filtering)
|
2021-06-05 19:51:48 +02:00 |
Jérôme Leclercq
|
6161bbec76
|
Renderer: Handle more depthstencil formats (as Depth24Stencil8 may not be supported everywhere)
|
2021-06-02 20:16:43 +02:00 |
Jérôme Leclercq
|
465837ff12
|
Renderer: Add support for cubemaps
|
2021-06-01 12:30:37 +02:00 |
Jérôme Leclercq
|
ff505e9019
|
Renderer: Implement and fix front face (winding order) between Vulkan / OpenGL
|
2021-05-28 22:58:14 +02:00 |
Jérôme Leclercq
|
299585a7de
|
Renderer: Implement renderpass attachments clear for OpenGL
|
2021-05-28 22:55:56 +02:00 |
Jérôme Leclercq
|
335bb82be1
|
Renderer/Texture: Add static helpers
|
2021-05-25 15:37:55 +02:00 |
Jérôme Leclercq
|
59cfc74ab4
|
Renderer: Improve code
|
2021-05-25 15:37:27 +02:00 |
Jérôme Leclercq
|
874fb3542e
|
Convert all remaining enums to enum classes (!)
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
7140e322c1
|
Commit missing files
|
2021-05-25 10:40:07 +02:00 |
Lynix
|
13feaf4aab
|
Renderer: RenderWindow now requires a RenderDevice
|
2021-05-16 23:13:00 +02:00 |
Jérôme Leclercq
|
cb881612cc
|
Renderer: OCD fix
|
2021-05-15 15:27:37 +02:00 |
Jérôme Leclercq
|
f280cff0a2
|
Renderer: Add release queue to fix deletion while use
|
2021-05-14 02:04:47 +02:00 |
Jérôme Leclercq
|
aeac3282e4
|
Renderer: Add RenderDevice::GetDeviceInfo()
|
2021-05-14 01:55:16 +02:00 |
Jérôme Leclercq
|
adbf1e1da0
|
Renderer: Add proper support for blending
|
2021-05-14 01:50:46 +02:00 |
Jérôme Leclercq
|
55c2dd8485
|
Add FrameGraph (WIP)
|
2021-05-02 13:58:35 +02:00 |
Jérôme Leclercq
|
377129586b
|
Renderer: Rename some TextureLayout entry
|
2021-05-02 13:57:24 +02:00 |
Jérôme Leclercq
|
8028044966
|
Fix Linux compilation
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
87ce2edc6e
|
Shader: Add initial support for options (WIP)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
d335d44d6a
|
Shader: Cleanup and rename AST files
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
ea99c6a19e
|
Shader: First working version on both Vulkan & OpenGL (ES)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
e4aabf309e
|
Renderer: Replace ShaderStage by ShaderModule (a module can handle multiple stages)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
fed7370e77
|
Rework shader AST (WIP)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
d59423afca
|
Renderer: Rename some TextureUsage
|
2021-02-24 23:50:12 +01:00 |
Jérôme Leclercq
|
b291f8a21c
|
Renderer: Implement TextureUsage
|
2021-02-20 19:25:25 +01:00 |
Jérôme Leclercq
|
fb3468854f
|
Renderer: Implement Framebuffers
|
2021-02-20 19:22:08 +01:00 |
Jérôme Leclercq
|
d058a127e1
|
Renderer/RenderPass: Implement RenderPass correctly
|
2021-02-15 18:14:47 +01:00 |
Jérôme Leclercq
|
b9151d8a7a
|
Graphics: Improve TextureSampler handling
|
2021-01-27 18:50:49 +01:00 |
Jérôme Leclercq
|
a6ff64106e
|
Minor stuff
|
2021-01-22 23:23:28 +01:00 |
Jérôme Leclercq
|
c76d6505b0
|
Renderer/ShaderBinder: Make Update take a pointer and size
|
2021-01-22 23:15:31 +01:00 |
Jérôme Leclercq
|
f327932738
|
Commit current work
Reworked conditions, added uber-shaders, comparison nodes, fixed Discard
|
2021-01-02 21:15:59 +01:00 |
Jérôme Leclercq
|
89609570f4
|
Graphics: WIP (almost working)
|
2020-10-30 23:08:48 +01:00 |
Jérôme Leclercq
|
40f3072ff9
|
Renderer: Add RenderPipeline::GetPipelineInfo
|
2020-10-30 23:07:21 +01:00 |
Jérôme Leclercq
|
009e5a0466
|
Renderer: Rename ShaderStageImpl to ShaderStage
|
2020-10-30 23:06:15 +01:00 |
Jérôme Leclercq
|
3b2e375382
|
WIP
|
2020-09-26 20:04:05 +02:00 |
Jérôme Leclercq
|
2b6a463a45
|
Remove Nz::String and Nz::StringStream
|
2020-09-25 19:31:01 +02:00 |
Jérôme Leclercq
|
f15709c8a3
|
Renderer: Replace unique_ptr by shared_ptr
|
2020-09-20 15:56:58 +02:00 |
Jérôme Leclercq
|
37418d482e
|
Renderer: Allow to set a preferred render api using configuration
|
2020-09-17 20:11:10 +02:00 |
Jérôme Leclercq
|
36d3c51eeb
|
Add module configurations
|
2020-09-17 20:10:39 +02:00 |
Jérôme Leclercq
|
98e20ecbb7
|
Last modules fixes
|
2020-09-17 18:54:33 +02:00 |
Jérôme Leclercq
|
fd1d416510
|
Rename Module to ModuleBase
|
2020-09-11 13:39:18 +02:00 |
Jérôme Leclercq
|
a7fac3beb8
|
Rework modules
|
2020-09-10 20:12:09 +02:00 |
Jérôme Leclercq
|
8d873a8307
|
Fix a lot of small errors/warnings
|
2020-08-28 15:42:19 +02:00 |
Jérôme Leclercq
|
7c9dcdfbe4
|
Allocate command buffers from pools
|
2020-08-27 18:31:26 +02:00 |
Jérôme Leclercq
|
cbdac32f5f
|
VulkanRenderer: Handle window resize
|
2020-08-27 16:16:33 +02:00 |
Jérôme Leclercq
|
837a6585a1
|
Split shader generation to a new module
|
2020-08-11 00:00:36 +02:00 |
Jérôme Leclercq
|
d4f60c174e
|
OpenGLRenderer: Flip screenspace
|
2020-08-09 18:40:59 +02:00 |
Jérôme Leclercq
|
0da2ee6c99
|
First rendering using Spir-V generated shaders \o/
|
2020-08-09 00:24:07 +02:00 |
Jérôme Leclercq
|
3829f0a002
|
ShaderAstCloner: Improve code readability
|
2020-08-05 16:28:41 +02:00 |
Jérôme Leclercq
|
d6d452d43d
|
Add ShaderAstCloner
|
2020-08-05 15:30:23 +02:00 |
Jérôme Leclercq
|
74fb01af28
|
Rename a few classes
|
2020-08-04 15:31:47 +02:00 |
Jérôme Leclercq
|
7a5f91f740
|
SpivWriter WIP
We have debug label, annotations, types and constants. The big part missing is instructions
|
2020-08-04 01:35:30 +02:00 |
Jérôme Leclercq
|
7736312c2f
|
ShaderNodes: Replace union by std::variant
|
2020-08-04 01:33:31 +02:00 |
Lynix
|
50bd150345
|
WIP
|
2020-08-02 20:42:51 +02:00 |
Lynix
|
10860ed562
|
Improve code
|
2020-07-31 12:36:37 +02:00 |
Lynix
|
2271432748
|
Renderer/ShaderValidator: Use ShaderVarVisitor instead of switch
|
2020-07-29 14:39:34 +02:00 |
Lynix
|
a02dd3bf05
|
Renderer: Add ShaderRecursiveVisitor
|
2020-07-29 14:31:54 +02:00 |
Jérôme Leclercq
|
251810ca99
|
WIP SpirvWriter
|
2020-07-29 11:22:52 +02:00 |
Jérôme Leclercq
|
59add283cf
|
Add shader type
|
2020-07-27 18:52:58 +02:00 |
Jérôme Leclercq
|
063b7dd602
|
Renderer/GlslWriter: Add parenthesis where required (wip)
|
2020-07-22 14:48:15 +02:00 |
Jérôme Leclercq
|
086f76fb97
|
Renderer/ShaderNodes: Add support for accessing struct fields
|
2020-07-19 21:05:46 +02:00 |
Jérôme Leclercq
|
1d2fb88198
|
Renderer: Rename enums
ExpressionType => BasicType
ShaderAst::Type => ShaderExpressionType
|
2020-07-16 18:34:58 +02:00 |
Jérôme Leclercq
|
fbba281d14
|
Renderer: Add support for struct and UBO
|
2020-07-14 21:59:49 +02:00 |
Lynix
|
4f671873c1
|
Renderer: Add NazaraBinary shader "language" and handle it in OpenGLRenderer
|
2020-06-18 20:05:22 +02:00 |
Lynix
|
691de5b5c4
|
Renderer/ShaderSerialize: Use ByteStream instead of ByteArray
|
2020-06-18 20:03:56 +02:00 |
Lynix
|
66a98b234f
|
Renderer/GlslWriter: Add environment
|
2020-06-18 20:03:22 +02:00 |
Lynix
|
736ca1c409
|
Renderer/ShaderAst: Add serialization
|
2020-06-17 20:09:21 +02:00 |
Lynix
|
f38bfdde8a
|
ShaderAst: Big refactor + add binding/location support
|
2020-06-17 16:00:03 +02:00 |
Lynix
|
2258a4f87f
|
Add ShaderValidator
|
2020-06-06 16:44:17 +02:00 |
Lynix
|
8467c79021
|
Renderer: Add shader serialization
|
2020-06-05 19:47:29 +02:00 |
Lynix
|
de1c64253e
|
Fix missing files
|
2020-06-04 18:31:43 +02:00 |
Lynix
|
25562a5856
|
Renderer/ShaderAst: Add BinaryFunc
|
2020-06-04 18:29:50 +02:00 |
Lynix
|
effd1b4552
|
ShaderNode: Handle vector component count at runtime
|
2020-05-31 18:39:28 +02:00 |
Lynix
|
3fc4de26e3
|
ShaderGraph: Improve GLSL generation by introducing DeclareVariable statement
|
2020-05-27 20:08:41 +02:00 |
Lynix
|
e4348349da
|
Merge branch 'vulkan' into shader-nodes
|
2020-05-27 20:04:37 +02:00 |
Lynix
|
e0e7435c55
|
Merge fixes
|
2020-05-27 20:03:46 +02:00 |
Lynix
|
68208f5426
|
Merge branch 'master' into vulkan
|
2020-05-27 19:48:22 +02:00 |
Lynix
|
81f03f04e5
|
Revert Renderer to its pre-SDL state
|
2020-05-27 19:42:53 +02:00 |
Lynix
|
2d189dc85e
|
Fix WindowHandles
|
2020-05-27 18:55:03 +02:00 |
Lynix
|
b0c72a6101
|
Replace platform backends by SDL
|
2020-05-27 17:47:52 +02:00 |
Jérôme Leclercq
|
1425f99edf
|
Merge branch 'master' into SDL2
|
2020-05-27 11:11:21 +02:00 |
Lynix
|
d96bc9db6e
|
ShaderNode: Add automatic variables
|
2020-05-26 20:30:24 +02:00 |
Lynix
|
8fa456bdf5
|
Renderer: Remake backend selection
|
2020-05-23 22:07:22 +02:00 |
Lynix
|
e23eb74802
|
Renderer/ShaderAst: Add Sample2D
|
2020-05-19 20:06:11 +02:00 |
Lynix
|
332278dded
|
OpenGL: Random stuff I forgot
|
2020-05-11 14:05:40 +02:00 |
Lynix
|
b4b15f826d
|
OpenGL: Implement textures
|
2020-04-19 15:33:56 +02:00 |
Lynix
|
d9a08640d6
|
Vulkan: Add renderpass and framebuffers
|
2020-04-10 17:36:05 +02:00 |
Lynix
|
9507c56fc9
|
PixelFormat rename
PixelFormatInfo => PixelFormatDescription
PixelFormat => PixelFormatInfo
PixelFormatType => PixelFormat
|
2020-04-10 14:19:36 +02:00 |
Lynix
|
87f1209327
|
Vulkan: Refactor command buffer and introduce command pool
|
2020-04-07 21:10:16 +02:00 |
Lynix
|
ac8b908079
|
Vulkan: Replace ShaderBinding& by ShaderBindingPtr
|
2020-04-06 21:13:59 +02:00 |
Lynix
|
f443bec6bc
|
Add command buffers (WIP)
|
2020-04-02 21:07:01 +02:00 |
Lynix
|
15b95ca4a1
|
Minor and forgotten stuff
|
2020-03-26 21:20:00 +01:00 |
Lynix
|
1dc0ed8e94
|
Add ShaderBinding
|
2020-03-26 21:19:46 +01:00 |
Lynix
|
874130efd4
|
Implement Texture and TextureSampler
|
2020-03-26 21:18:35 +01:00 |
Lynix
|
b73d3e8f04
|
Add and make use of Vulkan Memory Allocator
|
2020-03-26 21:15:49 +01:00 |
Lynix
|
b774a879b6
|
Rework buffers synchronization
|
2020-03-13 18:44:49 +01:00 |
Lynix
|
2b3241f354
|
Add RenderPipelineLayout
|
2020-03-05 20:35:31 +01:00 |
Lynix
|
c23b6dfa01
|
Copyright year update
I can't wait to see the conflicts this will cause
|
2020-03-05 17:27:26 +01:00 |
Lynix
|
74275292bf
|
Some cleanup
|
2020-03-05 17:24:55 +01:00 |
Lynix
|
7bf734cdd4
|
Improve pipeline building
|
2020-03-03 22:26:57 +01:00 |