Commit Graph

258 Commits

Author SHA1 Message Date
HALX99 09937c97a7
Refactor render pipeline state (#211)
* Refactor pipeline state
* Cache DepthStencil state for MTL renderer backend
2020-09-22 16:32:17 +08:00
halx99 c5c7de9e1d Remove unused param for setRenderPipeline 2020-09-21 22:35:18 +08:00
HALX99 5a32bcfdaf
RenderTarget abstract, in-progress (#210)
RenderTarget abstract
2020-09-21 22:10:50 +08:00
halx99 fd69e066ae check null also 2020-09-15 16:03:00 +08:00
halx99 2d2d0e7ee6 Take care PBO use on android 2020-09-15 16:01:44 +08:00
halx99 a9f1c43127 fix fbo attachment texture bind error 2020-09-13 19:17:49 +08:00
halx99 9c6a3d2837 Metal screen framebuffer only set/restore 2020-09-13 12:55:35 +08:00
halx99 4e3acb6f2b UtilsGL::readPixels also use PBO if available 2020-09-12 23:26:40 +08:00
halx99 c4c64ffd3f No need enqueue, commit will do it automatically 2020-09-12 16:44:16 +08:00
halx99 682b4f685e Refine code 2020-09-12 15:34:09 +08:00
halx99 3d2ab83cab Remove test stubs 2020-09-12 14:52:39 +08:00
halx99 2b991b20b2 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 378e38de11 Add more clearly comment [skip appveyor] 2020-09-11 20:17:31 +08:00
halx99 7249325ff4 Use glMapBuffer if available 2020-09-11 17:32:08 +08:00
halx99 5d5c948218 fix ci 2020-09-11 14:45:45 +08:00
halx99 af21cdba50 fix ci 2020-09-11 13:38:05 +08:00
halx99 0e99525283 Remove unused comment 2020-09-11 12:14:40 +08:00
halx99 04358791ec v4 captureScreen API compatiable, gl needs flip always for capture 2020-09-11 11:57:55 +08:00
halx99 6497a92ec7 finish gl backend 2020-09-11 01:19:10 +08:00
halx99 4f4529bca5 Prepare 2020-09-11 00:14:03 +08:00
halx99 874946fccb Tidy code 2020-09-11 00:10:44 +08:00
halx99 fdd8321d28 Remove unused API, TODO: unify to Utils::readPixels 2020-09-10 23:11:43 +08:00
halx99 a7b0850d2f Add comment 2020-09-10 21:41:52 +08:00
halx99 2a50ae6cf8 Refine code 2020-09-10 21:38:24 +08:00
halx99 f6a8d993fc Refactor capture, fix data race for apple metal reanderer backend 2020-09-10 21:14:28 +08:00
halx99 4dd7f6aab6 fix 193 2020-09-10 18:12:46 +08:00
halx99 1dd638535e fix memory leak for ProgramStateRegistry use 2020-09-08 22:13:10 +08:00
HALX99 36c25dc889
Should set _mtlCommandBuffer to nil after release 2020-09-03 22:26:21 +08:00
halx99 b3361b6d70 Fix GL renderer backend API updateCompressedSubData will cause OpenGL 502 error 2020-09-03 18:03:43 +08:00
HALX99 7a2f91e514
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 ff3becb49d Add getGPUHandler for backend::Texture for some purpose use 2020-09-02 13:00:32 +08:00
halx99 63487d6c57 Remove unnecessary macro GL_ETC1_RGB8_OES check 2020-09-01 13:39:15 +08:00
halx99 5bfce4bed4 Add copyright notice [skip appveyor][skip travis] 2020-09-01 13:24:45 +08:00
halx99 f3c17427aa More clearly ETC1 format, sync enums for ETC1, correct somethings 2020-09-01 11:43:03 +08:00
HALX99 4d9206e402
ETC2 feature check for metal 2020-09-01 00:03:49 +08:00
halx99 7872bb1b97 ETC2 Metal support 2020-08-31 15:45:05 +08:00
halx99 e7811e707a 1. Finish ETC2 support on GL renderer backend
2. Improve ASTC compressed format check
2020-08-30 17:58:39 +08:00
halx99 e6108d111a Fix ASTC bytesPerRow calculation 2020-08-30 00:11:33 +08:00
halx99 c3b13cfcd6 Clear vector after releaseTextures 2020-08-29 22:00:58 +08:00
halx99 42b50af707 Release old storage textures 2020-08-29 20:07:13 +08:00
halx99 e0be836453 More clearly comment 2020-08-29 19:51:42 +08:00
halx99 ef755ba3ad More clearly comment for multi-textures support 2020-08-29 17:39:17 +08:00
halx99 59ef3e6ef0 Remove unused comment [skip appveyor][skip travis] 2020-08-29 16:59:15 +08:00
halx99 baa4447973 fix multi-texture2d support 2020-08-29 16:56:48 +08:00
halx99 1975ad1f94 Add CMake -DCC_FORCE_USE_GLES to control whether force use gles on win32,iOS 2020-08-28 12:57:00 +08:00
halx99 f36866a99b Make logical more clearly 2020-08-27 17:35:30 +08:00
halx99 3d3fea28c6 Support use google angle support on windows. 2020-06-12 12:42:58 +08:00
HALX99 61b14bf86c
fix memory leak & correct indent 2020-03-30 14:54:13 +08:00
halx99 f91ed91688 Remove unnecessary std::move semantics 2020-02-28 12:10:27 +08:00
halx99 d9e6cb8e33 Sync v3 pr20107 & fix builtin shaders, see: https://github.com/cocos2d/cocos2d-x/pull/20107 2020-02-24 17:09:25 +08:00
halx99 f0d60d4a85 Fixup, optimize shader compile log. 2020-02-24 16:27:10 +08:00
halx99 3e0ca066ba fix #41 2020-02-23 21:27:14 +08:00
HALX99 169fd54f62
Remove duplicated code 2020-02-17 20:21:43 +08:00
HALX99 a5de6b810b
Fix adjust issue at Texture2DGL::initWithZeros 2020-02-17 00:13:56 +08:00
halx99 d3162956e7 Sync https://github.com/cocos2d/cocos2d-x/pull/20457 2020-02-15 21:38:37 +08:00
HALX99 b8986f339b
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 e2c4b786b8 Call initWithZeros at constructor once is works 2020-02-15 17:35:44 +08:00
halx99 effc75bd78 Refine sources 2020-02-15 10:48:44 +08:00
halx99 8aee15f7c0 fix ci error 2020-02-15 03:10:01 +08:00
halx99 78f9dfa8ef Remove unnecessary constructors. 2020-02-15 02:58:41 +08:00
halx99 3bea76ee4d Refine STMGT 2020-02-15 02:36:02 +08:00
halx99 4c9e87ac51 Move maxTextureIdx to base texture class 2020-02-14 23:42:05 +08:00
halx99 54fecde8a2 Make multi-meta-textures support works on Metal. 2020-02-14 21:40:33 +08:00
halx99 a460438c3b Make astc works on ios platform. 2020-02-14 19:10:01 +08:00
halx99 2fe58e86ae fix #53 2020-02-14 15:18:56 +08:00
HALX99 deb7c48844
Merge pull request #52 from c4games/fix-issue51
fix #51
2020-02-12 20:58:25 +08:00
halx99 f36d21c9bf fix #51 2020-02-12 20:15:09 +08:00
weiwest 9496d34470 add astc soft decode support 2020-02-11 23:54:17 +08:00
weiwest dbc089d51d add astc support 8x8 block size 2020-02-06 21:54:45 +08:00
weiwest a6edda385b add astc support 2d 4x4 RGBA 2020-02-05 22:45:19 +08:00
coulsonwang 43ffe28ce9 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
halx99 d36f53e567 multi texture GPU handler for compressed image 2019-12-01 23:26:11 +08:00
coulsonwang 85ac704687 fix incorrect hash structure for RenderPipeline (#20373)
* fix incorrect hash structure for RenderPipeline
2019-11-30 16:54:50 +08:00
halx99 259d67b60d fix ci warnings 2019-11-26 22:37:20 +08:00
HALX99 8cb40c339a
Update ProgramStateRegistry.cpp 2019-11-25 21:23:29 +08:00
halx99 f332ae77c1 Remove unused log. 2019-11-24 21:02:41 +08:00
halx99 179ec6ed67 fix ci error 2019-11-23 21:25:17 +08:00
halx99 b94d75e5d6 fix ci error. 2019-11-23 20:27:39 +08:00
halx99 c180c29d32 for MTL layer 2019-11-22 22:10:55 -08:00
HALX99 c08e2cda4d
Merge branch 'v4' into v4 2019-11-22 10:29:11 +08:00
halx99 78ed4e230b TextureFormatEXT 2019-11-22 03:36:01 +08:00
halx99 8b62addcec Rename parameters. 2019-11-20 19:22:22 +08:00
halx99 e7906acfa4 v4-meta-multi-textures support Single Texture2D with multi GPU texture handlers. 2019-11-20 18:19:24 +08:00
codetypes d05967b69a fix setScissorRect crash (#20348)
When part of scissorRect is out of render target viewport, it crash on mac.
Error message like this: -[MTLDebugRenderCommandEncoder setScissorRect:]:2703: failed assertion `(rect.y(568) + rect.height(447))(1015) must be <= render pass height(1000)'
2019-11-20 11:03:59 +08:00
coulsonwang 2d42aa1d21 fix memory leak (#20258) 2019-10-28 15:04:03 +08:00
coulsonwang a09806f580 Fix todo (#20248) 2019-10-25 16:41:03 +08:00
minggo c9af873e2e
fix some warnings (#20247) 2019-10-25 16:40:30 +08:00
coulsonwang 67ae2e756e fix ProgramState and Program performance (#20189)
* fix ProgramState and Program performance

* fix review

* fix

* add autorelease
2019-10-15 09:40:59 +08:00
coulsonwang 327407d59b fix full screen issue (#20202)
need resize depth and stencil attachment texture as well.
2019-10-15 09:38:51 +08:00
coulsonwang b553648a77 remove unused code (#20195) 2019-10-12 09:45:56 +08:00
coulsonwang a91091e93a fix triangle batch (#20185)
* fix triangle batch
since it would be too expensive to check the uniforms, simplify enable batching for built-in program.

* enable user update the materialID
2019-10-10 09:41:39 +08:00
coulsonwang e9a33903f0 fix memory leak for metal app 2019-09-19 15:31:05 +08:00
coulsonwang 5ab04a7001 set default color attachment format (#20073) 2019-09-04 10:07:31 +08:00
coulsonwang 4d04b64a3a add specific define for metal (#20084) 2019-09-04 09:58:40 +08:00
coulsonwang f97717265b fix shader header defines (#20077) 2019-09-04 09:56:28 +08:00
coulsonwang 1e8f6d24ac fix render pipeline (#20041) 2019-08-19 10:12:00 +08:00
coulsonwang c4e6ede197 move VertexLayout to ProgramState (#20029)
* move VertexLayout to ProgramState

* fix lua
2019-08-15 16:51:49 +08:00
minggo 8913c30fc0
fix compile warnings (#20028) 2019-08-13 18:19:32 +08:00
coulsonwang 935af58e1d remove arrays of vertex layout (#20023) 2019-08-13 13:58:16 +08:00
coulsonwang 23732ab889 remove arrays of vertex buffer (#20022) 2019-08-13 09:46:20 +08:00