#pragma once typedef struct Geometry Geometry; typedef struct Material Material; typedef struct ShaderProgram ShaderProgram; typedef struct Mesh { const Geometry* geometry; const Material* material; ShaderProgram* shader; // TODO: Move this back to Material? } Mesh;