Jérôme Leclercq
|
fde60dab95
|
Add missing include
|
2021-06-05 01:38:49 +02:00 |
Jérôme Leclercq
|
50bf26d92f
|
Shader: Add support for pow intrinsic
|
2021-06-05 01:29:36 +02:00 |
Jérôme Leclercq
|
ee2ceaa701
|
Update Context.hpp
|
2021-06-04 19:41:35 +02:00 |
Jérôme Leclercq
|
4b3b595a99
|
Minor fixes
|
2021-06-04 18:02:28 +02:00 |
Jérôme Leclercq
|
5bc3cd8d8c
|
OpenGLRenderer: Add GL_EXT_texture_compression_s3tc check for DXT pixel formats
|
2021-06-03 17:15:12 +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
|
9ee3a0d6be
|
DeferredShading: Add bloom
|
2021-06-01 20:28:19 +02:00 |
Jérôme Leclercq
|
12e9edd2d7
|
Math/Algorithm: Fix missing implementation of Clamp for Angles
|
2021-06-01 18:04:18 +02:00 |
Jérôme Leclercq
|
b6094bf1dd
|
Math/Matrix4: Update projection matrix formula
|
2021-06-01 17:39:15 +02:00 |
Jérôme Leclercq
|
4d74cef034
|
Math: Remove NAZARA_MATH_ANGLE_RADIAN and functions using it
|
2021-06-01 17:37:40 +02:00 |
Jérôme Leclercq
|
4465e230af
|
Shader/NZSL: Add support for array indexing
|
2021-06-01 16:22:41 +02:00 |
Jérôme Leclercq
|
0f3c0abb96
|
Shader/ShaderAst: Rename AccessMember* to Access*
|
2021-06-01 12:38:17 +02:00 |
Jérôme Leclercq
|
16e2f5f819
|
Shader: Add support for depth_write and early_fragment_tests attributes (+ FragDepth builtin)
|
2021-06-01 12:32:24 +02:00 |
Jérôme Leclercq
|
465837ff12
|
Renderer: Add support for cubemaps
|
2021-06-01 12:30:37 +02:00 |
Jérôme Leclercq
|
d5c27a756b
|
Audio: Fix AudioFormat names (U16 -> I16)
|
2021-05-30 16:45:50 +02:00 |
Jérôme Leclercq
|
28f1d8aa76
|
Audio: Minor fixes
|
2021-05-30 16:45:50 +02:00 |
Jérôme Leclercq
|
318cc6d3ff
|
Fix Linux compilation
|
2021-05-29 13:20:54 +02:00 |
Jérôme Leclercq
|
2f8a82ed05
|
Shader/ShaderBuild: Fix ambiguity for AccessMember
|
2021-05-29 00:56:04 +02:00 |
Jérôme Leclercq
|
a90844f0dd
|
Remove X11 dependency properly (as it's handled by SDL and EGL)
|
2021-05-29 00:52:10 +02:00 |
Jérôme Leclercq
|
109b2a156e
|
OpenGLRenderer: Allow RenderPipeline without a fragment shader on OpenGL ES
|
2021-05-29 00:32:00 +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
|
58fe411750
|
Shader/GlslWriter: Move function forward declaration before functions using them
Because of some weird ass shit bug in nvidia driver if functions were forward declared before declaration of UBO they were using
|
2021-05-26 22:21:57 +02:00 |
Jérôme Leclercq
|
948f0517ea
|
OpenGLRenderer/Program: Add query methods
|
2021-05-26 22:20:50 +02:00 |
Jérôme Leclercq
|
7fe60026be
|
OpenGLRenderer: Minor fixes
|
2021-05-26 22:20:10 +02:00 |
Jérôme Leclercq
|
e7a2573221
|
Shader: Add support for FragCoord builtin
|
2021-05-26 22:17:07 +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
|
001c9a6a61
|
Audio/Music: Rework Play() (ensure music has started before return and handle exceptions in thread)
|
2021-05-25 12:12:15 +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
|
8cdd0b51cb
|
Upgrade Audio (part 2)
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
7140e322c1
|
Commit missing files
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
ba7c56ddfa
|
Upgrade Platform
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
8b0b5295f7
|
Upgrade Physics2D and Physics3D
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
4bcb63d776
|
Audio: Commit missing files
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
f0192c3b98
|
Core/ResourceLoader: Fix stream reset in case of error
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
cce32a64d4
|
Upgrade Utility
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
b936946154
|
Upgrade NazaraAudio
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
a52103a641
|
Rework ResourceLoader, ResourceManager and ObjectLibrary
They're no longer static
|
2021-05-25 10:40:07 +02:00 |
Jérôme Leclercq
|
f6fd996bf1
|
Shader: Add support for custom functions calls (and better handle intrinsics)
|
2021-05-22 13:37:54 +02:00 |
Jérôme Leclercq
|
49a2cda0a1
|
VulkanRenderer: Fix descriptor pool release
|
2021-05-19 20:32:02 +02:00 |
Jérôme Leclercq
|
a7235ab02d
|
Shader: Add support for max/min intrinsic
|
2021-05-19 20:31:26 +02:00 |
Jérôme Leclercq
|
a002d5c210
|
Shader: Add constant cast optimization
|
2021-05-18 17:25:37 +02:00 |
Jérôme Leclercq
|
e716b44aa3
|
Add tests and SDK
|
2021-05-17 23:08:37 +02:00 |
Jérôme Leclercq
|
26de5872eb
|
Merge branch 'master' into graphics-next
|
2021-05-17 18:58:04 +02:00 |
Lynix
|
ccccbfe0ad
|
Shader/SpirV: Fix UInt32 support
|
2021-05-16 23:14:39 +02:00 |
Lynix
|
13feaf4aab
|
Renderer: RenderWindow now requires a RenderDevice
|
2021-05-16 23:13:00 +02:00 |
Lynix
|
61d082e61b
|
Shader/ShaderWrite: Add optimize bool
|
2021-05-16 23:08:36 +02:00 |
Lynix
|
525f24af2e
|
Shader/ShaderLang: Add support for Unary operators
|
2021-05-16 23:07:25 +02:00 |
Jérôme Leclercq
|
cb881612cc
|
Renderer: OCD fix
|
2021-05-15 15:27:37 +02:00 |
Jérôme Leclercq
|
51c099b3ce
|
Renderer: Allow UploadPool to handle very big (>= 2MB) blocks
|
2021-05-15 15:27:17 +02:00 |
Jérôme Leclercq
|
572dc56b10
|
Update global headers
|
2021-05-14 03:35:32 +02:00 |
Jérôme Leclercq
|
2641117847
|
Add building using xmake and cleanup thirdparty
|
2021-05-14 03:35:32 +02:00 |
Jérôme Leclercq
|
830ec6ac94
|
Add a few helper functions
|
2021-05-14 02:09:25 +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
|
51ecff2912
|
ShaderLang: Add support for length intrinsic
|
2021-05-14 02:02:12 +02:00 |
Jérôme Leclercq
|
24f7b75654
|
Renderer: Add support for PixelFormat_RGBA32F
|
2021-05-14 01:57:32 +02:00 |
Jérôme Leclercq
|
bbfe06c443
|
Renderer: Fix UploadPool allocations references
|
2021-05-14 01:56:32 +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
|
61dbd91346
|
Lot of small fixes/improvements
|
2021-05-14 01:48:47 +02:00 |
Jérôme Leclercq
|
9376cfefd2
|
Graphics/FrameGraph: Add support for pass name (as debug sections)
|
2021-05-14 01:45:45 +02:00 |
Jérôme Leclercq
|
10aa7231b6
|
Renderer: Fix MRT support
|
2021-05-05 12:01:20 +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
|
044195b209
|
Minor fixes
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
2238bbfa0c
|
Shader: Add AstReflect
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
500ccda85a
|
Shader: StatementPtr& => const StatementPtr&
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
1a8599ba29
|
Shader: Add sanitization of identifiers (fixes GLSL generation)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
3a7f5c2630
|
Shader: Fix optimization
|
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
|
9fd4249a87
|
Shader: compilation fixes
|
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
|
afe3a0ea93
|
Shader: Merge AstScopedVisitor, AstValidator and TransformVisitor to SanitizeVisitor
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
8515c9cea1
|
Shader: Improve ShaderAstCloner
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
0bb9c37a38
|
Shader/Lang: [[attribute]] => [attribute]
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
54c34869a4
|
Fix Shader unit tests
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
3e704b9ea6
|
Shader: Minor fixes
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
0860a0689f
|
Shader/GlslWriter: Improve GLSL readability
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
a90937eb4f
|
Update ShaderNode
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
4bca87b1cb
|
Shader: Add IsExpression/IsStatement
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
b234134abc
|
Shader/ShaderLang: Add type inference for variable declaration
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
0f15387c6c
|
Shader: Add ShaderAst::Clone free function
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
aababb205f
|
Shader: Move attribute parsing to parser, simplifying writer code
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
bca1561f73
|
Shader/GlslWriter: Improve GLSL output
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
3499c1f92f
|
Shader: Remove the need of layout(std140) in external block
|
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
|
f93a5bbdc1
|
Shader: Rework scope handling
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
feffcfa6e5
|
VulkanRenderer: Fix handling of shader modules
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
09df5f389e
|
Shader: Add SpirvDecoder
|
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
|
c1d1838336
|
ShaderLang: Proof of concept (add support for a lot of things)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
9d8ce8f2cd
|
Shader: Add support for function attributes (entry)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
593d80c80e
|
SpirV grammar parser: Add result id operand and version info
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
da81a5b871
|
Shader: Add attribute parsing
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
8135f22b2f
|
Shader: Add attribute and square bracket tokens (first step for attribute support)
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
3f74ee4d66
|
Shader: Rework Parser internals
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
48b93a9dea
|
Shader: Fix SPIRV generation
|
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
|
b320b5b44e
|
Shader: Add function parameters and return handling
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
9a0f201433
|
Initial shaderlang commit
|
2021-04-20 18:18:27 +02:00 |
Jérôme Leclercq
|
6d6391ca46
|
Fix compilation
I forgot master was still in C++14
|
2021-03-30 17:48:32 +02:00 |
Jérôme Leclercq
|
48ab2a4b04
|
ObjectHandle: Fix handling of <T>
|
2021-03-19 09:55:36 +01: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
|
311cfeaf3c
|
OpenGLRenderer: Fix Y flipping for FBOs
|
2021-02-20 19:23:29 +01:00 |
Jérôme Leclercq
|
fb3468854f
|
Renderer: Implement Framebuffers
|
2021-02-20 19:22:08 +01:00 |
Jérôme Leclercq
|
3ef74d6e1d
|
OpenGLRenderer: Use glTexStorage2D instead of glTexImage2D
|
2021-02-20 19:14:13 +01:00 |
Jérôme Leclercq
|
f7442982a4
|
OpenGLRenderer: Implement debug region data
|
2021-02-20 19:10:32 +01:00 |
Jérôme Leclercq
|
8f9f943e2c
|
OpenGLRenderer: Implement primitive mode
|
2021-02-20 18:56:54 +01:00 |
Jérôme Leclercq
|
ac3db8a8bf
|
Utility/PixelFormat: Add preliminary support for SRGB formats (WIP)
|
2021-02-20 18:01:03 +01:00 |
Jérôme Leclercq
|
7c5b1844d3
|
Core/Flag: Improve code
|
2021-02-19 14:51:21 +01:00 |
Jérôme Leclercq
|
32569eef5e
|
Add SpirV masks and update grammar
|
2021-02-19 14:47:24 +01:00 |
Jérôme Leclercq
|
32dcc11258
|
Core/Flags: Add AutoFlag property to disable automatic bit shifting
|
2021-02-19 14:45:37 +01:00 |
Jérôme Leclercq
|
080fd9c7eb
|
Minor fixes
|
2021-02-15 18:17:30 +01:00 |
Jérôme Leclercq
|
a6b5246633
|
OpenGLRenderer: Fix clear values
|
2021-02-15 18:17:10 +01:00 |
Jérôme Leclercq
|
08c2f711b0
|
Graphics/Material: Add UpdateBuffers
|
2021-02-15 18:16:19 +01:00 |
Jérôme Leclercq
|
d058a127e1
|
Renderer/RenderPass: Implement RenderPass correctly
|
2021-02-15 18:14:47 +01:00 |
Jérôme Leclercq
|
2ef772cec7
|
Merge branch 'nazara-next' into graphics-next
|
2021-01-28 16:37:46 +01:00 |
Jérôme Leclercq
|
5eedd3c0bc
|
Renderers: Fix UploadPool
|
2021-01-28 15:59:18 +01:00 |
Jérôme Leclercq
|
41c921bcf6
|
Function order
|
2021-01-27 18:53:02 +01:00 |
Jérôme Leclercq
|
b9151d8a7a
|
Graphics: Improve TextureSampler handling
|
2021-01-27 18:50:49 +01:00 |
Jérôme Leclercq
|
78c3f57333
|
Regenerate global headers
|
2021-01-27 16:45:11 +01:00 |
Jérôme Leclercq
|
a9e9ef2524
|
Graphics: Add GraphicalMesh and Model classes
|
2021-01-27 16:45:00 +01:00 |
Jérôme Leclercq
|
a1e0ae3f38
|
Utility/IndexBuffer: Fix GetStride() method for big meshes
|
2021-01-27 16:44:06 +01:00 |
Jérôme Leclercq
|
e3e5c4ba8f
|
Graphics: Add ModelInstance class
|
2021-01-22 23:32:32 +01:00 |
Jérôme Leclercq
|
19783f7755
|
Graphics/Material: Rework UBO handling
|
2021-01-22 23:31:54 +01:00 |
Jérôme Leclercq
|
a0d5750ec8
|
Graphics: Add GetViewerDataUBO
|
2021-01-22 23:27:11 +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
|
e6ada6846d
|
Graphics: Fix PredefinedViewerData size
|
2021-01-22 18:04:58 +01:00 |
Jérôme Leclercq
|
a037eef4c9
|
Shader: Remove ShaderNode::GetExpressionType (replaced by visitor) and minor stuff
|
2021-01-14 22:01:53 +01:00 |
Jérôme Leclercq
|
00ac6e8a0a
|
Shader: Add ShaderAstOptimizer
|
2021-01-14 22:01:05 +01:00 |
Jérôme Leclercq
|
acb998f67e
|
ShaderAst: Add NoOp node
|
2021-01-14 21:58:06 +01:00 |
Jérôme Leclercq
|
a9f2e05b57
|
Fix typo in enum
|
2021-01-14 21:56:55 +01:00 |
Jérôme Leclercq
|
4d63d6e022
|
Shader: Add basic support for Branch node in spir-v
|
2021-01-04 10:27:08 +01:00 |
Jérôme Leclercq
|
44bc86d082
|
Shader/SpirvWriter: Rename MergeBlocks to MergeSections
to avoid confusion with SpirV blocks
|
2021-01-03 11:11:54 +01:00 |
Jérôme Leclercq
|
079834ca6a
|
Graphics/UberShader: Fix inline keyword
|
2021-01-03 10:52:02 +01:00 |
Jérôme Leclercq
|
a801754f6e
|
Remove Material::EnableAlphaTest (superseded by conditions)
|
2021-01-03 10:48:47 +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
|
ed72d668d9
|
Shader: Add Discard node
|
2020-12-30 20:05:16 +01:00 |
Jérôme Leclercq
|
a1c15a8c16
|
Math: Add SetBit and TestBit
|
2020-12-30 18:14:41 +01:00 |
ImperatorS79
|
143d7d391a
|
Remove Value for size_t and correctly fix the problem
|
2020-11-21 20:21:26 +01:00 |
ImperatorS79
|
4bf49876c6
|
Build Nazara on macos up to Nazara_network (not included
|
2020-11-21 20:05:19 +01:00 |
Jérôme Leclercq
|
960817a1f1
|
Add conditional expression/statement support for shaders
|
2020-11-19 13:56:54 +01:00 |
Jérôme Leclercq
|
8e6b4cc673
|
Graphics/Model: Fix copy constructor
|
2020-11-01 17:40:12 +01:00 |
Jérôme Leclercq
|
8027ae9abe
|
Graphics: Fix PredefinedShaderBinding enum
|
2020-10-31 16:27:35 +01:00 |
Jérôme Leclercq
|
89609570f4
|
Graphics: WIP (almost working)
|
2020-10-30 23:08:48 +01:00 |
Jérôme Leclercq
|
73e86407b3
|
Fix some warnings
|
2020-10-30 23:08:27 +01:00 |
Jérôme Leclercq
|
40f3072ff9
|
Renderer: Add RenderPipeline::GetPipelineInfo
|
2020-10-30 23:07:21 +01:00 |
Jérôme Leclercq
|
b62130dab9
|
VulkanRenderer: Fix physical device bullshit
Keep a single list instead of many
|
2020-10-30 23:06:56 +01:00 |
Jérôme Leclercq
|
009e5a0466
|
Renderer: Rename ShaderStageImpl to ShaderStage
|
2020-10-30 23:06:15 +01:00 |
Jérôme Leclercq
|
0d779077c1
|
Core/Algorithm: Add AccessByOffset functions
|
2020-10-30 23:04:22 +01:00 |
Jérôme Leclercq
|
d243e7bcd2
|
OpenGLRenderer: Move error to string to Utils
|
2020-09-26 20:43:55 +02:00 |
Jérôme Leclercq
|
3b2e375382
|
WIP
|
2020-09-26 20:04:05 +02:00 |
Jérôme Leclercq
|
6007d8b4ad
|
Fix FileLogger noexcept attribute
|
2020-09-26 11:51:47 +02:00 |
Jérôme Leclercq
|
65337c6a38
|
Fix a lot of warnings and some errors
|
2020-09-26 11:44:09 +02:00 |
Jérôme Leclercq
|
2b6a463a45
|
Remove Nz::String and Nz::StringStream
|
2020-09-25 19:31:01 +02:00 |
Lynix
|
79c53061e0
|
Shader: Add type functions
|
2020-09-22 21:50:07 +02:00 |
Lynix
|
9c2c62b063
|
Shader/ShaderAst: Add some noexcept specifiers
|
2020-09-22 21:24:51 +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
|
95c9ad0fd8
|
Add graphics module base
|
2020-09-20 14:52:44 +02:00 |
Jérôme Leclercq
|
790815e9ee
|
Merge branch 'master' into nazara-next
|
2020-09-17 20:28:11 +02:00 |
Jérôme Leclercq
|
3f6f18859c
|
Fix compilation
|
2020-09-17 20:25:15 +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
|
631aeb77a2
|
Update global headers
|
2020-09-11 13:50:19 +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
|
0cadaecbd2
|
Fix that clang warning
|
2020-09-07 16:21:43 +02:00 |
Jérôme Leclercq
|
193deb6c04
|
Fix some minor stuff
|
2020-09-06 17:09:39 +02:00 |
Jérôme Leclercq
|
67b0d70b7c
|
Upgrade to Newton 3.14 and make it a thirdparty lib
|
2020-09-06 17:09:19 +02:00 |
Jérôme Leclercq
|
385927b05a
|
Fix minor stuff
|
2020-09-04 16:14:11 +02:00 |
Jérôme Leclercq
|
53e5aa924f
|
VulkanRenderer/Swapchain: Rename Buffer to Image
|
2020-09-04 15:58:07 +02:00 |
Jérôme Leclercq
|
69dda85e45
|
Vulkan: Refactor function list headers
|
2020-09-04 15:21:46 +02:00 |
Jérôme Leclercq
|
5f9025c23c
|
Fix VulkanRenderer compilation under Linux ( 🖕 X.h)
|
2020-09-04 15:13:18 +02:00 |
Jérôme Leclercq
|
951642ecb4
|
Fix some warnings
|
2020-09-03 16:33:49 +02:00 |
Jérôme Leclercq
|
0255541b44
|
Replace EGL symbol loader
|
2020-09-03 16:33:37 +02:00 |
Jérôme Leclercq
|
0609a10c25
|
OpenGLRenderer: Get rid of std::function by using function indexes
|
2020-09-03 13:54:44 +02:00 |
Jérôme Leclercq
|
6848ff8b34
|
OpenGLRenderer: Add debug wrapper (which handle OpenGL errors)
|
2020-09-03 13:39:34 +02:00 |
Jérôme Leclercq
|
d622a75d73
|
Add BufferUsage_Dynamic
Since OpenGL screams in performance warning because of a GL_STATIC_DRAW buffer being updated from another buffer
|
2020-09-02 17:19:52 +02:00 |
Jérôme Leclercq
|
d05df45cb6
|
Fix EGL context sharing
It seems contexts must be part of the same display to be shared, and that using default display with window isn't an issue on Windows/X11
|
2020-09-02 15:40:57 +02:00 |
Jérôme Leclercq
|
bc2f18c852
|
OpenGLRenderer: Try to fix EGLContext sharing with X11
|
2020-09-01 20:10:09 +02:00 |
Jérôme Leclercq
|
d7586aaef7
|
Oopsie
|
2020-09-01 19:28:54 +02:00 |
Jérôme Leclercq
|
c7b0d103e1
|
OpenGLRenderer: remove opengl32 dependency on Linux
|
2020-09-01 19:28:10 +02:00 |
Jérôme Leclercq
|
7ea0b223ec
|
Linux fixes
|
2020-09-01 19:18:27 +02:00 |
Jérôme Leclercq
|
ae34533595
|
Minor fixes
|
2020-09-01 18:47:08 +02:00 |
Jérôme Leclercq
|
7d2673eabd
|
Shader: Fix shader serialization
|
2020-09-01 18:46:57 +02:00 |
Jérôme Leclercq
|
ef737a8ecd
|
Add basic EGL support
|
2020-09-01 18:46:35 +02:00 |
Jérôme Leclercq
|
09f85e8244
|
Moar fix
|
2020-08-28 16:00:11 +02:00 |
Jérôme Leclercq
|
35dccd822c
|
Remove useless Wrapper.hpp headers
|
2020-08-28 15:52:42 +02:00 |
Jérôme Leclercq
|
ea8f34c45e
|
Rename WGL folder from Win32 to WGL
|
2020-08-28 15:52:31 +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
|
0ff0425045
|
Some more fixes, hopefully GCC will stop shitting itself now
|
2020-08-27 23:22:13 +02:00 |
Jérôme Leclercq
|
3fe70476bb
|
Workaround some GCC bug
|
2020-08-27 22:58:44 +02:00 |
Jérôme Leclercq
|
36120b9501
|
Compilation fixes
|
2020-08-27 20:24:27 +02:00 |
Jérôme Leclercq
|
c87affe276
|
Fix redefinition of type
|
2020-08-27 20:12:54 +02:00 |
Jérôme Leclercq
|
b2a7e620e0
|
Merge branch 'master' into nazara-next
|
2020-08-27 20:12:36 +02:00 |
Jérôme Leclercq
|
056b78c2f7
|
Fix 32bits compilation
|
2020-08-27 20:09:51 +02:00 |
Jérôme Leclercq
|
df51526841
|
Fix some compilation errors
|
2020-08-27 20:02:20 +02:00 |
Jérôme Leclercq
|
2a875c8bdc
|
Remove Graphics module and fix compilation
|
2020-08-27 19:43:31 +02:00 |
Jérôme Leclercq
|
9d16559f55
|
Core/Bitset: Fix crash when resizing to zero
|
2020-08-27 19:25:43 +02:00 |
Jérôme Leclercq
|
a28635ec70
|
Merge pull request #326 from DigitalPulseSoftware/vulkan
Add OpenGL / Vulkan renderers
|
2020-08-27 18:38:21 +02:00 |
Jérôme Leclercq
|
51ec9741df
|
OpenGLRenderer: Handle resize/minimize
|
2020-08-27 18:32:22 +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
|
982d28cace
|
Fix infinite loop
|
2020-08-25 12:34:43 +02:00 |
Jérôme Leclercq
|
9b313dac2e
|
Quality of life improvements
|
2020-08-24 17:14:01 +02:00 |
Jérôme Leclercq
|
ba777ebbca
|
Shader/SpirvPrinter: Add settings
|
2020-08-24 16:49:14 +02:00 |
Jérôme Leclercq
|
77b66620c9
|
Refactor SpirV classes
SpirvStatementVisitor was merged with SpirvExpressionLoad
SpirvExpressionLoadAccessMember was renamed SpirvExpressionLoad
|
2020-08-23 21:56:30 +02:00 |
Jérôme Leclercq
|
93de44d293
|
Big SpirVWriter refactor
|
2020-08-23 18:32:28 +02:00 |
Jérôme Leclercq
|
66a14721cb
|
Shader/Spirv: Put types and constants in the same section
|
2020-08-21 22:51:11 +02:00 |
Jérôme Leclercq
|
cd23c01ace
|
Shader: AccessMember can now access nested fields
|
2020-08-21 22:50:30 +02:00 |
Jérôme Leclercq
|
9df219e402
|
Add SpirvConstantCache
And unsigned int types for shaders
|
2020-08-20 01:05:16 +02:00 |
Jérôme Leclercq
|
0b507708f4
|
Shader/SpirvWriter: Split section to another class + improve variadic parameters support
|
2020-08-18 00:00:05 +02:00 |
Jérôme Leclercq
|
73e88a2573
|
Add Spir-V header/source generator
|
2020-08-17 23:59:08 +02:00 |
Jérôme Leclercq
|
581a5344e6
|
OpenGLRenderer: Add wglSwapIntervalEXT
|
2020-08-11 00:15:34 +02:00 |
Jérôme Leclercq
|
1a12e18a36
|
Fix copyright dates and some defines
|
2020-08-11 00:01:49 +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
|
ac7b523bc7
|
OpenGLRenderer: Fix textures
|
2020-08-09 18:38:58 +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
|
7fd3264d08
|
Add FieldOffsets class
|
2020-08-04 01:33:52 +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 |
Lynix
|
aff617f147
|
Network: Replace some String by std::string
|
2020-07-25 14:32:53 +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 |
Jérôme Leclercq
|
b076a517c6
|
Merge branch 'vulkan' into shader-nodes
|
2020-07-08 22:38:24 +02:00 |
Lynix
|
4f671873c1
|
Renderer: Add NazaraBinary shader "language" and handle it in OpenGLRenderer
|
2020-06-18 20:05:22 +02:00 |
Lynix
|
74acf440fc
|
Minor fixes
|
2020-06-18 20:04:25 +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
|
40ade49767
|
Update global headers
|
2020-06-17 16:00:16 +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 |