Oberon Object Tiler [ 2025-2027 ]
Overdraw (drawing the same pixel multiple times) is the enemy of mobile GPUs and high-framerate rendering. In a naive painter's algorithm, a background object draws a pixel, then a foreground object draws over it. With the Oberon Object Tiler, because per-tile sorting resolves depth early, the renderer can implement early-z rejection at the tile level. Objects that are entirely occluded are never even fetched from memory.
This module maintains the screen tree. The screen is recursively partitioned. For example:
The tiler stores a binary tree of frames. When you click a divider, the Tiler.Grow or Tiler.Shrink method recalculates the proportions. Oberon Object Tiler
In the history of computing, the period between the late 1980s and mid-1990s was a fertile ground for bold, unconventional user interfaces. While Microsoft Windows and the classic Mac OS were solidifying the dominance of the overlapping-window, menu-driven desktop metaphor, a quieter but more radical system emerged from ETH Zurich. The Oberon System, created by Niklaus Wirth and Jürg Gutknecht, proposed a text-based, command-driven, yet highly interactive environment. At the heart of its unique user experience lay a component known as the Object Tiler. Far from a simple window manager, the Object Tiler was a philosophical and technical statement about document-centricity, spatial memory, and the nature of a "living" user interface.
Most graphical user interfaces manage windows as overlapping, resizable frames. The Oberon System [1] rejected overlapping windows in favor of a tiled paradigm, where the screen is partitioned into non-overlapping, resizable rectangles called viewers. Each viewer displays a document or tool. The Object Tiler is the subsystem responsible for creating, destroying, moving, and resizing these viewers while maintaining a complete, gap-free tiling of the display. Overdraw (drawing the same pixel multiple times) is
Unlike tiling window managers in Unix (e.g., Ratpoison, i3), Oberon’s tiler is not limited to application windows: it tiles any active object – text documents, graphical figures, directory listings, or system logs – all of which are first-class citizens in the system.
Graphics hardware manufacturers are taking notice. There is ongoing research into Tile-Based Deferred Rendering (TBDR) on mobile GPUs (Apple Silicon, Adreno) that mirrors the Oberon Object Tiler logic. The next logical step is fixed-function hardware for object binning. The tiler stores a binary tree of frames
Imagine a GPU where you simply write an array of OberonObject to VRAM, write a single command to "Tile and Execute," and the GPU microarchitecture handles the rest. No command buffers, no driver overhead—just declarative graphics.