eqemu
diff src/objfile.cc @ 6:977bc1cb055b
almost done
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Fri, 18 Jul 2014 02:35:06 +0300 |
parents | 9b5bb05ae53a |
children | 2656099aff12 |
line diff
1.1 --- a/src/objfile.cc Fri Jul 18 00:42:15 2014 +0300 1.2 +++ b/src/objfile.cc Fri Jul 18 02:35:06 2014 +0300 1.3 @@ -22,6 +22,7 @@ 1.4 CMD(MTLLIB), \ 1.5 CMD(USEMTL), \ 1.6 CMD(NEWMTL), \ 1.7 + CMD(KE), \ 1.8 CMD(KA), \ 1.9 CMD(KD), \ 1.10 CMD(KS), \ 1.11 @@ -30,6 +31,8 @@ 1.12 CMD(D), \ 1.13 CMD(TR), \ 1.14 CMD(MAP_KD), \ 1.15 + CMD(MAP_REFL), \ 1.16 + CMD(MAP_BUMP), \ 1.17 CMD(MAP_KS), \ 1.18 CMD(MAP_NS), \ 1.19 CMD(MAP_D), \ 1.20 @@ -68,6 +71,7 @@ 1.21 struct ObjMat { 1.22 string name; // newmtl <name> 1.23 Color ambient, diffuse, specular; // Ka, Kd, Ks 1.24 + Color emissive; // Ke 1.25 float shininess; // Ns 1.26 float ior; // Ni 1.27 float alpha; // d, Tr 1.28 @@ -207,6 +211,7 @@ 1.29 mat.diffuse = vmtl[i].diffuse; 1.30 mat.specular = vmtl[i].specular; 1.31 mat.shininess = vmtl[i].shininess; 1.32 + mat.emissive = vmtl[i].emissive; 1.33 mat.alpha = vmtl[i].alpha; 1.34 1.35 if(vmtl[i].tex_dif.length()) { 1.36 @@ -383,6 +388,10 @@ 1.37 } 1.38 break; 1.39 1.40 + case CMD_KE: 1.41 + parse_color(&mat.emissive); 1.42 + break; 1.43 + 1.44 case CMD_KA: 1.45 parse_color(&mat.ambient); 1.46 break; 1.47 @@ -421,6 +430,10 @@ 1.48 mat.tex_dif = parse_map(); 1.49 break; 1.50 1.51 + case CMD_MAP_REFL: 1.52 + mat.tex_refl = parse_map(); 1.53 + break; 1.54 + 1.55 default: 1.56 break; 1.57 }