Commit Graph

159 Commits

Author SHA1 Message Date
halx99 4f36b1bbe9 Remove default constructor of ProgramState 2020-10-23 12:17:36 +08:00
halx99 e4d8e60c0b Since v4, no needs callback uniform, so mark setCallbackUniform deprecated 2020-10-23 11:57:17 +08:00
halx99 119479b060 Refine ProgramState mat id 2020-10-23 11:37:52 +08:00
halx99 b8a0e0a478 Finsih rename 2020-10-22 10:58:10 +08:00
halx99 77e48ddca6 Remove unused converter functions 2020-10-21 00:35:39 +08:00
halx99 4048395cdb Refine pixel format
a. make RGB565, RGB5A1 identical between GL and MTL backend
b. make texture internal format compatible on GLES-2.0 ONLY GPU devices
2020-10-20 23:27:20 +08:00
halx99 630a452d01 fix rgba4444 enum for gles-2.0 only GPU 2020-10-20 20:01:18 +08:00
halx99 3d27b9615c GLES compatible 2020-10-20 19:50:34 +08:00
halx99 212148dc56 Remove unused varaibles 2020-10-20 19:38:33 +08:00
halx99 c594e3789c Refactor programState management (#236)
1. Add custom program registery
2. Re-enable batch draw for custom program
2020-10-16 16:23:14 +08:00
halx99 b999d86597 Improve win dll support 2020-10-06 16:46:38 +08:00
halx99 a2288d08db Fix depth stencil state and pipeline state mismatch 2020-09-25 23:16:48 +08:00
halx99 2b6cb88167 Clearly texture usage and TextureGL initWithZeros usage (#219)
* Clearly texture usage and TextureGL initWithZeros usage

* More properly function name
2020-09-25 15:04:55 +08:00
halx99 cca0739793 Refactor pixel format manipulate (#217)
* PixelFormat use table

* Correct PixelFormat name to match 'GL_LUMINANCE'

* Up

* fix cube update texture enum

* linux build

* Refine ci

* fix linux build

* Remove unused function, match mtl framebuffer pixel format

* readPixels always RGBA format

* fix ci for linux

* fix linux build

* Remove unused functions

* fix travis

* fix android ci

* Update config.json

* linux glad

* Update CCGLViewImpl-desktop.cpp

* fix linux build

* Fix linux build

* Link issue [skip appveyor][skip travis]

* Update CMakeLists.txt

* Refine GL enums use

* Update test case name [skip appveyor][skip travis]

* fix linux link issue

* for mtl

* fix ci

* Tidy pixelformat enums

* fix ci

* fix rgba8 to abgr4 error

* fix ci

* fix ci for GLES

* Fix linux build, require glibc-2.27+

* Use properly dist for travis [skip appveyor]

* fix linux build [skip appveyor]

* Update install-deps-linux.sh

* Remove unused members for pixel block info, update external to v73

* Sync from compile linux warnings

* Remove unused check, and PixelFormat::A8 is ordinary format, not compressed format

* metal doesn't support rgb8 (#3)

* Update CCTexture2D.cpp

* Refine code

* Pixel Format Descriptor Table

* fix ci

* BGR5A1

* Simplfy texture format convert function name

* Update

* rgba4 match mtl render format

* Add note about RGBA4

* Remove unused function

* fix osx

* Already converted at texture2d

* Clearly comment

* fixup
2020-09-25 11:07:56 +08:00
halx99 3eb2d51df9 Refactor render pipeline state (#211)
* Refactor pipeline state
* Cache DepthStencil state for MTL renderer backend
2020-09-22 16:32:17 +08:00
halx99 c97956d28f Remove unused param for setRenderPipeline 2020-09-21 22:35:18 +08:00
halx99 6e7e117a0d RenderTarget abstract, in-progress (#210)
RenderTarget abstract
2020-09-21 22:10:50 +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 759acc98a7 fix fbo attachment texture bind error 2020-09-13 19:17:49 +08:00
halx99 89c4ab3046 Metal screen framebuffer only set/restore 2020-09-13 12:55:35 +08:00
halx99 474531fda7 UtilsGL::readPixels also use PBO if available 2020-09-12 23:26:40 +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 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 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 84ed7befe2 fix memory leak for ProgramStateRegistry use 2020-09-08 22:13:10 +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 3e443d286e Remove unnecessary macro GL_ETC1_RGB8_OES check 2020-09-01 13:39:15 +08:00
halx99 f9ae5401ec Add copyright notice [skip appveyor][skip travis] 2020-09-01 13:24:45 +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 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 258dfc5b4a ETC2 Metal support 2020-08-31 15:45:05 +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 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 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 7ce3f4ab34 Make logical more clearly 2020-08-27 17:35:30 +08:00
halx99 e58b7c292a Support use google angle support on windows. 2020-06-12 12:42:58 +08:00
halx99 cccb66f1ae fix memory leak & correct indent 2020-03-30 14:54:13 +08:00
halx99 8822faae98 Remove unnecessary std::move semantics 2020-02-28 12:10:27 +08:00
halx99 48007c67c9 Merge: b350a7abf8 d9e6cb8e33
Merge pull request #72 from c4games/sync-v3-pr20107

Sync v3 pr20107 & fix builtin shaders
2020-02-24 20:59:11 +08:00
halx99 810397ebfe Merge: f0d60d4a85 a7e118ec0b
Merge pull request #70 from c4games/remove-unused-shader

Remove unused shader
2020-02-24 17:51:58 +08:00
halx99 825ec25a6b Sync v3 pr20107 & fix builtin shaders, see: https://github.com/cocos2d/cocos2d-x/pull/20107 2020-02-24 17:09:25 +08:00
halx99 57dd626e39 Fixup, optimize shader compile log. 2020-02-24 16:27:10 +08:00
halx99 734b5bd44f fix #41 2020-02-23 21:27:14 +08:00
halx99 82808a321d Remove duplicated code 2020-02-17 20:21:43 +08:00
halx99 584ee96a89 Fix adjust issue at Texture2DGL::initWithZeros 2020-02-17 00:13:56 +08:00
halx99 78cd37f01a Sync https://github.com/cocos2d/cocos2d-x/pull/20457 2020-02-15 21:38:37 +08:00
halx99 f46c9575a4 Merge: f7330a9b3c e2c4b786b8
Merge pull request #58 from c4games/mmt-ios

Make multi-meta-textures feature works on Apple Metal.
2020-02-15 20:51:20 +08:00
halx99 bc343072ce Call initWithZeros at constructor once is works 2020-02-15 17:35:44 +08:00
halx99 f45bcbc723 Refine sources 2020-02-15 10:48:44 +08:00
halx99 8d0d83b2ee fix ci error 2020-02-15 03:10:01 +08:00
halx99 e065f94aa4 Remove unnecessary constructors. 2020-02-15 02:58:41 +08:00
halx99 3ebacd33e9 Refine STMGT 2020-02-15 02:36:02 +08:00
halx99 be59a192c1 Move maxTextureIdx to base texture class 2020-02-14 23:42:05 +08:00
halx99 46c8fff152 Merge: 5a83d24b2f a460438c3b
Merge pull request #56 from c4games/astc-ios

Make astc works on ios platform.
2020-02-14 23:23:07 +08:00
halx99 67c153f589 Make multi-meta-textures support works on Metal. 2020-02-14 21:40:33 +08:00
halx99 55f96054b7 Update deps to v29 2020-02-14 19:14:39 +08:00
halx99 72eaf595b5 Make astc works on ios platform. 2020-02-14 19:10:01 +08:00
halx99 f1df405e82 fix #53 2020-02-14 15:18:56 +08:00
halx99 bb441097e7 Merge: f6853a5852 f36d21c9bf
Merge pull request #52 from c4games/fix-issue51

fix #51
2020-02-12 20:58:25 +08:00
halx99 41f0869926 Merge: 2d3e162e21 5d7f58c3ad
Merge pull request #50 from weiwest/master

add astc support (Great Job)
2020-02-12 20:24:29 +08:00
halx99 53d784af8d fix #51 2020-02-12 20:15:09 +08:00
weiwest 33b9e8330b add astc soft decode support 2020-02-11 23:54:17 +08:00
halx99 aa4d08eb3f Merge: ffcb65fdaa e10155bef4
Merge pull request #39 from halx99/master

Refactor UserDefault, add plain mode for win32.
2020-02-06 23:28:33 +08:00
weiwest 2acb59d377 add astc support 8x8 block size 2020-02-06 21:54:45 +08:00
halx99 a91953ac1a Refactor UserDefault, optmize for huge entities. 2020-02-06 01:08:51 +08:00
weiwest 27927bbcb3 add astc support 2d 4x4 RGBA 2020-02-05 22:45:19 +08:00
coulsonwang 3541d06339 set gl framebuffer read and write back again (#20403)
* set gl framebuffer read and write back again

* update review
2019-12-29 23:07:19 +08:00