Използване на буфера на шаблона за обединяване на динамична сянка

Създавам splitscreen coop 2D от най-добрата игра с LWJGL. В момента се опитвам да измисля интелигентен начин за обединяване на две зрителни полета с буфера на шаблона. Целият смисъл е, че можете да видите това, което другият играч може да види.

Картината е по-добра от думата.

Буфер за шаблони

Имайте предвид, че мога да нарисувам само бял квадрат и черна сянка.

Не искам нищо да бъде начертано вътре в черната област, следователно буферът на шаблона.

Начертаването на света, докато запълвате буфера на шаблона с "1", е лесно. Начертаването на зрителното поле за играч е лесно. Не е лесно да разберете къде може да вижда само един от играчите.

За мен изглежда като операция ИЛИ между последните 2 снимки. Има обаче само един буфер за шаблони. Поради относителната липса на документация за шаблонния буфер, също не съм сигурен как наистина работи.

Също така бих искал да избегна сложни неща като FBO. Почти съм сигурен, че има прост начин да го направите с буфера за шаблони.

Някой има ли идея за това?


person Klems    schedule 13.08.2011    source източник