Finding books (fiction, non-fiction, poetry, plays), movies, news, magazines, literary journals and more for LGBTQIA+ (lesbian, gay, bisexual, transgender, queer/questioning, intersex, asexual/ally and more!) interests and research
The Oberon Object Tiler: A Minimalist Model for Visual Document Composition
Abstract
The Oberon System, developed at ETH Zürich, introduced a distinctive approach to user interfaces based on textual commands and linked documents. A lesser-known but elegant component is the Object Tiler – a spatial layout manager that treats screen regions as typed objects. This paper describes the design, implementation, and philosophy of the Oberon Object Tiler, contrasting it with contemporary window managers and document layout engines.
The tiler stores a binary tree of frames. When you click a divider, the Tiler.Grow or Tiler.Shrink method recalculates the proportions.
Expand Vleft.frame.x1 = Vright.frame.x1
Delete Vright from list.
Invoke Vleft.handle to redraw.
2. Tile Boundary Artifacts
When an object straddles a tile boundary, it must be rendered in both tiles. If not careful, blending or anti-aliasing can produce seams. Solution: Ensure the tiler includes a "guard band" or that the rasterizer reads neighboring tiles' depth buffers during final resolve.
Whether you’re building a level editor, generating procedural backgrounds, creating sprite atlases, or designing tile-based game worlds, Oberon Object Tiler abstracts away the complexity of manual placement logic.
No Z-Order: There is no "front" or "back." Every object has a static, visible position.
No Minimizing: You cannot hide objects. If you don't need it, you delete it (close it). If you might need it, it stays visible.
Mouse-Light Interaction: The mouse is used for selection and command invocation, but the tiler itself is managed by simple text commands or smart mouse clicks on dividers.