Sign in to follow this  

Can I draw a surface (eg. render target) smaller than it really is?

Recommended Posts

I'm using a DirectX v9.0 wrapper for Delphi called Asphyre v4.0 and you can declare "images" as type "image", "surface", or "draft". If you want to render onto it then you must be declared a "surface". Well, it works all fine and well, but when you go to draw the texture of that surface onto another surface, if you specify a smaller size than the surface it looks like garbage data (eg. data from a random memory buffer). For example: My surface (eg. render target / texture) is 512x512 pixels. My back-buffer is 640x480 pixels. If I draw my surface/render-target/texture onto my back-buffer, I need to draw it at least 512x512 or BIGGER. If I draw it smaller (256x256) then it doesn't work and looks garbled. The strange thing is that if I use a regular "image" then I can draw it any size I want to. For example, if my image is 1152x864 (stored in a 2048x1024 texture) I can draw it at 256x256 if I want to. Are surfaces special or something? As I mentioned, I can render them BIGGER than they really are but I can't render them smaller...

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