Triangles at work: GPU rendering shapes and connectors in Confluence whiteboards
Nov 13, 2023Caleb Joseph, Tim Hor

Summary
This post details the implementation of a WebGL graphics pipeline for Confluence whiteboards, focusing on efficient rendering of shapes and connectors. It covers polygon triangulation for rendering various shapes with rounded corners, handling shape resizing by scaling corners based on angle changes using vertex shaders, and rendering hollow shapes by triangulating the geometry between outer and inner outlines derived from normal vectors. The post also introduces the rendering of dynamic connectors with seamlessly smooth arcs.