X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=src%2Fmaterial.h;h=979bbd953dc802e7d06076cc6e02fcdea8d2b5c6;hp=f5c26aefab503cf219c54740ba5ea967e50cfa4b;hb=8137121400748ee8afb1608253aae15323c5e3a2;hpb=516e9be0443cfd7f844feb9b8299f909075b7c3c diff --git a/src/material.h b/src/material.h index f5c26ae..979bbd9 100644 --- a/src/material.h +++ b/src/material.h @@ -1,16 +1,37 @@ #ifndef MATERIAL_H_ #define MATERIAL_H_ +#include +#include #include +#include "texture.h" + +enum { + MTL_TEX_DIFFUSE, + MTL_TEX_SPECULAR, + MTL_TEX_NORMALMAP, + MTL_TEX_LIGHTMAP, + MTL_TEX_ENVMAP, + + MTL_TEX_UNKNOWN +}; + +#define NUM_MTL_TEXTURES MTL_TEX_UNKNOWN class Material { public: + std::string name; Vec3 diffuse, specular; float shininess; float alpha; + Texture *stdtex[NUM_MTL_TEXTURES]; + std::vector textures; + Material(); void setup() const; + + void add_texture(Texture *tex, int type = MTL_TEX_UNKNOWN); }; #endif // MATERIAL_H_