Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 02 Apr 2012
Offline Last Active Nov 24 2015 02:41 PM

Topics I've Started

GPU video decoder

11 November 2015 - 10:16 AM



I need to decompress several videos in parallel for in-game content. Preferable the input format should be as compressed as possible while the decompression process doesn't consume too much processing power. So using the GPU seems like a good idea. This need to run on all vendors of PC and XB1. So I don't want to use any Nvidia or ATI specific solution. It also need to support DX12 so I can't use Media Foundation or any closed source API that is based on DX11.


Does anyone know of some open source project or demo/sample I could look into? Preferably I would like something that works straight out of the box or some code that's well contained enough so that it's easy to port to DX12. Big plus as well if it comes with no fees for commercial use.




The best method to use for reflection on ocean waves

08 September 2013 - 11:35 AM


I'm looking for a method to render reflections in ocean waves. The scene in question contains several meter high waves near a coastal harbor. Different kinds of objects are floating in the water. So I want these dynamic objects as well as the surrounding static geometric to reflect in a convincing manner. The reflection is rather distorted by ripples so some degree of inaccuracy can be accepted. Does anybody know of a good method to use for this?


Atm a variant of planar reflection is used, which looks acceptable when the waves are small to medium sized but when they're getting larger all sorts of artifacts appears. The method can't be too expensive to compute either or I won't be able to use it.



Thanks :-)

Dark particles almost disappear in game

07 May 2013 - 04:17 AM


I’m having this problem with transparency on particles that I can’t really get my head around. It appears that bright alpha blended particles show up much more pronounced in game than dark ones. I hacked the pixel shader so that I could toggle the output RGB from darkest (0.0f) to brightest (1.0f), with alpha value identical. I would have expect both to contribute approximately the same, maybe appear a little different dependent on the background but as you can see the dark particles almost disappear:




Does anybody know why this might be happening? The platform I'm running on is PC, Directx11. I took a look in some profiling tools the black smoke are written to the colour buffer with the format DXGI_FORMAT_R16G16B16A16_FLOAT. The blend settings are:



            BlendEnable           1

            SrcBlend   D3D11_BLEND_SRC_ALPHA

            DestBlend                D3D11_BLEND_INV_SRC_ALPHA

            BlendOp   D3D11_BLEND_OP_ADD

            SrcBlendAlpha       D3D11_BLEND_SRC_ALPHA

            DestBlendAlpha    D3D11_BLEND_INV_SRC_ALPHA

            BlendOpAlpha       D3D11_BLEND_OP_ADD

            RenderTargetWriteMask  D3D11_COLOR_WRITE_ENABLE_ALL


I tried with a few different blend settings with no improvement. I tried pre-multiplied alpha as well. Each particle is setup to have a small alpha value if I crank it up the dark particles appear more but that makes the bright particles over-saturated. I need to have dynamically both bright and dark particles from the same emitter as I'm applying lighting to the particles. Has anybody come across this problem before?





Is it possible to overload the ID3D11Device?

19 September 2012 - 08:55 AM

Is it possible to overload the ID3D11Device in DirectX 11? I want the device to behave exactly like normal except for when resources are created in debug mode. Then I want to attach a memory tracking interface through the SetPrivateData functionality. When it comes to the code I manage by myself a wrapper object around the device would probably be all fine. However I would also like to be able to track allocations when the device gets passed to third party libraries. I created a very simple test environment with my custom device inheriting from ID3D11Device. But D3D11CreateDeviceAndSwapChain takes a double pointer to a ID3D11Device so I’m not sure it will be possible this way? Does anybody know how I can make this or is it just simply impossible?


Is it possible to obtain what flags a shader was created with?

27 July 2012 - 04:50 AM

In the situation where you're having compiled shaders under source control is it possible to write a check-in test that examin what flags the shaders been built with. Most common you want to see that no debug shaders get checked-in.

So what I want to know -Is it possible to obtain infromation of what flags a particular shader been built with?

Cheers :-)