Commit Graph

817 Commits

Author SHA1 Message Date
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
Deal(涓€绾跨伒) 0451318aaa Forward packet for HttpClient only (#1164) 2023-04-03 22:32:33 +08:00
halx99 2f1a4a9921 Improve HttpClient, remove unsafe API `sendSync` 2023-04-03 19:54:58 +08:00
Deal(涓€绾跨伒) 46a21e729b Building with ninja + official llvm-clang-cl support (#1159)
* Building with ninja + official llvm-clang-cl support

* Update gh ci for clang

* Fix ci

* Fix ci

* Fix ci

* FIx dll copy [skip ci]

* Fix ci warnings

* Update ci files and readme

* Update badges
2023-04-02 16:04:19 +08:00
halx99 80354a98c1 Fix UWP mouse scroll delta process 2023-04-02 14:31:51 +08:00
Deal(涓€绾跨伒) 621c94c9e7 Enable video player(VideoTexture) based on new MediaEngine for macOS and tvos (#1154)
* Ready for PR macOS

* Update videoTexture.frag

* Fix compile

* Fix h265 for mac [skip ci]

* Fix compile error

* Update readme [skip ci]
2023-04-02 01:51:36 +08:00
Deal(涓€绾跨伒) f6281b9504 Support clang-cl + ninja, refer to #1152 (#1153) 2023-04-01 23:11:58 +08:00
RH 52d7ea6316 Ensure that the axmol engine git folder is the one used for versioning (#1149)
* Committing genbindings changes

* Fix compilation error related to redefinition of 'pause'
Fix update override warning
Improve code

* Revert "Fix compilation error related to redefinition of 'pause'"

This reverts commit 1744a48fec.

* Ensure that the engine .git folder is the one being referenced for versioning
2023-03-31 08:04:38 +08:00
halx99 35db29919e Done #1139 2023-03-30 22:08:53 +08:00
halx99 7039336946 Fix #855 2023-03-29 23:36:54 +08:00
halx99 90f441441e For clang-format happy 2023-03-28 00:07:33 +08:00
aismann af68d2e9e2 Clipper2 1.2.2 (#1138) 2023-03-27 21:46:14 +08:00
halx99 cd10baf7e5 Add FileStream::getNativeHandle() 2023-03-26 22:42:13 +08:00
halx99 2e261b3dab Fix ci 2023-03-25 16:08:48 +08:00
Deal(涓€绾跨伒) 1e6e9d4a8d Media engine video texture (#1133)
* VideoPlayer based on new MediaEngine[Win32/UWP]

* Improve MediaEngine interface

* Update readme

* Improve pixel format

* Improve MediaEngine interface

* Ready for PR UWP/Win32

* Ready for PR UWP,Win32

* Update reademe files

* Update readme files

* Update UIVideoPlayer-android.cpp [skip ci]

* Update UIVideoPlayer-ios.mm

* Update MFUtils.cpp

* Fix ci
2023-03-25 08:37:51 +08:00
Turky Mohammed fc4766076c [IMPROVEMENT] Fix tilemap camera move and zoom culling (#1134)
* Fix tilemap culling

* Update CCFastTMXLayer.cpp

* Update CCFastTMXLayer.h
2023-03-25 08:33:39 +08:00
Turky Mohammed eae2ffabcb [BUG] Fix TMX Tiled Map `CSV`, `BASE64`, & `ZLIB` incorrect parsing (#1131)
* Fix TMX Tiled Map `CSV`, `BASE64`, & `ZLIB` incorrect parsing

* Revert "Fix TMX Tiled Map `CSV`, `BASE64`, & `ZLIB` incorrect parsing"

This reverts commit 3088123a20.

* Use `std::regex_replace` instead

* Avoid copying strings

* Update CCTMXXMLParser.cpp
2023-03-25 08:33:13 +08:00
RH 4c90ac17a4 Fix return reference to local temporary value (#1127)
* Fix invalid return type for temporary variable
2023-03-21 21:22:02 +08:00
Sam ba935d7dd0 Improve Android performance (#1125)
* Improve Android performance

* Remove unused memset

* Using the same code as Metal.

* Add a comment
2023-03-21 19:43:37 +08:00
Yehsam23 9b0b6fd4ce Impore Metal Renderer Dirty Detection. (#1120)
Remove setTargetFlags _dirty
2023-03-15 11:09:20 +08:00
halx99 912bf32d13 Remove UWP from PC family 2023-03-14 12:08:31 +08:00
RH b6ab32ae6d Fix for incorrect tile sprite setup on creation (#1114)
* On tile sprite creation, apply required settings based on tile flags
2023-03-13 08:55:26 +08:00
RH 941ccd0d14 TiledMap sprite position fix (#1112)
* Correctly store flags and gid with sprite created for tile
Use correct coordinates when displaying sprite for a tile

* Fix up typo and long test titles
2023-03-12 16:15:11 +08:00
halx99 517ffeedc6 Update project url in sources 2023-03-12 01:44:55 +08:00
halx99 0fbda93c39 [UWP] Add API GLViewImpl::createFullScreen
- Fix for luabindings
2023-03-11 23:19:52 +08:00
halx99 1152c73575 Fix ci 2023-03-11 23:14:04 +08:00
halx99 360950f1d7 Improve API GLViewImpl::createWithRect 2023-03-11 22:53:55 +08:00
Deal(涓€绾跨伒) 277bcd44ce Windows Store UWP apps support (#1108)
* [BIG FEATURE] Windows Store UWP apps support

* Fix ci, add uwp for pr-ci

* Fix ci

* Improve ci script

* Fix ci

* Fix ci

* Fix ci

* Fix ci

* Upload uwp appx package artifacts [skip ci]

* Use d2d draw system font text

* Fix ci

* Improve code style
2023-03-11 22:10:18 +08:00
halx99 f452a3d173 Remove range-v3 which is not compatible UWP c++17 2023-03-10 13:20:45 +08:00
halx99 8bf4817ff7 Fix compile errors in c++17 2023-03-08 08:34:17 +08:00
Turky Mohammed 969c2257f8 [BUG] TileMap flipped/rotated animated tiles incorrect rendering. (#1098)
* Add test cases

* Delete default_hrtf.txt

* Fix rotated/flipped animated tile maps

* Optimize bitwise operations

* improve bitwise operations
2023-03-07 23:26:37 +08:00
RH 8d52ad2e56 Add missing renderer source file references to CMakeLists.txt (#1100)
* Add missing file references to CMakeLists.txt
2023-03-07 18:51:58 +08:00
Turky Mohammed 6a7522ae84 [BUG] TileMap OpenGL pixel-tolerance fix (#1085)
* Update CCFastTMXLayer.cpp

* [skip ci]

* Implement equation into engine

* Update CCFastTMXLayer.cpp [skip ci]

* [correction] fix sub-pixel equation
2023-03-06 22:41:16 +08:00
halx99 e5acd7da01 Fix dead lock when post new http request on failure callback 2023-03-06 12:13:12 +08:00