Sign in to follow this  
Muzzy A

D3D9 Texture isn't the right size

Recommended Posts

Hey, I have a chess board texture. It's dimensions are "512 x 512"


when I load in the texture it tells me the dimensions are "512 x 512"


but when displayed on the screen, it shows it as about "471 x 496"



I'm using the D3D9 sprite manager

ID3DXSprite *pSpriteMan;
// I'm not scaling the image AT ALL

To expand on this, I have all my chess pieces positioned exactly "64 x 64" away from each other, and each chess piece texture is "64 x 64"


they fit perfectly on the board....





What's going on here?



I bring this up because, I'm trying to click on a chess piece, but I don't get the exact piece that i'm trying to click because of this small little offset
















    I was thinking and I remember this same situation happening to me once before in a 3D engine I was working on, I thought I was just doing something wrong with my math somewhere but now I realize it wasn't me. Because the mouse clicks were offset in the 3D game as well, and the farther away from the top left of the screen the worse it was.

Edited by Muzzy A

Share this post

Link to post
Share on other sites

I haven't touched the back buffer in this, no need to =S. I just init direct X with no special flags, I did everything as basic as possible.

// This is the only time I ever touch the  back buffer.
d3dpp.BackBufferWidth = WindowWidth;
d3dpp.BackBufferHeight = WindowHeight;


 Wait that actuall makes sense now, i set the back buffer size to the same as the window. But the RECT inside the window where the backbuffer gets displayed is scaled down a bit do to the menu and borders... Am I correct?




    I applied the offset to the backbuffer width and height and now it's perfect. Thanks Zaoshi you were right.

Edited by Muzzy A

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this