Commit Graph

553 Commits

Author SHA1 Message Date
halx99 6e7e117a0d RenderTarget abstract, in-progress (#210)
RenderTarget abstract
2020-09-21 22:10:50 +08:00
halx99 bb6faed0a2 fix macro 2020-09-21 11:38:21 +08:00
halx99 03ae85f2f4 Merge: 22a4586af9 03e5a1bd9a
Merge pull request #209 from halx99/delete-copy-stubs

Explicit delete copy stubs for CustomCommand
2020-09-16 22:45:38 -07:00
halx99 a14cb93bdc fix ci warnings 2020-09-17 12:13:59 +08:00
halx99 ac2e8e4bb6 fix ci 2020-09-17 12:10:08 +08:00
halx99 c0a61434e0 Sync pr from https://github.com/cocos2d/cocos2d-x/pull/20580 2020-09-17 12:05:31 +08:00
halx99 dc74671240 Explicit delete copy stubs for CustomCommand 2020-09-17 11:41:14 +08:00
halx99 62d7a5e220 suppressing invalid offset warning [skip appveyor][skip travis] 2020-09-16 22:57:55 +08:00
halx99 75fe464e6c Decrease pod offset 2020-09-16 21:26:14 +08:00
halx99 3fd426c481 fix #206 2020-09-16 21:22:37 +08:00
halx99 7217d16cd2 Needs recalculate max items when AtlasNode::setIgnoreContentScaleFactor 2020-09-16 13:34:20 +08:00
halx99 20d91f6566 check null also 2020-09-15 16:03:00 +08:00
halx99 05d31aa618 Take care PBO use on android 2020-09-15 16:01:44 +08:00
halx99 e91b7240e6 captureScreen compatible, saveFile at offthread 2020-09-15 14:12:00 +08:00
halx99 b956637c74 Fixup
OpenGL: read screen pixels only works: AFTER_DRAW and BEFORE_END_FRAME
2020-09-14 17:43:44 +08:00
halx99 c542037e7c Needs readPixels at CallbackCommand
Avoid read dirty pixels
2020-09-14 17:20:07 +08:00
halx99 759acc98a7 fix fbo attachment texture bind error 2020-09-13 19:17:49 +08:00
halx99 81e78573e6 Refine code 2020-09-13 19:16:59 +08:00
halx99 d333e79502 Remove unused CaptureCallbackCommand (#2) 2020-09-13 14:53:17 +08:00
halx99 e2cc3f5c90 Refine comment 2020-09-13 13:30:41 +08:00
halx99 d4887b8584 No need CaptureCommand for capture screen or node 2020-09-13 13:27:50 +08:00
halx99 89c4ab3046 Metal screen framebuffer only set/restore 2020-09-13 12:55:35 +08:00
halx99 dd0070040b Make capture API public to Renderer 2020-09-13 11:11:48 +08:00
halx99 474531fda7 UtilsGL::readPixels also use PBO if available 2020-09-12 23:26:40 +08:00
halx99 cc7d95ffef Update comment [skip appveyor] [skip travis] 2020-09-12 20:44:08 +08:00
halx99 7282a3ea3f No need enqueue, commit will do it automatically 2020-09-12 16:44:16 +08:00
halx99 3b71ea621a Refine code 2020-09-12 15:34:09 +08:00
halx99 caf9d4b761 Remove test stubs 2020-09-12 14:52:39 +08:00
halx99 4f51702b66 a. Refine captureScreen, glReadPixels shoud from glviewport's origin.
b. Sets desktop GL min version from 2.0 to 2.1
2020-09-12 14:50:48 +08:00
halx99 2f96108c75 Add more clearly comment [skip appveyor] 2020-09-11 20:17:31 +08:00
halx99 4fc03985d3 Use glMapBuffer if available 2020-09-11 17:32:08 +08:00
halx99 c79da1ca05 fix ci 2020-09-11 14:45:45 +08:00
halx99 a6b3fa91fd fix ci 2020-09-11 13:38:05 +08:00
halx99 378975d768 Remove comment 2020-09-11 12:39:16 +08:00
halx99 08f8177031 Renaming stubs relative capture command 2020-09-11 12:23:33 +08:00
halx99 66161f982a Remove unused comment 2020-09-11 12:14:40 +08:00
halx99 0365122f4a v4 captureScreen API compatiable, gl needs flip always for capture 2020-09-11 11:57:55 +08:00
halx99 2dd406c52e Remove todo comment [skip appveyor][skip travis] 2020-09-11 02:19:19 +08:00
halx99 065cfc77b3 Update CCRenderTexture.cpp 2020-09-11 01:46:12 +08:00
halx99 d2acbe176e finish gl backend 2020-09-11 01:19:10 +08:00
halx99 e53fa3560b Prepare 2020-09-11 00:14:03 +08:00
halx99 671b6b4ca9 Tidy code 2020-09-11 00:10:44 +08:00
halx99 3313720a20 Remove unused API, TODO: unify to Utils::readPixels 2020-09-10 23:11:43 +08:00
halx99 2cc14ef4d7 Add comment 2020-09-10 21:41:52 +08:00
halx99 dc3796d746 Refine code 2020-09-10 21:38:24 +08:00
halx99 e283a4fca0 Refactor capture, fix data race for apple metal reanderer backend 2020-09-10 21:14:28 +08:00
halx99 df43be0a7e fix 193 2020-09-10 18:12:46 +08:00
halx99 d784e549c6 Sync lua binding 2020-09-09 16:30:48 +08:00
halx99 0df57da33f fix compile issue[skip appveyor] 2020-09-09 15:47:41 +08:00
halx99 df8631582b Tidy, update programState texture at attachProgramState 2020-09-09 15:29:56 +08:00
halx99 6c2939d235 More clearly programState management 2020-09-09 13:03:31 +08:00
halx99 84ed7befe2 fix memory leak for ProgramStateRegistry use 2020-09-08 22:13:10 +08:00
halx99 cabc917bff Move getFileDataFromZip from FileUtils to ZipFile and mark it as deprecated 2020-09-06 17:00:20 +08:00
halx99 54f1fc26d6 fix mac compile error 2020-09-05 22:33:18 +08:00
halx99 e564a5bc25 Add CC_REDUCE_PAUSED_CPU_USAGE ccConfig.h to control whether reduce cpu usage after paused 2020-09-05 17:12:30 +08:00
halx99 e7185c1de8 fix ci warnings 2020-09-04 18:34:15 +08:00
halx99 0f078279ff Fix mac [skip appveyor] 2020-09-04 18:16:13 +08:00
halx99 714803916e Fix glviewimpl for osx 2020-09-04 17:58:34 +08:00
halx99 cd3923b553 Add utils::makeInstance and utils::newInstance 2020-09-04 11:28:16 +08:00
halx99 e5d18c5118 Should set _mtlCommandBuffer to nil after release 2020-09-03 22:26:21 +08:00
halx99 4bb44288a5 Fix GL renderer backend API updateCompressedSubData will cause OpenGL 502 error 2020-09-03 18:03:43 +08:00
halx99 d66e62e436 ASTC6x6 support and more comment about bpp usage in engine (#191)
* ASTC6x6 support and more comment abount bpp usage in engine

* fix log output

* Comment astc compression tool download url

* Add command line comment for astcenc tool [skip travis][skip appveyor]

* Add astc_6x6 test image[skip appveyor][skip travis]

* astc_6x6 mtl

* Refine log info[skip appveyor][skip travis]

* Empty line[skip appveyor][skip travis]
2020-09-03 18:01:40 +08:00
halx99 93a461f779 Add getGPUHandler for backend::Texture for some purpose use 2020-09-02 13:00:32 +08:00
halx99 e9a61cc216 Remove unused member 'func' from CustomCommand, use CallbackCommand instead 2020-09-02 12:59:34 +08:00
halx99 4a9b2fb9b5 Merge: f2970e72de 8cad7319f6
Merge pull request #188 from halx99/etc2-support

Add etc2 compressed texture support
2020-09-01 00:16:01 -07:00
halx99 bb9652f1a6 Use uint8_t instead unsigned char for byte buffer [skip appveyor][skip travis] 2020-09-01 14:57:18 +08:00
halx99 ec9a1822be No need check GL_ETC1_RGB8_OES for ETC compression formats [skip appveyor][skip travis] 2020-09-01 14:32:52 +08:00
halx99 3e443d286e Remove unnecessary macro GL_ETC1_RGB8_OES check 2020-09-01 13:39:15 +08:00
halx99 6f524beeb6 Remove unused comment [skip appveyor][skip travis] 2020-09-01 13:29:41 +08:00
halx99 f9ae5401ec Add copyright notice [skip appveyor][skip travis] 2020-09-01 13:24:45 +08:00
halx99 45b2ab7134 Also decode bmp to RGBA8888 directly 2020-09-01 12:06:21 +08:00
halx99 cc53868d27 More clearly ETC1 format, sync enums for ETC1, correct somethings 2020-09-01 11:43:03 +08:00
halx99 9e4f61d9d6 ETC2 feature check for metal 2020-09-01 00:03:49 +08:00
halx99 815c737e6b wrap fowardPixels for hardware decoder 2020-08-31 23:09:42 +08:00
halx99 09cedf60b2 Improve images decoder 2020-08-31 21:04:47 +08:00
halx99 e96ae229dd Merge: 5ddc84bbee 539e5ca42c
Merge pull request #189 from aismann/patch-8

Update README.md
2020-08-31 04:27:33 -07:00
halx99 a87c0bba78 More clearly data owner when decode images. 2020-08-31 19:24:23 +08:00
halx99 fa5d2d198b fix resources relative path to avoid test case crash on mobile 2020-08-31 17:39:29 +08:00
halx99 c338472df8 Move copyright notice to header [skip appveyor][skip travis] 2020-08-31 17:35:01 +08:00
halx99 477aa0c185 Clearly CCLOG content 2020-08-31 17:13:04 +08:00
halx99 65a7bd5360 Remove test code [skip appveyor] [skip travis] 2020-08-31 16:31:37 +08:00
halx99 086c3dee3c Add comment for etc1/etc2 compression tools [skip appveyor][skip travis] 2020-08-31 16:16:13 +08:00
halx99 258dfc5b4a ETC2 Metal support 2020-08-31 15:45:05 +08:00
halx99 b12068e1c8 Use etc2_decode_image decode etc1 to RGBA8888 [skip appveyor] [skip travis]
This can avoid further texture data convert
2020-08-31 15:34:20 +08:00
halx99 8749c63346 fix compile issue 2020-08-31 15:17:28 +08:00
halx99 2443e01136 fix compile issue 2020-08-31 14:50:33 +08:00
halx99 27ba2fd377 Remove unused file [skip appveyor][skip travis] 2020-08-31 14:48:10 +08:00
halx99 da8f1c56fe ETC2 software decode support 2020-08-31 14:11:48 +08:00
halx99 43f464163c 1. Finish ETC2 support on GL renderer backend
2. Improve ASTC compressed format check
2020-08-30 17:58:39 +08:00
halx99 0edf05888f fix CCValue::visit 2020-08-30 17:45:21 +08:00
halx99 318c6855a3 fix #187 2020-08-30 13:03:32 +08:00
halx99 21cb31685d Merge: 6b4d5918c0 e6108d111a
Merge pull request #186 from halx99/fix-185

Fix ASTC bytesPerRow calculation
2020-08-29 10:27:04 -07:00
halx99 f53ddd2c4a Update README_CN.md 2020-08-30 00:28:20 +08:00
halx99 0943e0a793 Fix ASTC bytesPerRow calculation 2020-08-30 00:11:33 +08:00
halx99 479047361d Clear vector after releaseTextures 2020-08-29 22:00:58 +08:00
halx99 9baf39823e Release old storage textures 2020-08-29 20:07:13 +08:00
halx99 b32b9b75e9 More clearly comment 2020-08-29 19:51:42 +08:00
halx99 998335b8af More clearly comment for multi-textures support 2020-08-29 17:39:17 +08:00
halx99 d147190d8a Remove unused comment [skip appveyor][skip travis] 2020-08-29 16:59:15 +08:00
halx99 32549195cf fix multi-texture2d support 2020-08-29 16:56:48 +08:00
halx99 8f448b517c fix ci 2020-08-28 17:26:30 +08:00
halx99 2197bb52cd Sync missing feature from v3, and API compatible 2020-08-28 16:33:52 +08:00
halx99 4674b1e89d Remove TMXLayer,TMXMap, remain FastTMXLayer,FastTMXMap enough 2020-08-28 15:42:40 +08:00
halx99 81b038c18d Code improvement 2020-08-28 15:01:25 +08:00
minggo 1934eb5ac9 close keyboard when Done is pressed (#20341)
* close keyboard when Done is pressed
2020-08-28 14:50:52 +08:00
halx99 238cd782e3 Add CMake -DCC_FORCE_USE_GLES to control whether force use gles on win32,iOS 2020-08-28 12:57:00 +08:00
halx99 2a234afc3d Improve listFiles for win32, use std::move avoid string deep copy 2020-08-28 11:05:32 +08:00
halx99 e75a29a393 fix #179 2020-08-28 11:04:14 +08:00
halx99 7ce3f4ab34 Make logical more clearly 2020-08-27 17:35:30 +08:00
halx99 53b1da1bf9 fix mssing sources 2020-08-27 12:44:30 +08:00
halx99 b6f2d775a9 Make UserDefault encrypt/decrypt algorithm can be customlized 2020-08-27 12:37:20 +08:00
halx99 f583ec6300 By default, disable stream parsing 2020-08-27 11:40:44 +08:00
halx99 6345cca301 freetype stream parsing support, reduce memory use on FontCache 2020-08-27 11:35:55 +08:00
halx99 ea1cb45ba3 Refine code style 2020-08-27 10:19:21 +08:00
halx99 6ac06d8571 fix ci compile 2020-08-27 00:49:07 +08:00
halx99 c9d6c5afdf Rename PXFileStream to CCFileStream 2020-08-27 00:21:44 +08:00
halx99 d0c01ea688 Merge: 6be52c29e7 9d7d1e40fb
Merge branch 'master' of https://github.com/c4games/engine-x into master
2020-08-26 12:46:51 +08:00
halx99 6df5f91142 Sync LayoutHelper APIs 2020-08-26 12:46:41 +08:00
halx99 8d7a5ab3c6 finish killCurrentProcess implementation on windows 2020-08-26 10:36:33 +08:00
halx99 6fe10e8809 Add utils::killCurrentProcess API to kill game immidiately 2020-08-25 23:12:26 +08:00
halx99 0e0a28e033 Merge: 1740c444f8 5c850e00ac
Merge pull request #171 from halx99/feature-170

Add utils::createInstance to instead macro CREATE_FUNC
2020-08-24 23:55:37 -07:00
halx99 feb4e1783a fix warning 2020-08-25 14:47:51 +08:00
halx99 0545a471cb fix ci 2020-08-25 14:08:17 +08:00
halx99 d39f803459 Add utils::createInstance to instead macro CREATE_FUNC 2020-08-25 13:49:45 +08:00
halx99 c8a665da40 Update al format enum 2020-08-24 19:04:08 +08:00
halx99 3b770e4519 Improve engine CMakeLists.txt for ios
benefit: Now engine can build without ios.toolchain.cmake,
because we solvoe follow issues:
a. fix cmake try_compile failed with arm device without
b. fix try_compile/compile will failed with device on armv7
c. fix thread local storage require:
1. deployment target >= 9.0 (arm64)
2. deployment target == 10.x (armv7)
2020-08-24 15:31:45 +08:00
halx99 34c51f5596 Print al vender and version after initialized 2020-08-20 22:37:34 +08:00
halx99 e348312baa Naming style [skip appveyor] [skip travis] 2020-08-19 12:26:31 +08:00
halx99 eaaeeea27f Refine code 2020-08-19 12:10:29 +08:00
halx99 98fab08a6c fix label crashing, add private use BatchCommand move constructor to adapte std::vector resize properly 2020-08-19 11:46:13 +08:00
halx99 7ff2ffa0b3 Make CustomCommand safe copyable and moveable 2020-08-19 11:42:32 +08:00
halx99 aa3f12628a Sync mssing code from official-v3 2020-08-18 14:43:09 +08:00
halx99 083d14f342 Improve code quality 2020-08-18 14:29:09 +08:00
halx99 b594cda5e3 Consider mutex use, which object dou you want guard? 2020-08-18 12:48:16 +08:00
halx99 9eb32b634f Make core lib can be build as dll, fix link issue for external 2020-08-18 12:36:44 +08:00
halx99 c9882c195a Update README_CN.md 2020-08-18 12:11:04 +08:00
halx99 641b2e40f3 Sync fix from https://github.com/cocos2d/cocos2d-x/pull/20518 2020-08-18 12:09:56 +08:00
halx99 a3a231495c Backport CCValue APIs 2020-08-18 11:33:18 +08:00
halx99 d084d9f61a Improve shared library for android, remove mojoal,sdl2, still use OpenAL.framework on apple platform, alsoft on other platforms. 2020-08-17 18:45:14 +08:00
halx99 bda3a720b4 Use CC0-1.0 licensed decoder 'minimp3' to replace LGPL licensed decoder 'mpg123' 2020-08-17 14:56:53 +08:00
halx99 b090664084 Make android listFiles behavior same with other platforms 2020-08-17 12:09:31 +08:00
halx99 08e3b65b9a More clearly check supported pcm format by alsoft extends 2020-08-15 17:48:57 +08:00
halx99 2e4499b6d0 Add ios framework required by SDL2, check whether SDL2 support strip it later 2020-08-15 17:47:40 +08:00
halx99 072deafeae Adapte zlib licensed AL library: mojoal 2020-08-14 18:58:44 +08:00
halx99 f72f6e8cac Cleanup unused code for min support iOS 2020-08-13 23:03:55 +08:00
halx99 a09253c7a2 fix-157 2020-08-13 22:35:41 +08:00
halx99 a3b208075b fix compile issue without alsoft 2020-08-13 00:41:30 +08:00
halx99 da2ec96fd8 fix ci android build issue. 2020-08-12 18:53:33 +08:00
halx99 5732e20789 Tidy code 2020-08-12 18:40:04 +08:00
halx99 d9ef1e238f Simplify audio source again, merge audio sources 2020-08-12 17:00:07 +08:00
halx99 37d4be2152 FreeType: Output missing char in .ttf at _DEBUG compiling mode 2020-08-12 14:24:06 +08:00
halx99 9fef6a8720 Sync macro 2020-08-07 23:55:25 +08:00
halx99 7e7fba9649 By default, make cocos2d::log multi-threading safe 2020-08-07 23:52:41 +08:00
aismann 63e7c6e4dc OpenGL 'works' better... 2020-08-07 08:10:12 +02:00
halx99 d424be2a80 Naming style 2020-08-07 00:39:55 +08:00
halx99 77b3290226 Make CCValue compatible official cocos2d-x v3/v4 2020-08-06 19:39:50 +08:00
halx99 9c92a5e4ab Sync optimize code from v3 2020-08-06 17:37:34 +08:00
halx99 b781a25e16 Reorder members of Node, sizeof(Node) decrease from 640 to 616 on 32bit application 2020-08-06 13:30:35 +08:00
halx99 8af53505c1 Merge: 3cf637418f 137ded73a5
Merge branch 'master' of https://github.com/c4games/engine-x into master
2020-08-05 18:12:31 +08:00
halx99 4713580381 Update features [skip appveyor] [skip travis] 2020-08-05 18:11:52 +08:00
halx99 ff5ec02d77 Merge: bda1fce2b1 f38f76c1a1
Merge pull request #145 from halx99/spine-3.8

Sync spine code and resource to 3.8
2020-08-05 02:38:59 -07:00
halx99 03816cd0c0 fix console output error on win32, see #144 2020-08-05 17:30:30 +08:00
halx99 e8765c88f8 Sync spine code and resource to 3.8 2020-08-05 17:04:57 +08:00
halx99 4214ed6add Add missing optimize from v3 2020-08-05 13:10:37 +08:00
halx99 df2073f1e5 win32 cover wide API use, remove unused long getFieSize(const std::string&) 2020-08-05 12:24:31 +08:00
halx99 9f66d7dce0 utf-8 file path 2020-08-05 12:17:57 +08:00
halx99 205d6e5fb9 fix lua compile issue 2020-08-04 22:38:57 +08:00
halx99 94a2a6994c Macro and engine name alias 2020-08-04 14:53:59 +08:00
halx99 2add0272a3 Add ENGINEX_VERSION and improve ABI compatiable 2020-08-04 12:11:36 +08:00
halx99 d2d656e83d Update CCColorizer.cpp 2020-08-04 01:31:32 +08:00
halx99 2e4b573e8c Update CCColorizer.cpp 2020-08-04 01:01:05 +08:00
halx99 d3cb044df2 Update CCColorizer.h 2020-08-04 00:59:02 +08:00
halx99 57a1e88533 fix compile issue 2020-08-04 00:39:48 +08:00
halx99 e638e0bd68 Tidy sources 2020-08-04 00:14:35 +08:00
halx99 8b9a6bbbf1 fix android build issues 2020-08-03 20:31:47 +08:00
halx99 1e392c9dfe Refine readme [skip appveyor][skip travis] 2020-08-03 19:12:07 +08:00
halx99 3049b8f751 Huge changes, move spine,dragonbones,cocostudio to extensions folder, future make all extensions pluginable 2020-08-03 17:51:40 +08:00
halx99 8f541a61a7 Merge: 5f96ce8981 3e95b8ccf3
Merge pull request #135 from halx99/unify-plist-ops

Unify plist implementation, remove apple specific sources.
2020-08-02 20:22:36 -07:00
halx99 588e977ef0 Merge: 8cc189fb4d 6fd4d6e4ab
Merge pull request #134 from halx99/fullscreen-mode

Refactor full screen support
2020-08-02 20:03:07 -07:00
halx99 d6958498d4 Unify plist implementation, remove apple specific sources. 2020-08-03 10:48:26 +08:00
halx99 8024b9b2e9 Adapte multi monitors 2020-08-03 10:33:04 +08:00
halx99 1c59ba423c Unnecessary space lilne [skip appveyor] [skip travis] 2020-08-02 17:00:35 +08:00
halx99 996f303eb7 Optimize param use. 2020-08-02 16:48:19 +08:00
halx99 b12cde7c19 vidMode need moniter 2020-08-02 16:36:58 +08:00
halx99 049a7e58ba Update comment [skip appveyor] [skip travis] 2020-08-02 16:24:30 +08:00
halx99 76d246ce54 check isFullscreen 2020-08-02 16:22:41 +08:00
halx99 2bd0a48e02 Provide more useful for setFullscreen with width,height,refreshRate. 2020-08-02 16:18:39 +08:00
halx99 7c816dae8d Refactor full screen support, fix different behavior when enter full screen between 1 and >=2 times 2020-08-02 11:54:46 +08:00
halx99 bd9a409dd7 Add wav testcase 2020-08-01 19:25:39 +08:00
halx99 f807981d80 fix #129 2020-08-01 11:23:13 +08:00
halx99 247cb83b18 fix #127 2020-07-31 17:23:03 +08:00
halx99 2a2b397f27 Add alconfig.h to choose whether use openal-soft 2020-07-31 17:03:58 +08:00
halx99 65bb368cc2 Add missing detect macro CC_USE_ALSOFT_ON_APPLE on apple platform 2020-07-31 16:36:45 +08:00
halx99 c17ea9fdd5 Update comment [skip appveyor] [skip travis] 2020-07-31 15:49:50 +08:00
halx99 bcd1c17aa5 Tidy audio source, unify headers: AudioEngineImpl.h AudioPlayer.h 2020-07-31 14:32:08 +08:00
halx99 bef47490e0 Refine message output [skip travis] [skip appveyor] 2020-07-31 11:35:52 +08:00
halx99 14e090f9bf fix option order 2020-07-31 11:22:42 +08:00
halx99 77f9757d4d [Audio] Use apple system decoder for non .ogg audio files 2020-07-31 00:31:39 +08:00
halx99 9345f18159 Add CMAKE option CC_USE_ALSOFT_ON_APPLE to use kcat openal-soft on apple platform, by default currently OFF 2020-07-31 00:06:59 +08:00
halx99 3608150968 Use std::vector<char> to manage pcmData buffer on AudioCache, remove unused source from AudioCache.mm 2020-07-30 18:09:50 +08:00