Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 12 Apr 2010
Offline Last Active Today, 02:42 AM

Topics I've Started

Debug graphics with VS2013. Error on launch.

19 December 2014 - 03:56 AM



I'm trying to create some simple project - just render a quad. I made something wrong and I can't see an output. I want to use Graphics Debugger, but on launch I have an error

No such interface supported


on creating swap chain with CreateSwapChainForHwnd. Using debug or release configuration is fine - everything creates and I see back buffer clear color on render. This problem occurs only when I'm starting graphics debug.

Creating a game launcher.

24 November 2014 - 08:02 AM

Greetings dear community.


Although my question is not 100% game related, I didn't find the better place to put my topic.


I need to create a launcher for our game. This will be online game and I need a way to easily update it. Also launcher itself should be easily updateable. I mostly interested in high level architecture, i.e. how thing works at all. Our game will be cross platform, but for now I'm trying to do it for Windows (Win7). There's very little info in the web, so I don't know what is the "industry standard". I investigated how major launcher/programs work, and here's a quick description:


1. Launching Battle.net launches 2 exes - Battle.net.exe and Agent.exe. I suppose that Battle.net.exe is user interface exe and Agent.exe always runs in background. This Agent.exe can be found in C:\ProgramData\Battle.net\Agent\... folder. But what is this Agent.exe for? Why it's in ProgramData folder? Who starts who - agent starts launcher or other way? What I like about Blizzard's work - I don't have any system dialogs while run a program, like dialog asking to run as administrator.


2. Steam is seems only one process in task manager. When it's time to update, who updates exe? As far as I know the program can't update itself (at least on windows - you can't replace running exe).


Thank you.

OMSetRenderTargets is very slow on my machine.

21 November 2014 - 04:53 AM



I have a very simple application - just a triangle. And I'm experiencing a performance problem I have a strange execution time for rendering. Sometimes it takes 33ms and sometimes 16ms. Looks like 30 and 60 fps. I narrowed problem a found that only OMSetRenderTargets method takes so much time.


This code causes problems:

chrono::high_resolution_clock::time_point t1 = chrono::high_resolution_clock::now();

// set targets and states
context->OMSetRenderTargets(1, ppRenderTargetViews, pDepthStencilView);

chrono::high_resolution_clock::time_point t2 = chrono::high_resolution_clock::now();
auto duration = chrono::duration_cast<chrono::milliseconds>(t2 - t1).count();

Get error description from HRESULT

14 November 2014 - 11:23 AM



I'm trying to get error string, but without success. I've read this blog http://blogs.msdn.com/b/chuckw/archive/2012/04/24/where-s-dxerr-lib.aspx and tried their dxerr files, but it gives me wrong description and name. I also tried Error Lookup tool in visual studio, but it can't find errors. In vs output I can see correct description but how can I get the same?

How back buffer fills a window?

31 October 2014 - 03:33 AM


I'm wonder how back buffer fills the screen? For example, when clearing a back buffer with ID3D11DeviceContext::ClearRenderTargetView entire window clears. Another example - I have a window 100x100. I set a back buffer with size 100x100. Next I resize my window to 200x200 and what happens? The texture will automatically resize and I'll get magnification artifacts? And why to specify back buffer size if it's always fill a window?