임은 안드로이드에 게임을하지만 색상이 너무 반짝하고 내가 그래서 스프라이트를 변경 어차피 나는 쉐이더 구현하기로 결정 :개방 GLES 2 쉐이더 성능
const char* fETCShader = "\
uniform mediump sampler2D sTexture
uniform mediump sampler2D sTexture_alpha
\
varying mediump vec4 vColor
varying mediump vec2 vTexCoord
uniform lowp mat4 cCorrection
\
void main()\
{\
lowp vec4 color = vec4(texture2D(sTexture, vTexCoord).rgb, texture2D(sTexture_alpha, vTexCoord).r) * vColor
gl_FragColor = cCorrection * color
}"
을하지만, FPS는 (20 등) 극적으로 떨어
누구나이 작업을 수행하는 데 비용이 덜 드는 작업이 있는지 알 수 있습니다.
감사합니다.
우리는 ETC 텍스처 형식을 사용하고 있습니다.이 형식은 RGB 채널 만 지원하므로 Shader에 표시된 것처럼 알파 채널을 저장하고 벡터 RGBA를 만들려면 강제로 추가 텍스처가 필요하다고 생각합니다. – elios264
ETC2는 RGBA를 지원합니다. 그렇지 않으면 알파 값에 대한 정점 속성과 같은 몇 가지 트릭을 시도하거나 ETC 압축을 사용하지 마십시오. 메모리가 부족한 경우 텍스처 또는 스트리밍 텍스처를 사용할 필요가있을 때 크기를 줄이십시오. –
안녕하세요! "알파 값에 대한 정점 속성"에 대해 좀 더 자세히 설명해 주시겠습니까? 이것은 꼭지점 쉐이더에서 sampler2D를 사용하고 나중에 쉐이더 쉐이더에서 나중에 사용하기 위해 결과를 쓰는 것을 의미합니까? – dimsuz