halx99
c37af4c38e
Improve shader managment
...
1. Rename uniformId to batchId, refine batch draw check logic, not use xxhash to compute uniforms id
2. Material works, not check all cpp-tests, but some 2d/3d material works fine
3. Shader load/cache API improvements.
4. BREAK compatibliity: Node::setProgramState change parameter needsRetain to ownPS and value inverted.
5. custom vertexLayout setup: add new API ProgramState::getMutableVertexLayout, mark ProgramState::setVertexAttrib deprecated.
6. ProgramManager registerCustomProgram change to gen progId by vsName, fsName
with xxhash64, if register succed, user can load it by progId with `loadProgram`
7. Add API ProgramManager::loadProgram for loading builtin by progType or
loding a custom program by id
8. Add API ProgramManager::loadProgram to load program by vsName, fsName
immediately without register as CUSTOM_PROGRAM
9. Add API Node::setProgramStateByProgramId(progTypeOrId); for set programState with
programType or programId explicit.
10. Migrate material load logic
2023-07-25 09:40:05 +08:00
halx99
5a0838e52b
Migrate materials
2023-07-23 21:43:25 +08:00
halx99
c675e15a92
Migrate cpp_tests shaders
2023-07-22 23:59:17 +08:00
halx99
9770aaa812
Fix shader files search
2023-07-22 23:58:52 +08:00
halx99
0d4a274d41
Fix incorrect ubo upload
...
because ubo was share in ProgramGL
2023-07-21 20:49:06 +08:00
halx99
756e860794
Fix state for multi gl context
...
Solve imgui multi-viewport afterimage problem
2023-07-21 19:32:44 +08:00
halx99
1434b1a6c9
Add optimizing comment[skip ci]
2023-07-21 08:37:21 +08:00
halx99
ea91aebb91
Improve gl state cache
2023-07-21 07:59:38 +08:00
Deal
a4aef9e98e
Fix GLSLCC out dir
2023-07-20 21:26:54 +08:00
halx99
76f00b4456
Make renderer works on opengl core profile mode
2023-07-20 20:23:56 +08:00
halx99
7315824e5f
Fix linux build
2023-07-20 12:25:31 +08:00
Deal
261b4b5a16
Update axmolver.h.in [skip ci]
2023-07-20 10:22:45 +08:00
halx99
71c2d3a3b1
Init axslc search path at ProgramManager init
2023-07-20 10:20:06 +08:00
halx99
60bbd3b1a3
Auto pack axslc into android apk
2023-07-20 01:18:27 +08:00
halx99
02616bb774
Merge: ac073ee8c1
4753270d77
...
Merge branch 'main' into dev
2023-07-19 23:45:36 +08:00
halx99
1b4c9bbec8
Auto compile app/Sources/shaders to axslc/custom
2023-07-19 23:41:16 +08:00
halx99
7bd3b57809
Improve code style
2023-07-19 21:12:25 +08:00
halx99
862a682b7b
Remove deprecated stubs
2023-07-19 21:10:11 +08:00
halx99
ef51437c25
Fix cpp_tests resources load priority
2023-07-19 21:05:46 +08:00
halx99
bc6cdf0b11
Fix ci
2023-07-19 21:04:50 +08:00
halx99
e11b8de571
Fix ci
2023-07-19 19:53:32 +08:00
halx99
42f666ff89
Refactor GL uniform block support
2023-07-19 19:20:06 +08:00
halx99
04c5505fa2
Fix glDisable state guard
2023-07-19 18:35:05 +08:00
Deal
eae07123dc
Refer to #1278
2023-07-19 09:10:46 +08:00
Deal
6207431e6e
Fix glDisable state guard
2023-07-19 00:17:10 +08:00
Turky Mohammed
7759ad562f
Optimize `OpenGL` State Management ( #1269 )
...
Co-authored-by: halx99 <halx99@live.com>
2023-07-18 21:16:21 +08:00
halx99
caacef1215
Merge: c9436765b4
ed0b22ac70
...
Merge branch 'main' into dev
2023-07-18 15:17:31 +08:00
halx99
a858d08cc3
FIx GL error
2023-07-18 15:16:29 +08:00
halx99
3d4b03b6a2
Fix UWP build
...
- Use compatible GLES API: glGetActiveUniform
- glGetActiveUniformName not present in both GLES3 and GLES2
2023-07-18 00:10:57 +08:00
halx99
dcd408c636
Sync compiled shaders for UWP [skip ci]
2023-07-18 00:09:00 +08:00
halx99
1c669912b5
More easy for dev
2023-07-17 20:51:28 +08:00
Deal
a38126b113
Update axmolver.h.in [skip ci]
...
The main branch still 1.0.x compatible
2023-07-17 13:14:26 +08:00
Deal
071d9aa8ea
Remove gitter [skip ci]
...
It's only bakup IM room, discord is preferred
2023-07-17 12:39:19 +08:00
Turky Mohammed
d3ee6c41c3
Implement `Uniform Buffer Objects` in OpenGL ( #1277 )
2023-07-17 11:39:12 +08:00
halx99
d2d8cd9366
Fix glslcc cmdline error
2023-07-17 08:14:13 +08:00
halx99
bc6f8802e6
Remove binding index for shader uniform block
...
Not required
2023-07-16 22:10:48 +08:00
halx99
97a76423c4
Fix cmake option not working
2023-07-16 21:58:26 +08:00
halx99
a5e4ab17f6
Auto enable early features in branch 'dev'
2023-07-16 15:19:29 +08:00
halx99
1c1989e333
Merge: d14b0d5319
b01786ef2c
...
Merge branch 'main' into dev
2023-07-16 14:56:40 +08:00
halx99
206ecbb703
Cache GLSLCC_OUT_DIR for symlink works
2023-07-16 14:49:32 +08:00
halx99
e34fe4ba98
Fix light num configure type
2023-07-16 14:38:06 +08:00
halx99
e957c5ec0a
Remove GLSLCC_FLAT_UBOS
...
1. because we are researching ubo support for OpenGL
2. metal already support non flat-ubos
2023-07-16 14:21:46 +08:00
halx99
b2fdbb9b21
Commits migrated engine builtin shaders
2023-07-16 14:15:14 +08:00
halx99
3ab3249700
Update glslcc to 1.8.1
...
Add dual outputs support, this is useful to handle normal map preprocessor
2023-07-16 14:14:41 +08:00
RH
95f352e0d0
Invert if condition checking for existence of the axmol bin path in the user path env variable ( #1275 )
...
Make list mutable to allow for inserting new path
2023-07-16 13:51:36 +08:00
halx99
ac778081d1
Remove unnecessary light define checks
2023-07-16 00:42:16 +08:00
halx99
09d8f849fe
Fic ci
2023-07-15 23:52:25 +08:00
halx99
9a384e39f2
Merge: 412e398651
1daf87c768
...
Merge branch 'main' into dev
2023-07-15 22:45:26 +08:00
Deal(涓€绾跨伒)
2f2ace9dbd
Reduce pull-request ci jobs
2023-07-15 22:39:32 +08:00
j-jorge
c2d7bdcb45
Allow unity builds on a subset of the sources. ( #1266 )
...
In order to allow unity builds we need to avoiding "using namespace"
at file scope, #undef our file-specific #defines, and avoid having
static functions with identical name and signature.
2023-07-15 19:06:54 +08:00