Commit Graph

211 Commits

Author SHA1 Message Date
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 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
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 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
Turky Mohammed 7759ad562f Optimize `OpenGL` State Management (#1269)
Co-authored-by: halx99 <halx99@live.com>
2023-07-18 21:16:21 +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 071d9aa8ea Remove gitter [skip ci]
It's only bakup IM room, discord is preferred
2023-07-17 12:39:19 +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 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 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 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 5d7a86a1b9 Merge: 89a739a8ea 09a3a950ae
Merge branch 'dev' into 1.1-dev
2023-07-10 15:57:00 +08:00
RH ce590c24a0 Fix for crashes in several tests (#1259) 2023-07-09 14:45:41 +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 7cb9aac41e Rename option `AX_USE_COMPAT_GL` to `AX_USE_ANGLE` 2023-07-03 20:35: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
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
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(涓€绾跨伒) dca6c87c4a [Refine] Improve exit flow (#1213) 2023-05-25 15:45:00 +08:00
halx99 80354a98c1 Fix UWP mouse scroll delta process 2023-04-02 14:31:51 +08:00
Deal(涓€绾跨伒) f6281b9504 Support clang-cl + ninja, refer to #1152 (#1153) 2023-04-01 23:11:58 +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
halx99 912bf32d13 Remove UWP from PC family 2023-03-14 12:08:31 +08:00