좋은 하루 나의 친애하는 커뮤니티.동적 인 2 차원 그림자 - 블렌딩 문제
저는 작업 할 게임의 동적 그림자에 대해 작업하고 있지만 일반적으로 나는 누군가에게 도움이 될 것이라는 희망으로 (사실 저는 확신합니다) 문제를 제기합니다.
공지 사항 붉은 광장, 나는 그것이 점차적으로 보이지 않는 광원의 움직임에 따라 사라질 싶어 : 나는 지금의 위치를
이입니다. 폴리곤의 한 점이 원의 반지름 안에 있는지 확인하지만 당연히 해결하지 못합니다. 내가 말했듯이, 빛이 너무 멀리 떨어져 있다면 완전히 점멸 할 때까지 서서히 희미 해지기를 원한다.
내 마음에는 하나의 아이디어가 있지만 더 나은 아이디어가 있기를 바랍니다. 나는 마지막 옵션이기 때문에 그것에 대해 이야기하지 않을 것이며, 나는 그것이 '무차별 대항'기술이라고 생각한다.
이것은 내가 빛을 렌더링하는 방법입니다
glBegin(GL_TRIANGLE_FAN);
{
Graphics::Instance()->SetColor(r_,g_,b_,intensity_);
glVertex2f(posX_,posY_);
glColor4f(0.f, 0.f, 0.f, 0.0f);
for (angle_=0.0; angle_<=3.14159265*2; angle_+=((3.14159265*2)/64.0f))
{
glVertex2f(range_*(float)cos(angle_) + posX_,
range_*(float)sin(angle_) + posY_);
}
glVertex2f(posX_+range_, posY_);
}
을 그리고 이것은 내가 그것을 혼합하는 방법입니다 : 모든
glBlendFunc(GL_SRC_ALPHA, GL_ONE);
l0->Render();
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
l0->ProjectShadow(*mmm);
l0->ProjectShadow(*bb);
즉. 자신을 명확하게하지 않았거나 관련 코드를 게시하지 않았다면 그렇게 말하고 다운 다운하지 마십시오.
고정 기능 파이프 라인을 사용하려면 광 감쇠 매개 변수를 사용하는 것이 어떻습니까? (glLightf 매뉴얼 참조). – datenwolf