Skip to content
Waxed Display Server

Texture Server

In Progress

Off-main-thread texture loading for images and video

Category: Core Services
Version: v1.0.0
Status: In Progress

Texture Server

Load textures fully off-main thread to upload images and video data to GPU memory without blocking. Background video playback is a core feature enabled by this architecture.

The Problem

Traditional texture loading blocks the main thread:

  1. Read file from disk
  2. Decode image/video
  3. Upload to GPU
  4. Block until complete

This causes stuttering during texture-heavy operations.

The Solution

Vulkan’s explicit memory model makes this architecture possible. Unlike OpenGL, Vulkan allows safe texture uploads from background threads without blocking the main rendering context. The Texture Server handles everything off-main-thread, and plugins receive a texture ID immediately to continue rendering while the texture loads in the background.

Key Features

Off-Main-Thread Processing

  • No main thread blocking
  • Smooth frame rates during loading
  • Priority-based scheduling

In Progress

Video Support

Video decoding is limited to formats supported by Vulkan Video Decode on the current hardware. No FFmpeg fallback - pure hardware decode only.

  • Decode video frames in background
  • Stream to GPU textures
  • Perfect for video wallpapers, previews

Use Cases

  • Desktop backgrounds
  • Image galleries
  • Game assets
  • UI textures