halx99
b16e430353
ASTC hardware detection: restrict check render result color
2023-08-17 00:36:08 +08:00
halx99
0273431bc8
Enable instancing draw when device support
2023-08-16 19:24:55 +08:00
halx99
b14a102ecb
Improve ASTC detection
2023-08-16 13:04:48 +08:00
halx99
af98934992
Fix ci
2023-08-15 18:21:17 +08:00
halx99
d427fd8767
Improve DeviceInfoGL
2023-08-15 18:02:02 +08:00
Deal
7052dd4475
Improve astc support detection
2023-08-15 00:37:16 +08:00
halx99
95737f3440
Fix astc detection
2023-08-14 23:33:02 +08:00
halx99
69c13a905f
Improve code style
2023-08-14 23:07:13 +08:00
halx99
bfe167121e
Add cmake option AX_GLES_PROFILE
...
Valid value of AX_GLES_PROFILE: 0, 200, 300
By default, the AX_GLES_PROFILE is:
- android: 200, allow axmol apps runs on: API 17 Android 4.2+ devices
- winuwp: 300
- Win32/linux/osx/ios/tvos: 0
For ios/tvos, will forcing AX_GLES_PROFILE to 300 if AX_GLES_PROFILE not 0
2023-08-14 20:40:05 +08:00
Deal
9dc9e9adc7
Update android.yml
2023-08-13 23:58:18 +08:00
halx99
bd0e1fef4b
Fix compile error
2023-08-13 22:09:02 +08:00
Deal
572bb2f700
Test use glad on android
2023-08-13 00:24:35 +08:00
halx99
cc9cbcbff9
Merge: eba7fc17ba
6bbdc273f8
...
Merge branch 'main' into dev
2023-08-10 18:53:35 +08:00
halx99
46ed10dac3
Update yasio to v4.1.0
2023-08-10 18:36:45 +08:00
halx99
f63932bb91
Update ios GLES to GLES3
2023-08-09 22:25:15 +08:00
halx99
7a40c94e2a
Check vao creation
2023-08-09 21:46:03 +08:00
halx99
1ec408812f
Fix cmake setup
2023-08-09 14:37:43 +08:00
Deal
969baf94d4
Update CHANGELOG [skip ci]
2023-08-09 13:52:28 +08:00
halx99
e6039273f5
Reset texture binding state when deleteTexture
2023-08-05 23:08:37 +08:00
halx99
28150610be
Improve code style
2023-08-02 11:34:06 +08:00
halx99
2d0a63660f
Improve custom program draw batch
2023-08-02 10:31:52 +08:00
halx99
30306ad316
Delete glsl-optimizer due to new shader workflow only require offline tool glslcc
2023-08-01 12:12:10 +08:00
halx99
5a68442d1e
Improve code style
2023-08-01 12:00:31 +08:00
halx99
1a3a4fa0eb
Implement metal instancing draw
2023-07-31 10:03:24 +08:00
halx99
805b115719
Update lua bindings
2023-07-29 21:30:35 +08:00
halx99
bba3818829
Fix gray shader name
2023-07-29 17:46:10 +08:00
halx99
a04c2d6945
Merge pull request #1253 from DelinWorks/instancing-support
...
Co-authored-by: Turky Mohammed <45469625+DelinWorks@users.noreply.github.com>
2023-07-28 14:24:58 +08:00
Deal
ec4e5e1258
Fix ProgramGL uniform stage
2023-07-28 13:45:52 +08:00
halx99
0f642ddb2e
Improve shader module and empty texture managment
2023-07-28 11:46:34 +08:00
halx99
d882208b8b
Improve code style
2023-07-28 10:37:27 +08:00
halx99
2191b51499
[WIP] Not convert mat3 to mat3x4 in engine
...
Because both metal and GLSL3/ESSL3 mat3 is identical to mat3x4, so provide a
class Mat3 to handle GPU mat3x3
2023-07-27 22:36:51 +08:00
halx99
c8464ed5db
Remove unnecessary uniform convert
2023-07-27 20:37:06 +08:00
halx99
286ff503c5
Improve sgs binary reflect info read
2023-07-27 19:13:09 +08:00
halx99
edee8af2a6
Fix metal render issues
...
- Fix metal uniform buffer alignment size
- Fix spine two color tint render for metal
- Update glslcc to 1.9.0
2023-07-27 18:21:16 +08:00
halx99
a3548bbe3d
Fix metal uniform block member offset and size
2023-07-26 20:05:16 +08:00
halx99
cf69428746
Use macro for shader location binding
2023-07-25 19:06:12 +08:00
halx99
ea2124bb2e
Fix ci
2023-07-25 10:18:14 +08:00
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
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
halx99
76f00b4456
Make renderer works on opengl core profile mode
2023-07-20 20:23:56 +08:00
halx99
71c2d3a3b1
Init axslc search path at ProgramManager init
2023-07-20 10:20:06 +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
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