Source code for picogl.backend.gl.wrappers.frame

"""
Prepare viewport
"""

import platform

from picogl.backend.gl.backend import GLBackend
from picogl.backend.gl.enums import GLBitMask
from picogl.backend.gl.enums.point_size import GLPointCapability


[docs] def prepare_viewport(width: int, height: int, backend: GLBackend) -> None: """ prepare :param width: int :param height: int :param backend: GLBackend :return: None Prepares an OpenGL Frame Viewport """ if platform.system() == "Darwin": dpr = 2 # macOS Retina displays else: dpr = 1 backend.frame.viewport(0, 0, width * dpr, height * dpr) backend.depth.set_depth_test(True) backend.frame.set_clear_color((0.1, 0.1, 0.1, 1.0)) backend.capabilities.enable(GLPointCapability.PROGRAM_POINT_SIZE) backend.frame.clear(GLBitMask.COLOR_BUFFER | GLBitMask.DEPTH_BUFFER)