Commit Graph

90 Commits

Author SHA1 Message Date
halx99 092b24e591 Improve code quality 2021-07-16 11:04:38 +08:00
halx99 a84067eb74 Refactor dual sampler shader [ci build]
Since not only etc1 could use sepreate RGB, A to two texture samplers, we unify the shader name.
2021-06-27 20:58:50 +08:00
halx99 57c767a66d fix #260 [ci build] 2020-11-16 12:21:27 +08:00
halx99 da1613a9b6 For scripting binding happy 2020-11-02 16:35:31 +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 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 cf5c4f38c3 No need check GL_ETC1_RGB8_OES for ETC compression formats [skip appveyor][skip travis] 2020-09-01 14:32:52 +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 3426d03745 ETC2 software decode support 2020-08-31 14:11:48 +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 a460438c3b Make astc works on ios platform. 2020-02-14 19:10:01 +08:00
halx99 70561f2c0e fix compile error 2020-02-14 15:44:46 +08:00
halx99 2fe58e86ae fix #53 2020-02-14 15:18:56 +08:00
weiwest 2a02db76d8 remove test log 2020-02-12 15:52:08 +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
halx99 d36f53e567 multi texture GPU handler for compressed image 2019-12-01 23:26:11 +08:00
halx99 b94d75e5d6 fix ci error. 2019-11-23 20:27:39 +08:00
halx99 78ed4e230b TextureFormatEXT 2019-11-22 03:36:01 +08:00
halx99 22d5008d28 PremultipliedAlpha 2019-11-22 01:39:03 +08:00
halx99 5d5e6fcfec Remove comment. 2019-11-20 18:44:45 +08:00
halx99 e7906acfa4 v4-meta-multi-textures support Single Texture2D with multi GPU texture handlers. 2019-11-20 18:19:24 +08:00
coulsonwang facf78a22b add opengl header since Texture2D and Image will use opengl define (#20322)
* add opengl header since Texture2D and Image will use opengl define

* update review
2019-11-13 17:46:40 +08:00
Andy Duplain 0a227ef2d7 Don't use MTL_ pixelformat when building for iOS Simulator. (#20198) 2019-10-16 09:51:17 +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
rh101 4ac3f94774 V4 RenderTexture PMA flag fix (#20153)
* This is to ensure the RenderTexture internal texture2D PMA flag is set to the correct value.
[CCSprite.cpp] Blending mode needs to be set based on the PMA flag of the texture if using Sprite::initWithTexture().

* [CCSprite.cpp] Removed redundant code related to blending mode and opacityModifyRGB when creating a sprite with a texture.
2019-09-26 16:11:23 +08:00
coulsonwang c4e6ede197 move VertexLayout to ProgramState (#20029)
* move VertexLayout to ProgramState

* fix lua
2019-08-15 16:51:49 +08:00
coulsonwang 7b7cf55efb remove vertex step mode (#19921) 2019-07-17 13:59:37 +08:00
coulsonwang 7486fe89dc fix flip issue (#19831)
* fix flip

* fix flip issue
2019-06-18 00:20:29 -07:00
Arnold 7851f212bf Rename backend::Texture2D (#19821)
* compile on windows

* compile on mac

* rename to Texture2DBackend

* compile on mac
2019-06-12 00:01:15 -07:00
coulsonwang 9dc04bf228 remove opengl codes (#19797) 2019-06-05 02:58:33 -07:00
coulsonwang 89ba801628 add compressed format for metal (#19762) 2019-06-03 03:34:28 -07:00
coulsonwang 10b2799051 Feature/fix mipmap issues (#19753)
* fix mipmap

* fix mipmap issues

* remove unneeded code

* fix

* remove Texture2D::PixelFormat, add backend::PixelFormat

* fix lua compile error

* reset *.tps files

* fix compile error

* fix compile error
2019-06-02 18:39:51 -07:00
coulsonwang 97431b1197 [ParticleSpriteFrameTest] remove getName() in Texture2D (#19740) 2019-05-21 18:49:11 -07:00
coulsonwang 9c0033e1e7 Feature/draw in rect (#19664)
* Texture2D draw in point and draw in rectangle tests work

* optimize code

* fix compile error

* make initProgam() private
2019-05-16 18:14:14 -07:00
coulsonwang 2d02e23fbd Feature/update device info (#19712)
* update DeviceInfo

* remove unneeded code

* fix indentation

* add FeatureSet enum for metal

* revert code
2019-05-15 18:26:00 -07:00
coulsonwang 2a0ded38a2 [Texture2D Test17/18] add methods to convert BGRA8888 format (#19716)
* [Texture2D Test17/18] add methods to convert BGRA8888 format

* use size_t and ssize_t when necessary

* fix compile error
2019-05-15 18:17:26 -07:00
coulsonwang 7ee0b65bb6 [Feature] fix spirte, label test when EGL context lost (#19612)
* [BugFix] fix compile error

* [Feature] fix spirte, label test when EGL context lost

* [Feature] map uniform location

* [Feature] remove unneeded codes

* [Feature] add BufferManager

* [Feature] fix compile error

* [Feature] add files

* [Feature] remove unneeded codes

* [Feature] no need to release opengl resource

* [Feature] update BufferManager

* 1. reCreate frame buffer when needed.
2. initial texture when come back to foreground

* [Feature] add Program and Buffer event listener

* [FixTerrain] need check location had used before

* fix compile error

* add updateTextureDescrptor function for TextureMTL, since TextureMTL creation was move to Texture2D constructor.

* [FixDrawNode] record buffer data when needed

* [FixShaderTest] add nullptr judgement

* [FixShaderText] no need to reCreate ProgramState when come back to foreground

* [FixRenderTexture] retain the render texture image

* [Feature] optimize buffer memory

* fix compile error

* fix CI test fail
2019-04-29 18:51:45 -07:00
minggo bc1483dca7
Fix memory leak if invoking Texture2D::setAlphaTexture many times. (#19590) 2019-04-10 01:53:29 -07:00
coulsonwang 688592b175 [Feature] fix mipmap issues (#19519) 2019-04-01 19:20:30 -07:00
Arnold de77133821
Update cocos/renderer/CCTexture2D.cpp 2019-03-14 10:59:37 +08:00
Arnold 1d0107c087
alias backend::SamplerDescriptor 2019-03-13 10:54:26 +08:00
patricejiang 53975ee428
fix android error 2019-03-13 09:56:29 +08:00
Arnold fb87eec3f5
remove texture2d::setSamplerDescriptor 2019-03-12 18:59:12 +08:00
Arnold 62c6eae7c3
change Texture2D::TexParams fields type 2019-03-12 16:53:28 +08:00
minggo 06d7e4eda7
remove CCGLProgram related files (#19408)
* remove CCGLProgram related files

* remove CCGLProgram related header files
2019-02-19 16:06:17 +08:00
Arnold fd1d5d2dd7 [3D] texture cubemap GL & skybox (#19401) 2019-02-19 10:15:24 +08:00
Arnold fe497933f8 3d support: some test cases works
* hack to make sprite3d test work

* support cull face

* support setting front face winding

* convert depth compare function type

* clean codes

* remove usage of glprogramstate

* pass needed information to Material::draw()

* add 3d textures

* enable animation

* 3D: compile on windows  (#179)

* exclude source files from extensions/

* enable assets and 3D

* run on windows

* update comments

* use std::vector instead of raw pointer void *

* compile on mac

* revert cmake

* fix bufferdata

* add todos

* remove dirty flag from uniform buffer

* argument type const &

* enable more tests

* update shader

* save: failed to compile

* pass compilation

* fix type convert

* save stage

* save stage 2

* remove VertexData & IndexBuffer & VertexBuffer

* comment out _meshCommand

* comment bindPredefinedVertexAttribs()

* fix xcode project file

* simple refactor

* remove unused files

* revert sprite3d testcase position

* revert change

* remove ProgramGL::bindPredefinedVertexAttribs()

* add header <string>

* fix uniform size
2019-01-30 09:35:17 +08:00