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
ae3bcb77da
Fix navmesh debug draw vertex layout incorrect
2023-08-01 12:08:13 +08:00
halx99
5a68442d1e
Improve code style
2023-08-01 12:00:31 +08:00
Turky Mohammed
1b2c651daa
[BUG] Instancing memory leak fix ( #1288 )
...
* Implement Uniform Buffer Objects in OpenG
* Revert "Implement Uniform Buffer Objects in OpenG"
This reverts commit 7d32372ef4
.
* Update Mesh.cpp
2023-08-01 06:21:42 +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
d2dda873c4
Improve code style
2023-07-29 15:46:04 +08:00
halx99
9624ec4663
Fix android image reference issue
2023-07-28 15:21:56 +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
5a0838e52b
Migrate materials
2023-07-23 21:43:25 +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
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
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
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
e34fe4ba98
Fix light num configure type
2023-07-16 14:38:06 +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
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
Deal(涓€绾跨伒)
c5a61124c0
Add chat badges [skip ci]
2023-07-15 11:25:48 +08:00
halx99
2b30d8002f
Merge: 7afdd4f2c1
e5b197776c
...
Merge branch 'main' into dev
2023-07-15 01:17:32 +08:00
halx99
e34d02eb7d
Fix build1k cmake setup
2023-07-15 01:17:15 +08:00
halx99
c476f8b117
Add cmake option AX_ENABLE_EARLY_FEATURES
2023-07-15 01:02:13 +08:00
halx99
8e39354e99
Merge: 83a830d011
cfcafd517a
...
Merge branch 'main' into dev
2023-07-15 01:00:31 +08:00
Deal(涓€绾跨伒)
4867fc8f2e
Update pull_request_template.md ( #1270 )
2023-07-15 00:21:23 +08:00
halx99
c6b575e666
Revert define on shader, not suitable glslcc
2023-07-14 23:21:51 +08:00
halx99
42fcb1f86e
glslcc workflow: metal init commit
2023-07-14 23:07:47 +08:00
RH
0c17a35fa8
Fix for crash in TextureCache test ( #1267 )
2023-07-11 21:55:17 +08:00
halx99
aeb6268f1c
Fix cpp-tests shader loads
2023-07-11 16:40:49 +08:00
halx99
17a3e6408b
Re-enable flat-ubos
2023-07-11 15:43:50 +08:00
halx99
c064124802
[GLSLCC] Remove spec defines, because the behavior incorrect
2023-07-10 17:02:20 +08:00
halx99
5d7a86a1b9
Merge: 89a739a8ea
09a3a950ae
...
Merge branch 'dev' into 1.1-dev
2023-07-10 15:57:00 +08:00
j-jorge
fcdbd9968e
Add missing include guards. ( #1265 )
2023-07-10 08:47:20 +08:00
RH
6bc2deeba8
Update Sprite::getQuad() to return const reference ( #1260 )
2023-07-09 19:00:12 +08:00
RH
ce590c24a0
Fix for crashes in several tests ( #1259 )
2023-07-09 14:45:41 +08:00
halx99
ed6ec7a32d
[GLSLCC] Suppression macro not defined errors
2023-07-09 12:04:58 +08:00
halx99
7c410f8b25
Bump new shader workflow
...
1. Add compiled shader dir `axslc` to search path for win32,linux
2. ProgramManager: register shader program by shader name
3. modify all shader define from sources to name in Shader.cpp/Shader.hpp
4. Remove shader version define and precision decls for GLES
2023-07-08 18:47:06 +08:00
halx99
25077669c8
For bot happy
2023-07-07 04:05:56 +08:00
halx99
acc47b3281
Bump 1.1.0
2023-07-06 20:37:59 +08:00
Deal(涓€绾跨伒)
7771d4f7b1
Fix ci
2023-07-06 19:36:27 +08:00
halx99
94b5705bd3
Improve cmake script
...
- glslcc helper function
- Rename ax_add_shader to ax_target_compile_shaders
- Provide argument FILES for specify single or multi shader
source files support, i.e.
ax_target_compile_shaders(target_name FILES 1.frag 1.vert)
- Rename all _AX_ROOT_PATH to _AX_ROOT
2023-07-06 19:21:36 +08:00
halx99
0d5addaf39
Update setup.py to setup.ps1 in cmake [skip ci]
2023-07-06 14:00:21 +08:00
Deal(涓€绾跨伒)
27e66df931
Use glad for android GLESv3 support
2023-07-04 17:34:12 +08:00
Deal(涓€绾跨伒)
a4fbe9c598
Fix CMakeLists.txt
2023-07-03 21:16:33 +08:00
halx99
7cb9aac41e
Rename option `AX_USE_COMPAT_GL` to `AX_USE_ANGLE`
2023-07-03 20:35:55 +08:00
j-jorge
0af6db6345
Add missing include guard in NinePatchImageParser.h ( #1248 )
2023-07-01 08:53:09 +08:00
j-jorge
049db01a8a
UserDefault: check the result of posix_ftruncate. ( #1249 )
2023-07-01 08:51:29 +08:00
j-jorge
b8202ed918
Fix missing return value in EditBoxImplLinux::getNativeDefaultFontName(). ( #1250 )
2023-07-01 08:49:17 +08:00
halx99
9ac847df1e
Fix warning [skip ci]
2023-06-28 16:17:55 +08:00
halx99
928100186f
Fix #1243
2023-06-26 09:12:29 +08:00
halx99
c06d5af3f8
Move queueOperation from GLView to Director
2023-06-25 01:17:29 +08:00
halx99
3eac3abecf
Sync yasio to latest
2023-06-24 21:18:27 +08:00
Deal(涓€绾跨伒)
feffe4095c
Update 3rd sources ( #1240 )
...
- llhttp: 8.1.1
- yasio: latest
- recast 1.6.0
- openal-soft: latest for official UWP support
- glad 2.0.4
- libpng 1.6.40
- astcenc 4.5.0
- Add fastlz: latest
- Disable lz4 by default
2023-06-24 09:17:14 +08:00
Deal(涓€绾跨伒)
c20ef0b299
Apple Media, print error reason when load media failed
2023-06-19 09:27:28 +08:00
halx99
bb56ee6895
Improve code style
2023-06-15 12:16:39 +08:00
halx99
506f994b71
Improve CMakeLists.txt
2023-06-13 20:44:20 +08:00
halx99
2d518922ba
Improve cmake
...
If no system libvlc, try use prebuilt.
2023-06-13 00:10:53 +08:00
halx99
1ed5596377
Update docs
2023-06-12 14:15:37 +08:00
Deal(涓€绾跨伒)
dfdca7c268
Fix ci
2023-06-12 09:24:13 +08:00
halx99
85111a4cc3
Improve engine version definitions
2023-06-12 09:14:23 +08:00
halx99
02cc0a1743
Delete unused sources
2023-06-11 19:21:05 +08:00
halx99
63175a193e
Move win32 _ftruncate impl to base/posix_io.cpp
2023-06-11 19:19:12 +08:00
halx99
2cd3f8c6c9
Move posix io macros to base/posix_io.h
2023-06-11 14:39:19 +08:00
Deal(涓€绾跨伒)
abd8029f64
Remove CC prefix from code file name ( #1230 )
...
* Add migrate sources tool
* Fix include replace regex
* Fix compile
* Migrate maually
* Disable sources-migrate tool by default
* Fix ci
* Fix ci
* Improve source migrate
* Fix ios/tvos ci
* Fix ios/tvos ci
* Fix
2023-06-11 13:08:08 +08:00
Deal(涓€绾跨伒)
bc82034ffd
Improve media-engine for android, linux ( #1228 )
...
* Improve media-engine
- Implement andorid,linux
- Improve local file uri scheme
* Fix ci
* Improve code style
* Improve
* Update VlcMediaEngine.cpp
* Update AvfMediaEngine.h
* Fix ci
* Improve code style
* Enable androidx gradle.properties [skip ci]
* Improve code style
* Remove unnecessary callbacks
* Rename VideoPlayer to MediaPlayer
2023-06-10 22:05:49 +08:00
halx99
2da66a8f1f
Improve gradle script
2023-06-06 11:15:46 +08:00
halx99
8bbe962704
Update JNI call
2023-06-05 21:55:23 +08:00
RH
978648e5a9
Factor in protected nodes when creating global Z node priority map for event dispatcher ( #1224 )
2023-06-05 17:09:50 +08:00
halx99
53a5057867
[Audio] Fix _onALCEvent prototype
2023-06-04 10:04:08 +08:00
Deal(涓€绾跨伒)
b534d9d1f4
Improve code style
2023-06-02 17:15:01 +08:00
Deal(涓€绾跨伒)
2de66bbefa
Update AudioEngineImpl.cpp
2023-06-02 01:59:05 +08:00
halx99
8771b3e476
[Audio] Improve device handling
2023-06-01 20:54:55 +08:00
halx99
583d0a578f
[Audio] alSourceAddNotificationExt not present openal-soft
2023-06-01 14:51:00 +08:00
halx99
e05d0c4905
[Video] Enable VideoTexture streaming for iOS
2023-06-01 12:48:40 +08:00
Deal(涓€绾跨伒)
0507082895
[Audio] Fix can't hear sound in ios simulator 16.0
2023-06-01 12:32:58 +08:00
Deal(涓€绾跨伒)
92a95cc330
Revert "Update openal-soft to latest for UWP support" ( #1223 )
...
* Revert "Update openal-soft to latest for UWP support"
2023-05-31 23:57:33 +08:00
halx99
bfcd3001c6
Add openal-soft feature `ALC_SOFT_system_events` check
2023-05-31 21:43:11 +08:00
halx99
3c5ad508b5
[REFINE] Improve Audio Engine, properly continue play after device state changed
...
i.e.
- Default device changed
- Device disconnected (Android oboe)
2023-05-31 20:46:11 +08:00
halx99
f0db2648fe
[FEATURE] Add new API GLView::queueOperation
...
- Queue a priority operation in render thread, even through app in background
- Please do logic in callback, don't update ui or any other render state
usage
```
Director::getInstance()->getOpenGLView()->queueOperation([](void* param){
// do somethings for logic only(Don't update render state or UI)
});
```
2023-05-31 20:42:39 +08:00
Deal(涓€绾跨伒)
4aba036936
Remove duplicate using
2023-05-31 20:32:07 +08:00
Maksymilian Galas
6b5ee65d6e
Add support for haptic feedback on iOS and Android devices ( #1222 )
...
* Add support for haptic feedback on iOS and Android devices
* Disable haptic feedback on tvOS
* Remove unused import
2023-05-31 20:14:31 +08:00
Deal(涓€绾跨伒)
bbebb28277
[REFINE] Reopen alsoft device when default device changed ( #1219 )
2023-05-29 20:19:17 +08:00
Deal(涓€绾跨伒)
cd123d7a15
[REFINE] Use ipv4 address preferred for console command server ( #1216 )
2023-05-26 22:13:47 +08:00
Deal(涓€绾跨伒)
df3d3586b6
[REFINE] Win32: Avoid video frames buffer accumulation ( #1215 )
2023-05-26 19:41:01 +08:00
Deal(涓€绾跨伒)
dca6c87c4a
[Refine] Improve exit flow ( #1213 )
2023-05-25 15:45:00 +08:00
Deal(涓€绾跨伒)
dabc0124e7
Add 1 overload AudioEngine::play2d for time offset support ( #1210 )
...
Usage:
`AudioEngine::play2d("xxx/xxx.mp3", AudioPlayerSettings{false/*looping*/, 1.0f/*volume*/, 2.0f /*time offset in seconds*/});`
2023-05-23 19:44:20 +08:00
halx99
5c459de11c
Update yasio to latest
2023-05-15 16:57:02 +08:00
halx99
233d2d8ada
Fix ci
2023-05-14 22:52:40 +08:00
halx99
50b9249e28
Update yasio to latest
2023-05-14 22:39:05 +08:00
halx99
9cef85c200
Fix ci
2023-05-14 18:37:32 +08:00
halx99
86242db115
Fix ci
2023-05-14 18:24:41 +08:00
halx99
cdf65a5ef1
Fix ci
2023-05-14 18:16:24 +08:00
Deal(涓€绾跨伒)
a775ebdca8
Update HttpClient.cpp ( #1202 )
2023-05-08 09:38:46 +08:00
aismann
f54836160e
Update CCAutoPolygon.cpp ( #1201 )
...
Removed "nonsens" code
2023-05-08 06:17:38 +08:00
halx99
7220abdb6f
Fix ci
2023-05-03 20:34:45 +08:00
halx99
bee148fe9d
Fix RichElementImage scale not initialized
2023-05-03 20:31:07 +08:00
RH
98146f438b
Fix RenderTexture memory leak and increased memory usage when initWithWidthAndHeight is called ( #1191 )
2023-04-28 14:54:57 +08:00
Turky Mohammed
90bc5108cd
Refactor HSV/HSL ( #1187 )
...
* Refactor HSV/HSL
some code in `CCParticleSystemQuad.cpp` depends on changes made in `HSV/HSL` classes.
* remove incorrect const&
2023-04-26 17:44:32 +08:00
Turky Mohammed
aed837b0ae
Update ccTypes.cpp ( #1184 )
2023-04-25 10:39:52 +08:00
halx99
1834561a2c
Fix ci
2023-04-22 20:52:23 +08:00
halx99
16ce534635
Update yasio to latest
2023-04-17 00:28:05 +08:00
RH
6b9d5fe32d
Fix to ensure new line is correctly added to RichText ( #1171 )
2023-04-13 21:33:29 +08:00
halx99
8dd3bda49e
Fix ci
2023-04-07 23:57:13 +08:00
halx99
efad15b120
Fix windows H264 video render
2023-04-07 23:32:26 +08:00
halx99
a63fd04abf
Add ui::RichText setString, refer to: #1166
2023-04-05 16:16:57 +08:00
halx99
497c91a1da
Improve HttpClient event dispatch
2023-04-05 13:32:13 +08:00