1 #ifndef RAYLIB_CPP_INCLUDE_MATERIAL_HPP_
2 #define RAYLIB_CPP_INCLUDE_MATERIAL_HPP_
7 #include "./raylib.hpp"
8 #include "./raylib-cpp-utils.hpp"
16 Material(const ::Material& material) {
24 set(LoadMaterialDefault());
43 static std::vector<Material>
Load(
const std::string& fileName) {
46 ::Material* materials = ::LoadMaterials(fileName.c_str(), &count);
47 return std::vector<Material>(materials, materials + count);
51 GETTERSETTER(::MaterialMap*, Maps, maps)
80 if (maps !=
nullptr) {
81 ::UnloadMaterial(*
this);
90 ::SetMaterialTexture(
this, mapType, texture);
106 ::DrawMeshInstanced(mesh, *
this, transforms, instances);
111 inline void set(const ::Material& material) {
112 shader = material.shader;
113 maps = material.maps;
114 params[0] = material.params[0];
115 params[1] = material.params[1];
116 params[2] = material.params[2];
117 params[3] = material.params[3];
122 #endif // RAYLIB_CPP_INCLUDE_MATERIAL_HPP_