dungeon_crawler
annotate prototype/src/material.h @ 15:3a3236a4833c
adding shaders and renderer abstraction
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sun, 19 Aug 2012 23:09:30 +0300 |
parents | |
children | 0588f8a1a351 |
rev | line source |
---|---|
nuclear@11 | 1 #ifndef MATERIAL_H_ |
nuclear@11 | 2 #define MATERIAL_H_ |
nuclear@11 | 3 |
nuclear@11 | 4 #include "color.h" |
nuclear@11 | 5 #include "texman.h" |
nuclear@11 | 6 |
nuclear@11 | 7 enum { |
nuclear@11 | 8 TEXTYPE_DIFFUSE, |
nuclear@11 | 9 TEXTYPE_NORMAL, |
nuclear@11 | 10 TEXTYPE_SPECULAR, |
nuclear@11 | 11 |
nuclear@11 | 12 NUM_TEXTURE_TYPES |
nuclear@11 | 13 }; |
nuclear@11 | 14 |
nuclear@11 | 15 class Material { |
nuclear@11 | 16 private: |
nuclear@11 | 17 Color kd, ks; |
nuclear@11 | 18 double shin; |
nuclear@11 | 19 unsigned int tex[NUM_TEXTURE_TYPES]; |
nuclear@11 | 20 |
nuclear@11 | 21 public: |
nuclear@11 | 22 Material(); |
nuclear@11 | 23 |
nuclear@11 | 24 void load(const aiMaterial *assmat, TextureSet *texset = 0); |
nuclear@11 | 25 |
nuclear@11 | 26 void setup() const; |
nuclear@11 | 27 }; |
nuclear@11 | 28 |
nuclear@11 | 29 #endif // MATERIAL_H_ |