Ich versuche gerade einen 3D Effekt für Gamestudio zu programmieren.Er funktioniert bis jetzt recht gut, nur sieht man alles ein bisschen unscharf.

Er funktioniert folgendermaßen:
Ich habe 2 Kameras mit unterschiedlichen Positionen, die ungefähr den Abstand der Augen entsprechen. Die beiden Bilder trenne ich durch einen selbstgebauten Stereobetrachter.

Mein Code:
Click to reveal..

VIEW* cam3d_link = //Linkes Auge
{
layer = 2;
pos_x = 255;
pos_y = 0;
size_x = 145;
size_y = 140;
// arc = 45;
// aspect = 1;
// ambient = 10;
// fog = 10;
// genius = NULL;
flags = SHOW;
}
VIEW* cam3d_rechts = // Rechtes Auge
{
layer = 2;
pos_x = 400;
pos_y = 0;
size_x = 145;
size_y = 140;
// arc = 45;
// aspect = 1;
// ambient = 10;
// fog = 10;
// genius = NULL;
flags = SHOW;
}



function main()
{
level_load("test2.wmb");
wait(3);
}

action schadl()
{
while(1)
{
my.pan -= (10 * mouse_force.x)*time_step;
my.tilt += (10 * mouse_force.y)*time_step;

if(key_w)
{
c_move(my,vector(5*time_step,0,0),nullvector,GLIDE);
}

cam3d_link.pan = my.pan;
cam3d_link.tilt = my.tilt;
cam3d_rechts.pan = my.pan;
cam3d_rechts.tilt = my.tilt;

vec_for_vertex(cam3d_rechts.x, my, 26); //gebe die Kameraposition auf das rechte Auge des Models
vec_for_vertex(cam3d_link.x, my, 28); //gebe die Kameraposition auf das linke Auge des Models





wait(1);
}

}