eqemu
annotate src/material.h @ 11:2b559dc24c7b
done
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Fri, 18 Jul 2014 05:44:37 +0300 |
parents | 9b5bb05ae53a |
children | 2656099aff12 |
rev | line source |
---|---|
nuclear@3 | 1 #ifndef MATERIAL_H_ |
nuclear@3 | 2 #define MATERIAL_H_ |
nuclear@3 | 3 |
nuclear@3 | 4 #include "vmath.h" |
nuclear@3 | 5 |
nuclear@5 | 6 enum { |
nuclear@5 | 7 TEX_DIFFUSE, |
nuclear@5 | 8 TEX_ENVMAP, |
nuclear@5 | 9 |
nuclear@5 | 10 NUM_TEXTURES |
nuclear@5 | 11 }; |
nuclear@5 | 12 |
nuclear@3 | 13 class Material { |
nuclear@3 | 14 public: |
nuclear@6 | 15 Vector3 emissive; |
nuclear@3 | 16 Vector3 ambient; |
nuclear@3 | 17 Vector3 diffuse; |
nuclear@3 | 18 Vector3 specular; |
nuclear@3 | 19 float shininess; |
nuclear@3 | 20 float alpha; |
nuclear@3 | 21 |
nuclear@5 | 22 unsigned int tex[NUM_TEXTURES]; |
nuclear@5 | 23 Vector2 tex_scale[NUM_TEXTURES], tex_offset[NUM_TEXTURES]; |
nuclear@5 | 24 |
nuclear@5 | 25 unsigned int sdr; |
nuclear@5 | 26 |
nuclear@3 | 27 Material(); |
nuclear@3 | 28 |
nuclear@3 | 29 void setup() const; |
nuclear@3 | 30 }; |
nuclear@3 | 31 |
nuclear@5 | 32 unsigned int load_texture(const char *fname); |
nuclear@5 | 33 unsigned int load_shader_program(const char *vname, const char *pname); |
nuclear@5 | 34 |
nuclear@3 | 35 #endif // MATERIAL_H_ |