17 lines
535 B
Python
17 lines
535 B
Python
from __future__ import annotations
|
|
|
|
import wgpu
|
|
|
|
|
|
def request_device(canvas) -> tuple["wgpu.GPUAdapter", "wgpu.GPUDevice"]:
|
|
adapter = wgpu.gpu.request_adapter_sync(canvas=canvas, power_preference="high-performance")
|
|
device = adapter.request_device_sync()
|
|
return adapter, device
|
|
|
|
|
|
def configure_context(canvas, adapter, device):
|
|
context = canvas.get_context("wgpu")
|
|
texture_format = context.get_preferred_format(adapter)
|
|
context.configure(device=device, format=texture_format)
|
|
return context, texture_format
|