후진 글픽카드 에서.. z buffer 16bit 이하로 잡히면 카메라에서 조금만 떨어져도 캐릭터들 껌벅껌벅.. 배경도 껌벅 껌벅하네여..
그래서 1권 4.1에 있는 정점 투영 깊이값조정... 이걸 적용해볼라구 하는데 수학에 약해서 도대췌 모르겠네여..
void LoadOffsetMatrix(GLdouble l, GLdouble r, GLdouble b, GLdouble t,GLdouble n, GLdouble f, GLfloat delta, GLfloat pz)
{
GLfloat matrix[16];
// Set up standard perspective projection
glMatrixMode(GL_PROJECTION);
glFrustum(l, r, b, t, n, f);
// Retrieve the projection matrix
glGetFloatv(GL_PROJECTION_MATRIX, matrix);
// Calculate epsilon with equation (7)
GLfloat epsilon = -2.0F * f * n * delta / ((f + n) * pz * (pz + delta));
// Modify entry (3,3) of the projection matrix
matrix[10] *= 1.0F + epsilon;
// Send the projection matrix back to OpenGL
glLoadMatrixf(matrix);
}
여기서 delta 하구 pz 값은 어케 정해줘야하나여..
glDepthRange() 함수도 비슷한 기능을 하는거 같은데 어떠케 쓰는건지 몰겠네여..
혹시 다른 방법두 있나여.. 도와주세여.. Help ME///
[GPG 1 글 4.1] [질문]z depth 에관한 문제.. ㅡ.ㅡ 정점의 투영 깊이값.. 1권 4
Moderator: 류광
-
- Posts: 3805
- Joined: 2001-07-25 09:00
- Location: GPGstudy
- Contact:
Re: 질문한사람.
cm 단위로 하신다면, near를 한 100(1m) 정도로 하면.
웬만해서는 z-다툼 문제가 크게 눈에 띄지는 않을 겁니다...
웬만해서는 z-다툼 문제가 크게 눈에 띄지는 않을 겁니다...
누구일까요. wrote:일단 답변 감사해요~~
지금 cm 단위로 작업해서
near 1.f , far 10000.f 으로 되있는데... 이수치가 문제가 될수있는건가요..
미터단위로 바꾸면... 0.01 , 100 이 되는데 이러면 해결될까여..
z Depth 를 내부적으로 어떠케 처리하는지 몰라서 .. ㅡ.ㅡ
걍 암생각없이 했는데.. 수의 크기에 영향을 받나요.??
-
- Posts: 3805
- Joined: 2001-07-25 09:00
- Location: GPGstudy
- Contact: