Jump to content

  • Log In with Google      Sign In   
  • Create Account

Awesome job so far everyone! Please give us your feedback on how our article efforts are going. We still need more finished articles for our May contest theme: Remake the Classics

fanaticlatic

Member Since 23 Mar 2007
Online Last Active Today, 02:25 AM
-----

Posts I've Made

In Topic: Single Frame Multiple Monitor rendering

08 May 2013 - 08:19 AM

Solved: Turns out it was a driver issue! updated to the latest AMD Catalyst driver for my 3450 card and hey presto it works.


In Topic: Multithreaded renderer (with multiple devices)

31 January 2013 - 08:44 AM

directx will only vsync in fullscreen exclusive mode. So your windowed mode must be false for all your swapchains. Search fullscreen exclusive mode on MSDN should take you through it step by step.

 

Good luck.


In Topic: Graphical Tearing under rotation

17 December 2012 - 09:37 AM

I believe we have a fix for this issue.

It seems there is a blocking call in the engine code that was handled without issue on the original higher spec'd pc but creates a stutter on the test pc. It's this stutter over multiple frames that seems to cause the tearing on our wheel.

Thanks for the help everyone.

In Topic: Graphical Tearing under rotation

11 December 2012 - 08:39 AM

I've noticed if you try for 60hz your delta time between frames is not always EXACTLY 0.016666666667f (many times not even within an epsilon of it), which isn't surprising as Windows makes no claim to be a real-time operating system.

One suggestion is to rotate the wheel by a number of degrees (or radians) that accounts for the delta time between this frame and last frame (i.e. multiply your rotation strength by delta time).

Yes the windows timings will be out possibly by quite a margin as you say, but when you think about it that would make sense hence why I should be receiving a v-sync message that will cause the graphics system to flip its buffers so the actual frame timings shouldn't affect it. Your suggestion about updating the wheel based on time (which is how it should have been done in the first place to be honest!) is a good one, and something I shall be implementing on the next test. Thanks for the help.


The control panel for your graphics cards is probably set to override v-sync.  Check it.
You can also print the FPS easily enough to the console once every second.  That would be an easy way to determine what is happening.


L. Spiro

Yes the v-sync being overridden was one of my first thoughts and unfortunately that does not seem to be the case, at least I couldn't find any setting that might affect it. I did try a couple of tests with forced triple buffering, anisotropic filtering turned on and off etc. all to no avail. I should say the system only has the onboard graphics, hence why the only thing on screen pretty much is a textured quad that is being rotated. As for the FPS, our engine has the ability to display the FPS but perhaps that is giving me some false positives. I shall try forcing the FPS overlay of the directx device on it. I think that still works even using the release directx libraries.


Thanks for your thoughts folks.

Mark.

In Topic: DirectX functionality similiar to wglShareLists in Opengl

10 October 2012 - 08:39 AM

Why exactly do you want the earliest SDK that supports it?


I want to prevent migrating too far away from the February 2005 sdk that I am currently using if at all possible. As it could well end up a series of retrospective fixes to patch up the current engine to the potentially more recent directx sdk. Basically I would consider a jump to August 2007 sdk less risky than a jump to the latest sdk for example.


I doubt you can share resources between different physical GPUs.. I believe the devices must share the underlying adapter. Please correct me if I'm wrong.

Providing the gpu utilises the same device driver then its possible, this means they have to be from the same family of card so no NVidia/Ati combinations. At least on opengl using wglsharelists. The sharelists basically drops a copy onto each gpu adapters memory so when the RAM copy is changed this is reflected in the GPU copies. Thats my understanding anyway.

PARTNERS