Есть ли причина, почему скрытый объект скрывается за объектом? - PullRequest
0 голосов
/ 18 апреля 2020

Я все еще изучаю, как использовать OpenGL, и я хочу спросить, есть ли какие-либо способы использовать окклюзию, отбраковывая закрытый объект позади объекта (который не виден камере). Я использовал отбраковку усеченного конуса для обнаружения объекта, который не находится внутри камеры. Кроме того, я хотел бы использовать только перенасыщение. Не хочу связываться с АРБ. Любой совет очень ценится

void render() {

    glColor3f(0,1,0);
    spheresTotal=0;
    spheresDrawn=0;

    for (int i = -3; i < 3; i+=4) 
            for(int k =  -3; k < 3; k+=4) {
                spheresTotal++;
                Vec3 a(i,0,k);
                if (!frustumOn || (frustum.sphereInFrustum(a,0.5) != FrustumG::OUTSIDE)) {

                    glPushMatrix();
                    glTranslatef(i,0,k);
                    glutWireSphere(0.5,5,5);
                    glPopMatrix();
                    spheresDrawn++;

                }
            }

}

Этот код в основном относится к http://www.lighthouse3d.com/tutorials/view-frustum-culling/radar-approach-testing-points/. Это хороший учебник для начинающих, как я.

...