Architecture Diagram
DYNAMIC DISPATCH VIA VTABLE:
Base Pointer ptr ──> Derived Object Instance
├── vptr ────────> Derived Class vtable
│ └── [0] -> Derived::render()
└── Member Data