배경 텍스처 위에 렌더링되는 입자 시스템이 있습니다. 각 입자는 정사각형이며 텍스처가 적용되지 않으며 모두 같은 색상입니다. 배경은 회색 음영 질감입니다. 내가 뭘 하려는지 Gimp와 같은 응용 프로그램에서 알려진 블렌딩과 같은 유형의 블렌드 모드입니다.OpenGL ES 색상 혼합 모드
기본적으로 입자로 덮힌 배경 영역은 휘도를 유지해야하지만 입자의 색상을 채택해야합니다. glBlendFunc() 매개 변수의 여러 조합을 시도하고 glTexEnv 함께 어지러운 시도했지만 그것을 이해하는 데 많은 문제가 있습니다. 현재 두 개의 입자가 겹치면 glBlendFunc 매개 변수에 따라 밝거나 어두워집니다.
저는 android에서 OpenGL ES 1.1을 사용하고 있습니다. OpenGL ES 2.0을 사용하지 않고도이 효과를 얻을 수있는 방법이 있습니까? 그렇다면 무엇입니까?
2 단계에서 HSL의 휘도를 최대화하면 순수한 흰색을 얻지 못합니까? RGB로 다시 변환하면 (255,255,255)가됩니다. 그래서 HSV 색상 공간을 사용하여 값을 최대화하려고 시도했지만 입자가 겹치면 배경이 어두워집니다. – Davide
당신은 HSL에서 1.0이 아니라 0.5의 밝기이어야합니다 (이것은 순수한 흰색 임). 값이 1.0 인 HSV는 동일한 결과를 제공해야합니다. 순수한 색상을 이용한 곱셈은 밝기의 변화가 없어야한다는 아이디어입니다.이는 순수한 색상에만 적용됩니다 (예 : RGB = (255,0,0)로 쉽게 확인할 수 있음). –
원하는 효과를 얻을 수 있지만 색상 (255,0,0), (0,255,0) 및 (0, 0, 255). HSL에서 (288º, 100 %, 50 %)와 같이 (204,0,255)를 사용하면 겹치는 부분이 더 어두워집니다. – Davide