Deal
969baf94d4
Update CHANGELOG [skip ci]
2023-08-09 13:52:28 +08:00
halx99
9452e88272
Fix label outline effect
2023-08-09 13:26:57 +08:00
halx99
0f642ddb2e
Improve shader module and empty texture managment
2023-07-28 11:46:34 +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
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
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
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
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
RH
6bc2deeba8
Update Sprite::getQuad() to return const reference ( #1260 )
2023-07-09 19:00:12 +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
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
aismann
f54836160e
Update CCAutoPolygon.cpp ( #1201 )
...
Removed "nonsens" code
2023-05-08 06:17:38 +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
aismann
af68d2e9e2
Clipper2 1.2.2 ( #1138 )
2023-03-27 21:46:14 +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
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
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
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
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
aismann
2cb695e398
removed unused variable: const Vec2 pt ( #1079 )
...
const Vec2 pt(so.x / PRECISION, so.y / PRECISION);
2023-02-26 04:29:57 +08:00
halx99
c4e219160a
Fix #1075
2023-02-25 06:21:23 +08:00
aismann
cfcf541744
Visible artifacts on DrawNode::drawCircle() with a corresponding lineWidth > 5 (window resizing issue) ( #1050 )
...
* Fix DrawNode::drawCircle() behavior itf the window is resizing.
* Update CCDrawNode.cpp
Tested also with
resourceSize(960, 640) or (1280, 720)
designSize(480, 320) or (400, 320);
Making a deal with the "boss"
* Update drawCircle and Tests
_lineWidth/4 is needed => the circle grow to fast without
---------
Co-authored-by: Deal(涓€绾跨伒) <halx99@live.com>
2023-02-22 20:02:20 +08:00
Turky Mohammed
63263e09d2
Add Anchored Sprite Class ( #1040 )
...
* add anchored sprite class
* Add feature tests
2023-02-10 14:07:20 +08:00
halx99
ae14727dc7
Fix #1032
2023-01-17 10:06:09 +08:00
aismann
f238e5e0ff
Improve drawCircle rendering for big rings ( #1013 )
...
* Update HelloWorldScene.cpp
replace _director->end(); with menuCloseCallback(this);
* Rendering drawCircle
2023-01-06 23:25:31 +08:00
halx99
cb35a48885
Take care lambda implicit capture std::string_view
...
refer to: #1002
2023-01-03 23:02:17 +08:00
halx99
0f97e3fa3a
Improve base64 API
...
Move base64Encode/base64Decode to namespace `ax::utils`
2023-01-01 18:07:18 +08:00
Turky Mohammed
4ceadb9740
[IMPROVEMENT] Remove camera unnecessary perspective option. ( #993 )
...
* Fix camera applyZoom when window size changes
* Revert "Fix camera applyZoom when window size changes"
This reverts commit 26154b5ff7
.
* Fix pr
* remove camera perspective option
* fix merge conflict
* Update CCCamera.cpp
* Update CCCamera.h
2022-12-29 16:54:26 +08:00
Turky Mohammed
d7a6a64517
[BUG] Fix camera `applyZoom()` when window size changes and remove unnecessary projection code ( #992 )
...
* Fix camera applyZoom when window size changes
* Revert "Fix camera applyZoom when window size changes"
This reverts commit 26154b5ff7
.
* Fix pr
2022-12-29 16:54:01 +08:00
涓€绾跨伒|Deal
6d1e652213
Fix #983
2022-12-12 19:41:07 +08:00
RH
1a0612ca6e
Move getWorldPosition() from Widget to Node class ( #978 )
...
* Committing genbindings changes
* Move getWorldPosition() method to Node class to allow world position to be retrieved for any node.
2022-12-07 09:24:46 +08:00
RH
2e30b51ab7
Add a pool for GroupCommand rendering commands ( #969 )
...
* Committing genbindings changes
* Use a pool of GroupCommand entries to avoid multiple entries of the same group in the render queue in certain scenarios
* Ensure captureNode works as expected.
* Set member variables to default values when init method is called on the GroupCommand
* Explicitly reset the command state when retrieving a GroupCommand from the pool
2022-11-28 08:37:22 +08:00
Vincent Lee
5f6e1cd42d
Fix warnings (implicit conversion loses and use of deprecated function)
2022-11-20 09:58:34 +09:00
joilnen
5214ea1eb1
fixing some warnings compilation in linux gcc 12.2.0
2022-11-14 15:46:27 -03:00
Vincent Lee
97f8a8d544
Replace use of deprecated sprintf with snprintf
2022-11-14 16:02:16 +09:00
halx99
0279d5c158
Fix #958
2022-11-10 21:22:55 +08:00
halx99
bfd96ae10a
Improve memory use
2022-11-03 18:01:10 +08:00
RH
0649ab40df
Force recalculation of normalized position when assigning new parent to node ( #952 )
...
* Committing genbindings changes
* Ensure normalized position is re-calculated if parent node changes
2022-11-03 15:49:34 +08:00
halx99
4fa40ee96b
Validate shared VertexLayout from Shader Program
2022-10-20 20:22:28 +08:00
halx99
10ea947a50
Validate shared VertexLayout from Shader Program
2022-10-20 20:19:56 +08:00