Commit Graph

1062 Commits

Author SHA1 Message Date
halx99 6a57a020da Strip ansi color escape for wasm 2024-03-11 01:22:48 +08:00
halx99 c1718fee9b Fix linux crash 2024-03-10 01:24:32 +08:00
Deal 729718134f
Improve logging color style (#1739)
* Improve logging color style

* Improve code style

* Fix ci

* Fix ci

* Fix ci

* Fixup

* Fix ci
2024-03-09 09:23:39 +08:00
halx99 1297642416 Fix #1737 2024-03-08 20:42:05 +08:00
halx99 0972191e89 Reset console text color on non-win32 platforms 2024-03-08 01:55:10 +08:00
Deal 931ca91c71
Logging colorful support (#1735)
* Add logging colorful support

* Enable full log fmt style in cpp-tests
2024-03-08 01:15:26 +08:00
Deal 5d2c42e73f
Implement new axmol log system based on fmtlib (#1732)
* Implement new log macros based on fmtlib

* Fix ci

* Fix ci

* Fix android ci

* Fix warnings

* Replace more ax::log by AXLOGX

* Fix ci

* Fix linux build

* Use stack memory for log prefix

* Fix linux build

* Fix warning

* Add ILogOutput support

* Replace old log calls with new log macros

* Fixup

* Fixup

* Fixup

* Update ci msvc to 14.39

* Update Console.h [skip ci]

* Pass log level to ILogOutput
2024-03-07 08:47:00 +08:00
smilediver d3a0357e84
HttpClient: add support for PATCH method (#1722)
* HttpClient: add support for PATCH method
2024-02-29 11:43:41 +08:00
smilediver fcf18f8fc5
Android build fixes (#1723)
* Try default macOS Android SDK location if SDK is not specified or found

* Fix Android Studio project sync failing if NDK is not installed
2024-02-28 23:50:15 +08:00
Deal 6da5d7b059
Bump version to 2.1.3 2024-02-27 01:45:09 +08:00
halx99 8b33156e65 Update glfw to 3.4 2024-02-24 14:17:31 +08:00
halx99 5e6b865215 Update cppwinrt: 2.0.230706.1 ==> 2.0.240111.5 2024-02-22 20:03:16 +08:00
RH 184e0dcc74
Allow overriding defines without modifying engine source (#1710) 2024-02-21 09:40:04 +08:00
Deal f22cc4be68
Don't use fmt header only (#1707) 2024-02-20 05:37:28 +08:00
Deal 31da0f2917
Improve dll support (#1706)
* Improve dll support

* Tidy header include path

* Fix android build & symbol dup issue

* Fix android compile error

* Fixup
2024-02-20 05:37:12 +08:00
Deal adbffdf4a2
Fix #1704, control android cmake options by engine axutils.gradle (#1705) 2024-02-20 00:58:47 +08:00
aismann 1d7d84f58b
Update ActionInterval.h (#1702) 2024-02-19 18:29:41 +08:00
j-jorge 628574c905
Remove the Enhance API. (#1690)
We don't have the source for it anyway.
2024-02-19 10:39:26 +08:00
RH 978d15db78
RichText and ScrollView enhancements (#1696)
* Add id tag to several RichText elements to allow locating the nodes in RichText
Add font related styling to paragraph tags

* Move functionality out of ListView and into ScrollView to allow scrolling to a specific child node within a ScrollView

* Add function to allow finding protected child node by name

* Example of anchor tags to local RichText content in a ScrollView

* Fix string storage type
2024-02-18 20:09:54 +08:00
Lich 8e2e577e2f
Add support for window close button calback (#1697) 2024-02-18 16:08:53 +08:00
halx99 6477a8fdb4 Improve naming style 2024-02-18 10:30:11 +08:00
Deal 2d9c6dbf90
Fix view size incorrect when frameZoomFactor not 1.0 (#1694)
* Fix view size incorrect when frameZoomFactor not 1.0

* Tidy code
2024-02-18 09:25:28 +08:00
Deal cd5a39ee3b
Fix screen size incorrect in retina display (#1692) 2024-02-17 13:38:27 +08:00
RH bee2d6222d
Trim leading and trailing whitespace characters for the HTML parsing option (#1687) 2024-02-15 14:51:42 +08:00
RH 8c23d32235
RichText enhancements (#1683)
* Add paragraph tag support
Add HTML header tags support
Add multi-new line rich text element
Add support for end of tag action
General code clean up

* Remove redundant additions

* Fix compilation issue on platforms other than Windows

* Remove redundant constructors and destructors.
Initialize member variables.
Remove explicit inline specifier since all member class functions are implicitly inlined.
2024-02-15 08:33:38 +08:00
RH d117232769
Ensure correct video mode is set when creating view to avoid incorrect refresh rate being applied (#1678) 2024-02-13 21:10:41 +08:00
RH 9899a97e0d
Fix crash during scene transition due to invalid camera (#1676)
* Remove final specifier on Node::visit() to allow Scene to override it
Scene can now be visited correctly with valid cameras being set for child nodes when rendering outside of normal render loop.

* Add required copyright notice
2024-02-13 13:14:59 +08:00
RH d8df9fbc26
Fix cross fade transition (#1664)
* Cross fade transition cannot use shared render target

* [skip ci] Add copyright line
2024-02-10 22:27:34 +08:00
RH a1a444384e
Ability to disable default implementations of HTTP and WebSocket clients (#1656)
* Allow HttpClient and Websocket implementations to be excluded from build

* Allow LLHTTP to be excluded from build

* Add descriptions of new options

* Rename options based on current convention of AX_ENABLE_XXX
2024-02-06 22:19:03 +08:00
j-jorge 583dcdc111
Use different global names and #undef the #defines to stay unity build friendly. (#1653) 2024-02-06 07:39:54 +08:00
Deal 14761bf906
Bump 2.1.2 [skip ci][skip appveyor] 2024-02-03 10:10:02 +08:00
RH 9f8962d47d
Change extension folder structure to reduce file name conflicts (#1647)
* Restructure extension folder structure to reduce conflicts with project source files

* Do not include SDFGen headers for Android builds

* Ensure correct paths are included for the relevant targets

* ImGui is not be enabled for WinUWP, tvOS and iOS

* Fix LUA auto binding generator to work with updated extension folder structure

* Fix path and linker issues for yasio when using prebuilt option
Set correct paths to extensions for prebuilt option
2024-02-03 10:08:22 +08:00
halx99 e278e45ab8 Fix ci 2024-02-02 00:42:42 +08:00
halx99 df165fec4b Prepare release v2.1.1 2024-02-02 00:00:06 +08:00
halx99 fb9977328d Fix #1635, can't generate lua bindings for set/get Node localZOrder
---------------------------

reporeted by @bintester
2024-01-29 22:33:23 +08:00
Deal 9774d4751c
Fix memory leaks refreshed (#1638)
* Fix memory leaks when axmol apps exit on non-embed systems

    1. DriverBase no destroyInstance
    2. Every object inherited from ax::Ref shoud destory before ScriptEngineManager, otherwise will trigger it's reinit and leak
    3.  QuadCommand always leak isolated indices
    4. static singleton should'nt inhert from ax::Ref due to destory it before ScriptEngineManager impossible
    5. Make Director don't inherit from ax::Ref due to it also cause ScriptEngineManager re-init, because we destroy ScriptEngineManger in destructor of Director
    6. Explicit Director managed by Application and don't delete self at purgeDirector, since it will release at mainLoop and re-init in glView->pollEvents then leak
    7. Rename ApplicationProtocol to ApplicationBase
    8. Rename purgeDirector since we don't delete director self at it, maye rename to cleanup
    9. Change ShaderCache to new/delete singleton, managed by ProgramManager

---------

Co-authored-by: lich426 <lich426@gmail.com>
2024-01-29 22:30:14 +08:00
halx99 c06bed508b Rename cocos_android_app_init to axmol_android_app_init and othre code cleanup 2024-01-29 08:51:35 +08:00
RH 6543931e3f
Ensure scissor state is set to the correct value prior to a buffer clear (#1632) 2024-01-25 13:26:35 +08:00
halx99 31207e8bdf Bump version to 2.1.1 2024-01-24 22:12:24 +08:00
Deal 01d4ad60c7
Fix #1630 2024-01-24 22:00:01 +08:00
BinTester 3cf419a35c
add some utils functions and lua support (#1629)
* UIButton bugfix

* add utils lua support

* add utils lua support
2024-01-24 21:42:39 +08:00
tree 1f0a9526c9
After call setTime,the decoder seek to the wrong frame, need multiplied by channel count (#1618) 2024-01-17 15:24:46 +08:00
smilediver 729cc80351
Allow to override AX_USE_COMPAT_GL from user's CMakeLists.txt (#1610) 2024-01-15 23:45:37 +08:00
halx99 4600c961cd Update astcenc to 4.7.0 2024-01-15 23:44:36 +08:00
aismann 991e63ab8b
Set DrawNodeEx default to 'OFF" (#1613)
* Set DrawNodeEx default to 'OFF"

* Update controller.cpp

* Update CMakeOptions.md
2024-01-14 15:56:08 +08:00
Lich b57e8b5f5a
Fix incorrect implementation (#1611) 2024-01-13 10:45:36 +08:00
Lich 0c77e45fb7
Add fixedUpdate method to Scene (#1607) 2024-01-13 01:08:01 +08:00
smilediver 5bcaa9ce51
Fix AXASSERT() not working with more complex msg arguments (#1609) 2024-01-12 21:17:40 +08:00
罗捷捷 e412419425
Move FileUtils::fullPathForDirectory to public (#1596) 2024-01-11 12:42:00 +08:00
halx99 dea9eb672a Improve code style
Use std::string_view instead std::string
2024-01-10 09:16:56 +08:00
arman hossiny 214fdface8
Add multi UserDefault support (#1592)
* fixed bug replace scene

* add multi UserDefalut (set file name UserDefalut)

help to run multi player on local
2024-01-10 07:34:54 +08:00
j-jorge aa3d1fdd86
Turn ShaderCache into a singleton. (#1588)
This is more consistent with what is done everywhere else in the
repository.
2024-01-07 07:43:13 +08:00
halx99 f54b6cc6d5 Fix typo 2024-01-06 18:45:51 +08:00
j-jorge bfb30f573a
Fix shader cache leak (#1580)
* Fix compilation issue in Texture2D.cpp with _AX_DEBUG=2.

* Fix memory leak: ShaderCache was not purged.

The ShaderCache class had two static members: a map for the cache, and
a pointer to the single instance of ShaderCache. The map was
supposedly cleared in the destructor but there was actually no
instance of ShaderCache (getInstance() was never called and the other
functions accessed the map directly). This commit removes the
singleton "interface" such that only the map is used, then it cleared
the map upon request.
2024-01-06 00:48:34 +08:00
aismann 70fa8872de
Add extension 'DrawNodeEx' aka 'DrawNode v2' (#1568) 2024-01-05 02:07:13 +08:00
RH 9ca77602bb
Add sub-protocol and optional header support to WebSocket connection (#1565)
* Add sub-protocol and optional header support to WebSocket connection
Unsolicited WebSocket PONG messages received should be ignored

* Set custom headers via setHeaders method for native WebSocket implementation.
Ensure WASM WebSocket interface has same constructor as native interface

* Fix temporary string reference
Ensure passed url is passed as null terminated string
2024-01-02 19:10:51 +08:00
aismann 99cf951902
Fix issue of UILayout (correctness of fix -> was on the wrong method) (#1566) 2024-01-02 07:20:09 +08:00
halx99 e186067daf Add websocket luabindings 2023-12-31 23:00:13 +08:00
Deal 5fe829728b
Add websocket support (#1536) 2023-12-31 22:23:25 +08:00
aismann c389118571
Fix issue #1546 of UILayout(#1549) and small performance boost (#1559)
* Fix issue #1546 of UILayout(#1549) and small performance boost

* add test

* Committing genbindings changes

---------

Co-authored-by: aismann <aismann@users.noreply.github.com>
2023-12-31 11:33:49 +08:00
aismann 54daf354cd
Fix issue #1546 of UILayout (#1549) 2023-12-27 19:20:27 +08:00
arman hossiny 29504d102c
Fixed bug replace scene (#1543) 2023-12-26 06:05:42 +08:00
suleiman rabiei d69aa07a24
Fix crash with view nullcheck (#1540) 2023-12-24 19:40:09 +08:00
halx99 22a1faa593 Improve build system 2023-12-22 02:39:38 +08:00
halx99 ef40b03c87 Delete unused win32/compat/stdint.h 2023-12-18 23:12:47 +08:00
Lich c43dbfff95
Get TMXTilesetInfo by name (#1522) 2023-12-16 07:13:34 +08:00
halx99 993b7f54c2 Improve win32 timer resolution control 2023-12-16 00:45:54 +08:00
Deal b88c28013c
GLES3: Fix scalar array layout (#1523) 2023-12-15 22:29:23 +08:00
RH 2b01fa2cb3
Make openFileStream a const method (#1514) 2023-12-14 01:51:15 +08:00
Lich ae51e26eb6
Add support for window resized and positioned (#1513) 2023-12-14 01:48:52 +08:00
halx99 7864d8f6ec Enable FPS control for winuwp 2023-12-14 01:46:41 +08:00
halx99 a6107139b6 Fix Device::getPixelRatio for win32,android 2023-12-13 01:56:53 +08:00
RH baa9de1a5f
Call Android native renderer while opengl context is still valid (#1504) 2023-12-12 09:47:11 +08:00
Turky Mohammed 26024d1eeb
Fix TMX Camera Culling (#1501) 2023-12-12 09:42:53 +08:00
halx99 206c7e3352 Fix mac Device::getPixelRatio incorrect 2023-12-12 00:45:34 +08:00
Deal 213f788f75
Merge backend Device, DeviceInfo to DriverBase (#1499)
* backend::Device ==> backend::DriverBase
* backend::DeviceInfo ==> backend::DriverBase
* code style: remove unnecessary virtual function marks
2023-12-11 21:59:25 +08:00
halx99 70997061da Improve axmolver defines 2023-12-10 00:08:05 +08:00
aismann f19c8f89ae
Replace 'CCAssert' with 'AXASSERT' (#1485) 2023-12-08 16:30:34 +08:00
Lich 0f114baf8c
Improve ActionCoroutine callback style (#1481) 2023-12-08 12:46:46 +08:00
Turky Mohammed 36da799b19
Add useful chipmunk function. (#1480) 2023-12-08 09:39:32 +08:00
halx99 affcf05b69 Prepare 2.1.0 release
* Update copyright notice
* Remove prebuilt libs from SCM
* Remove optional thirdparty sources/repo from SCM
* Remove tests resources  folder 'Content' from SCM
2023-12-08 01:04:43 +08:00
Lich 669f864a4d Fix tilemap multiline property (#1476) 2023-12-05 20:53:31 +08:00
aismann 41c65eb28e Add DrawNode::drawPie (#1474) 2023-12-05 17:20:31 +08:00
halx99 49706d72b3 Fix windll build 2023-12-05 01:16:14 +08:00
Lich d84d527362 Add support for ActionCoroutine like Unity (#1473) 2023-12-05 00:28:50 +08:00
RH 371ee89f8a Reduce memory usage when using getFileMD5Hash function (#1472)
* Avoid high memory usage when hashing a file.

* Make the chunk size adjustable when hashing a file. Default to 16KB.

* Add computeFileDigest to enable the use of different hashing algorithms.

* A hash should still be reported for an empty file.
2023-12-04 19:08:18 +08:00
Paulo Coutinho 0aab228acc Rename glview to correct representative name (#1467) 2023-12-01 09:04:51 +08:00
RH 5374e6ecc0 Add support for Richtext vertical alignment (#1466)
* Add vertical alignment support for RichText

* Simplify RichTextTest implementation by reducing code duplication.
Add vertical alignment button to all RichText tests.

* Remove duplicate include

* [RichText] Vertical alignment support when ignoring size
2023-12-01 00:05:11 +08:00
halx99 7b33b4edf0 Apple: remove deprecated gamepad
refer #1453
2023-11-27 00:01:14 +08:00
RH 82d88d8970 Use execute_process instead of deprecated exec_program (#1450) 2023-11-26 00:03:36 +08:00
axmol-bot 78672f4a19 Update thirdparty prebuilts to v60 (#1446) 2023-11-25 14:47:25 +08:00
halx99 6a0f021ba9 Update thirdparty
simdjson 3.3.0 ==> 3.6.0
astcenc 4.5.0 ==> 4.6.0
yasio 4.1.0 ==> 4.1.1
2023-11-23 23:27:27 +08:00
j-jorge f07b34e292 Add operator for Vec2/Vec2. (#1445)
Since we have the multiplication, it seems natural to have the division.
2023-11-23 09:04:09 +08:00
Deal b062eb3dc2 Improve linux deps (#1441) 2023-11-19 09:38:12 +08:00
aismann c7be9816d9 Fix/enhancement for issue #1319 (#1434)
Fix/enhancement for issue #1319 (draw filled complex polygons (concave/convex)

Co-authored-by: eismpesd <peter.eismann@siemens-healthineers.com>
2023-11-16 12:06:39 +08:00
j-jorge 5122352019 Add missing include guard in CommandBufferGLES2.h. (#1430)
Co-authored-by: Julien Jorge <julien.jorge@MediaKind.com>
2023-11-11 17:32:10 +08:00
RH 4eb133bea7 [Android] Ensure AxmolEditBox used by TextField is visible prior to receiving focu (#1429) 2023-11-10 10:33:09 +08:00
RH 213434462a Use weak and strong references to determine if 'this' pointer is valid. (#1427)
Check _textBox to ensure it is not null before usage.
2023-11-09 08:43:24 +08:00
RH 7d79c095bb Add virtual file system support to WICImageLoader (#1425)
* Add virtual file system support to WICImageLoader

* Ensure supplied buffer pointers are not null

* Simplify conditional check to only not allow reads in WRITE file mode.
2023-11-08 21:56:51 +08:00
RH 2a650ba110 [UWP] Use Package to get app version information (#1424) 2023-11-08 08:16:28 +08:00