Commit Graph

213 Commits

Author SHA1 Message Date
HALX99 b342ebd7ae
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 1735517112 Improve win dll support 2020-10-06 16:46:38 +08:00
halx99 543ead7111 Fix depth stencil state and pipeline state mismatch 2020-09-25 23:16:48 +08:00
HALX99 1090f732c9
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 235f09f635
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 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