Hello,

I myself do it the 256*256 way.
I do this because I want to be compatible even with old 3D-cards, which do not support bigger textures.
You can also just expand your image to 1024*768 and then load it. But it is always a good idea to size the image power of 2 (16*16, 32*32 etc)
This is necessary because we are in 3D hardware mode, where graphic cards use textures which normally have to sized power of 2. You can also use 800*600 images, but your program will not run properly on every 3D card, especially not on older ones.

Now how to draw a tiled background?

I do it this way:

procedure TBackground.Draw(Delta : double);
var x,y : byte;
begin
for y := 0 to 2 do
for x := 0 to 3 do
MainForm.PD.Device.TextureMap(MainForm.Images1.Ima ge[fImages[x,y]],
pBounds4(256*x, 256*y, 256, 256),
cColor1(fColor),
tPattern(0),
effectDiffuse);//effectSrcAlpha);
end;

This is just a little snap of code of one of my basic classes, but it does nothing else than printing all 12 image snaps of a tiled 1024*768 background on screen.

This seems a little uncomfortable, but you will see a very big advantage in speed. I began my game with DelphiX. When adding more and more effects etc. I was finally able to display about 20-30 FPS.
With Asphyre I am now at 100 (all effect simultaniously on screen) - 450 just drawing all contents without particle effect currently on screen.

I think thats a great advantage against DelhiX...

Greetings,
Dirk