- // hardcoded texture assignment hack
- Texture *tex_girogiromarmaro = texman.get("data/testscene/girogiromarmarodiffuse.jpg");
- Texture *tex_kafemarble = texman.get("data/testscene/kafemarblediffuse.jpg");
- Texture *tex_kentrikokafemarble = texman.get("data/testscene/kentrikokafemarblediffuse.jpg");
- Texture *tex_paliomarmaro = texman.get("data/testscene/paliomarmarodiffuse.jpg");
- Texture *tex_steelgreygranite = texman.get("data/testscene/steel-grey-granitediffuse.jpg");
- Texture *tex_whitemarble = texman.get("data/testscene/whitemarblediffuse.jpg");
- Texture *tex_kolones_lightmap = texman.get("data/testscene/kolones_lighmap.jpg");
- Texture *tex_patoma_lightmap = texman.get("data/testscene/patomacorona_lightmap.jpg");
-
- for(int i=0; i<(int)scn->objects.size(); i++) {
- Object *obj = scn->objects[i];
- if(obj->mtl.name == "WiteMarble") {
- obj->mtl.add_texture(tex_whitemarble, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_patoma_lightmap, MTL_TEX_LIGHTMAP);
- } else if(obj->mtl.name == "BrownMarble") {
- obj->mtl.add_texture(tex_kafemarble, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_patoma_lightmap, MTL_TEX_LIGHTMAP);
- } else if(obj->mtl.name == "GiroGiroMarmaro") {
- obj->mtl.add_texture(tex_girogiromarmaro, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_patoma_lightmap, MTL_TEX_LIGHTMAP);
- } else if(obj->mtl.name == "KentrikoKafeMarmaro") {
- obj->mtl.add_texture(tex_kentrikokafemarble, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_patoma_lightmap, MTL_TEX_LIGHTMAP);
- } else if(obj->mtl.name == "SkouroGrizoMarmaro") {
- obj->mtl.add_texture(tex_steelgreygranite, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_kolones_lightmap, MTL_TEX_LIGHTMAP);
- } else if(obj->mtl.name == "PalioMarmaro") {
- obj->mtl.add_texture(tex_paliomarmaro, MTL_TEX_DIFFUSE);
- obj->mtl.add_texture(tex_kolones_lightmap, MTL_TEX_LIGHTMAP);
- }
+ // set initial cam_pos above the center of the walk mesh (if any)
+ if(scn->walk_mesh) {
+ Vec3 bcent;
+ float brad;
+ scn->walk_mesh->get_bsphere(&bcent, &brad);
+
+ floor_y = bcent.y;
+ cam_pos = bcent + Vec3(0, user_eye_height, 0);
+ }
+
+ if(!(sdr_ltmap_notex = create_program_load("sdr/lightmap.v.glsl", "sdr/lightmap-notex.p.glsl"))) {
+ return false;