mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-05 01:15:35 +00:00
gpu: saturate instead of overflowing depth buffer
Use greater-than-or-equal test and saturate the z depth buffer when more than 65k objects are drawn. Fixes gio#127 Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
@@ -399,6 +399,8 @@ func (b *Backend) DepthFunc(f backend.DepthFunc) {
|
||||
switch f {
|
||||
case backend.DepthFuncGreater:
|
||||
glfunc = GREATER
|
||||
case backend.DepthFuncGreaterEqual:
|
||||
glfunc = GEQUAL
|
||||
default:
|
||||
panic("unsupported depth func")
|
||||
}
|
||||
|
||||
@@ -35,6 +35,7 @@ const (
|
||||
INFO_LOG_LENGTH = 0x8B84
|
||||
INVALID_INDEX = ^uint(0)
|
||||
GREATER = 0x204
|
||||
GEQUAL = 0x206
|
||||
LINEAR = 0x2601
|
||||
LINK_STATUS = 0x8b82
|
||||
LUMINANCE = 0x1909
|
||||
|
||||
Reference in New Issue
Block a user