+ * @brief Initialize the renderer with the geometry and shader from the cache, if not available, create and save to the cache for sharing.
+ */
+ void InitializeRenderer();
+
+ /**
+ * @brief Creates a geometry for this renderer's grid size
+ *
+ * @return Returns the created geometry for this renderer's grid size
+ */
+ Geometry CreateGeometry();
+
+ /**
+ * @brief Creates a shader for this renderer's grid size
+ *
+ * @return Returns the created shader for this renderer's grid size
+ */
+ Shader CreateShader();
+
+ /**