////////////////////////////////////////////////////////
// Spotlight sample
// (c) oP group 2010
////////////////////////////////////////////////////////
#include <default.c>
#include <shadows.c>
function blob()
{
my.flags |= SHADOW;
}
function spot()
{
my.flags |= SPOTLIGHT|CAST|LIGHT;
my.lightrange = 500;
vec_set(my.blue,vector(255,100,100));
while(1) {
my.pan += 3*time_step;
my.tilt = -60;
wait(1);
}
}
function main()
{
shadow_stencil = 8; // activate external shadows
shadow_lod = 2; // works also for PSSM
level_load("small.hmp");
vec_set(sky_color,vector(20,10,10));
vec_set(ambient_color,vector(40,40,40));
sun_light = 0;
ent_create("blob.mdl",vector(-120,70,20),blob);
ent_create(CUBE_MDL,vector(0,0,200),spot);
vec_set(camera.x,vector(-400,0,50));
def_move();
pssm_fbias = 0.0005;
pssm_run(3);
}