still working on refactoring the mesh classes and shader material