Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!

1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!


Member Since 29 Jul 2001
Offline Last Active Yesterday, 11:39 PM

#5220542 What will happen with OpenGL after Vulkan?

Posted by Promit on 31 March 2015 - 12:56 PM

Public statements by Khronos so far indicate that OpenGL development will continue. There is a lot of momentum in GL, which is what screwed previous attempts to revise it. This time, they are offering both.

Personally I despise GL. It's horrible to work in. So I am chomping at the bit to change over.

#5220013 No matching overloaded function found: mix

Posted by Promit on 29 March 2015 - 01:23 PM

Looking at the docs, I don't think mix is defined for matrix interpolation at all. You might want to write up a custom function for it.

#5219457 Direct3D 12 documentation is now public

Posted by Promit on 26 March 2015 - 03:57 PM

I would not be surprised if MS decided to roundhouse kick the reference driver...

Don't know - the reference driver may be more useful on the driver side. Remember it's a reference, not a generic soft rast. It exists to be a stable basis of comparison.

#5219384 SLI with an advanced OpenGL game?

Posted by Promit on 26 March 2015 - 12:13 PM

Heh, yeah. Doing SLI or Crossfire on your own is a nightmare. The GL API doesn't help at all.

Here's the situation: you cannot debug it. Some of NVIDIA's performance tools (NSight) might help but sometimes these things blow up or fail to give productive results in GL. Basically, something in your code is shutting off SLI or breaking it. It might be a bad Map or BufferData. It might be an extension that isn't supported.

The way to find it is to throw an FPS counter in, and then shut off the entire pipeline. Then start bringing phases of the render back in, until you find which piece breaks the speed up. It's going to be boring and time consuming, and the offending call may not make any sense when looking from outside the driver. Good luck.

#5219237 Direct3D 12 documentation is now public

Posted by Promit on 26 March 2015 - 12:11 AM

Have fun!



P.S. Yes, SlimDX will be supporting D3D 12. We're going to build a modern version of the library that is streamlined to 12 + utilities/math only, and supporting all Win10/D3D 12 hardware platforms. It will be slick.

#5218941 should i learn how to work with a 3d modelling software?

Posted by Promit on 24 March 2015 - 06:25 PM

You don't need to master 3d art creation. You SHOULD learn to do it. It's part of the process, and it's myopic to imagine a game as a program blindly consuming art assets that appeared by magic. Understanding what is involved will give you greater perspective on how to design for it, what issues can be created or fixed by engine design decisions, and what possibilities there are for inputs to your game code. It's also quite useful to be able to create your own test assets that are built a particular way, especially when you and the artist aren't getting tools and game to match properly.

#5218936 Any good cross platform C++ scheduler libraries?

Posted by Promit on 24 March 2015 - 06:15 PM

I need something like this too, but with mobile support (iOS at least). TBB unfortunately doesn't have official IOS support and I am wary of random ports. I looked at libdispatch last year, which isn't exactly a task system but includes enough of the right ingredients to finish the job. I should check and see how their various OS ports are doing.

#5218531 Efficient way to check which lights belong to which meshes?

Posted by Promit on 23 March 2015 - 12:01 PM

Twenty lights and a couple hundred objects? Brute force sphere-sphere testing should be nearly instant in this case. You're doing something wrong there.

#5218477 what do you use to document your c++ code?

Posted by Promit on 23 March 2015 - 09:33 AM

I've usually used Doxygen in my own projects... but, on every professional game team that I've ever worked on, there's been usually no code documentation... and it's often not that bad!
Sometimes wikis are used, but they often become outdated, and wrong/outdated documentation is worse than none. Same goes for doxygen/etc comments...

Yep, same here. There's usually a wiki that drifts, and really only exists for the new hires to get some clue of how things were set up originally. After that, it's all about learning your way around the system.


Different for actual engines in regular use across wide groups of people, though, or other middleware projects. You don't get to skimp on the documentation there... for SlimDX we used the built in VS doc system but through Sandcastle with a custom front end bolted on. For pure C++ I'd just use Doxygen, but I'd only bother for public APIs.

#5217467 Using csharp and directx i'm getting devicelost exception. How can i solv...

Posted by Promit on 18 March 2015 - 04:55 PM

Device Lost scenarios are well known phenomena in Direct3D 9. They generally occur when you lose exclusive access to a device, such as Alt+Tabbing out of full screen. If you're developing a D3D9 application, you need to specifically handle these cases by releasing resources, testing whether you have device access, and when you get it back resetting the device and reloading all GPU resources. If you want to go down this path, search around in the documentation for the proper way to handle device loss.


That process is at least as annoying as it sounds; you should consider whether you actually *need* Direct3D 9 support. You can support the same classes of hardware with the much newer Direct3D 11 API, which does not require handling of device loss and reset. The downside is that D3D11 is not supported on Windows XP, but since that OS is almost completely dead at this point, that's probably not a huge loss for you.



In WDDM systems (Vista+), a device lost can only be generated when the device driver crashes or the GPU resets. The OP mentioned using a six year old graphics driver. OTOH, VS 2012. Something's not right...

#5216762 When to release?

Posted by Promit on 15 March 2015 - 08:54 PM

What exactly is your goal here? What do you hope to gain from releasing it? 

#5216712 How to limit FPS (without vsync)?

Posted by Promit on 15 March 2015 - 03:16 PM

This previous thread on the subject may be useful: http://www.gamedev.net/topic/665939-how-to-limit-your-fps/

#5216639 Visual studio 2013 and DirectX.

Posted by Promit on 15 March 2015 - 10:04 AM

You don't need to do anything for C++, as DirectX is now part of the core Windows SDK (which ships with VS). Just #include <d3d11.h> and go. For .NET based languages you will need a wrapper such as SlimDX or SharpDX.

#5215981 When will the new API-Vulkan, from Khronos Group?

Posted by Promit on 11 March 2015 - 11:05 PM

Please see this thread for Vulkan discussion: http://www.gamedev.net/topic/666286-vulkan-is-next-gen-opengl/

#5215958 "Efficient Rendering with DirectX 12 on Intel Graphics"

Posted by Promit on 11 March 2015 - 08:04 PM

Haaaave fun...