Presenting BackBuffer using XP vs. Vista
  Home FAQ Contact Sign in
microsoft.public.win32.programmer.directx.graphics only
 
Advanced search
POPULAR GROUPS

more...

microsoft ... graphics Profile…
 Up
Presenting BackBuffer using XP vs. Vista         


Author: Robert Fiegender
Date: Sep 6, 2008 04:47

When presenting a back buffer of a certain resolution (say 1024x768) to the
screen (e.g. 1600x1200), XP always seems to do this using a linear filter.
Meanwhile with Vista, a point filter is applied leading to poor results.
This applies to both NVidia and ATI cards with different driver version.
What can be done about that? Can the filtering done during Present() be
controlled somehow?

Thank you very much
Robert
4 Comments
Re: Presenting BackBuffer using XP vs. Vista         


Author: Robert Fiegender
Date: Sep 6, 2008 06:00

Addition: For several reasons, I have to work in windowed mode (as "false
fullscreen" mode).
no comments
Re: Presenting BackBuffer using XP vs. Vista         


Author: RobertFiegender
Date: Sep 6, 2008 07:11

To be a bit more precise:

The DirectX SDK Documentation says:

-----
IDirect3DDevice9::Present
...
If necessary, a stretch operation is applied to transfer the pixels within
the source rectangle to the destination rectangle in the client area of the
target window.
-----

What filter is applied for that stretch operation, and can it be controlled
by the app?

Thank you again!
Robert
no comments
Re: Presenting BackBuffer using XP vs. Vista         


Author: Clint Eastwood
Date: Sep 7, 2008 21:10

> What filter is applied for that stretch operation, and can it be controlled
> by the app?

I have also observed that linear interpolation is perfomed in this
case, and I am not aware of any way to control this directly.
However, it can easily be avoided by simply rendering into a
rendertarget that is the same size as your window, and then selecting
whatever interpolation type (point or linear) that is appropriate.
This may mean an additional render pass than what you currently have,
but that's essentially what used to be happening on XP anyway.

--Matt
no comments
Re: Presenting BackBuffer using XP vs. Vista         


Author: Robert Fiegender
Date: Sep 8, 2008 05:30

> However, it can easily be avoided by simply rendering into a
> rendertarget that is the same size as your window, and then selecting
> whatever interpolation type (point or linear) that is appropriate.

Thank you, I have implemented it like that and it works as expected.
no comments

RELATED THREADS
SubjectArticles qty Group
ANN: Windows Vista SP1 IS On Microsoft Windows Vista Connect, Just FYI.microsoft.public.windows.vista.general ·