kick
|
00001 // 00002 // mesh_factory.h 00003 // KickCPP 00004 // 00005 // Created by Morten Nobel-Jørgensen on 05/12/13. 00006 // Copyright (c) 2013 Morten Nobel-Joergensen. All rights reserved. 00007 // 00008 00009 #pragma once 00010 00011 #include <memory> 00012 #include "kick/mesh/mesh_data.h" 00013 00014 namespace kick { 00015 class MeshFactory { 00016 public: 00017 static std::shared_ptr<MeshData> createPointData(); 00018 static std::shared_ptr<MeshData> createTriangleData(); 00019 static std::shared_ptr<MeshData> createDiscData(unsigned short slices = 20); 00020 static std::shared_ptr<MeshData> createPlaneData(); 00021 static std::shared_ptr<MeshData> createUVSphereData(unsigned short slices = 64,unsigned short stacks = 32,float radius = 1.0f); 00022 static std::shared_ptr<MeshData> createCubeData(float length = 1.0f); 00023 00024 }; 00025 };