Quote Originally Posted by {MSX}
Umm i suggest you to get the camera (and the basic 3d system as a whole) working perfecly as you expect, becouse it will have a huge impact on the rest of the program. If something doesn't work as expected, and even if something works but you don't know how, you'll better fix it.

What tecnique did you used to get the actual "oval" system ?
Yeah its something i really want to get sorted and im not continuing with the rest until i know it is working perfectly!

I also want to add different styles of camera, behind the actor, FPS style, Isometric style, and top view, maybe others if and when i work out how to do them :roll:

I managed to get the oval system via:
[pascal]
var
p,v,u,tmpP: TVertex3f;
begin
p := Player.Position;
tmpP := p;
p[1] := 4;
v := RotatePoint(Player.Position, Player.Rotation);
u := Vertex3f(0,4,0);
gluLookat(p, v, u);
end;
[/pascal]

Of course i know this is wrong..
From what im guessing id say that p should be the position of the camera, v of the target (Actor) and u is the tilt?

Quote Originally Posted by {MSX}
This is a typical problem.. The solution with matrix is, for example:
- select a vector X that define the distance from the player to the camera (example 10 unit behind and 4 above)
- translate the vector to the orientation of the player (this is what you miss)
- sum the translated X to the player position.
- now you can use lookAt with the calculated position as eye and the player position as target.
Im not too sure on what you mean, i came up with the following and of course it doesnt work lol (im no good at theory :roll
[pascal]
var
p,Distance: Array [0..2] of Single;
begin
Distance := Vertex3f(0, 4, 6);
p := VertexAdd(Player.Position, Distance);
glLookat(p, Player.Position, Vertex3f(0,4,0));
end;
[/pascal]

Quote Originally Posted by {MSX}
Ah, a nice project.

First, if you plan to use DirectX, change your plans Use SDL and OpenGL instead (see JEDI-SDL).
About the file information, the best thing is to use delphi functions, like findFirst and findNext function, that are possibly cross-platform.

Anyway the project you're working is more system-dependant than a game.. you'll have hard work on porting it on linux
Thanx, iv been working on it for ages and starting to get it going nicly, just need to put it all together :roll:

I have decided to use OpenGL mostly because i see it simpler to understand than DX, and i have majority of the engine designed for OpenGL. Amoungst that i thought it would be easier to use OpenGL for if i decide to make anything cross-platform in the future.