DirectX 12: The future of it within the console gaming space (specifically the XB1)

I'm not quite understanding the multithreaded draw calls exactly; if you could assist in a high level version of this. If in my basic render() function I normally have:
background->render();
trees->render();
enemies->render();
explosions->render();
particles->render();
players->render();
gui.render();

Then with DX11 multithreaded, from high level perspective
renderController()->dispatch.immediate(background);
renderController()->dispatch.immediate(trees);
renderController()->dispatch.immediate(enemies);
renderController()->dispatch.secondary(particles);
renderController()->dispatch.secondary(explosions);
renderController()->dispatch.immediate(players);

and basically the renderController is relieving the main thread so that other cores can pick up some of the work load if the number of objects that need to be rendered start to go really high; is this what DX11 multi-threading is attempting to resolve?

Yeah, that's the basic idea. You would split your rendering into "batches" of things that need to be submitted contiguously, and each batch would use its own deferred context on a separate thread. Then at the very end you would submit your deferred contexts on the immediate context in whatever order you want them drawn.
 
Yeah, that's the basic idea. You would split your rendering into "batches" of things that need to be submitted contiguously, and each batch would use its own deferred context on a separate thread. Then at the very end you would submit your deferred contexts on the immediate context in whatever order you want them drawn.

thanks MJP!

It does seem extremely likely then that DX12 will improve on this - with both mobile and X1 being advertised on the page. The technique should assist CPUs with low frequency and lots of available cores (mobile, tablet, and the consoles), and to a degree AMD CPUs which have been generally weaker in single threaded performance vs Intel.

At worse, even for high end PC enthusiasts, if implemented well, it should smooth out some of the frame dips that can occur in situations where a lot of things are happening. It can bring new life to some aging CPUs and perhaps we no longer need an expensive CPU to move the bottleneck entirely to the GPU.
 
Fingers crossed, hopefully we'll get a lot more detail in 3 days.

Indeed. And I'd like to know a bit more about this one.

Tuesday @ GDC
Practical Techniques for Ray Tracing in Games (Presented by Imagination Technologies)
http://schedule.gdconf.com/session-id/828113

Ray tracing has, for many years, been the gold standard of visual realism in 3D rendering. Thanks to advances in modern graphics hardware, ray tracing is now a feasible technique for use in games. This presentation will describe how ray tracing has been successfully integrated into the Unity engine and combined with traditional rasterized 3D graphics.Accurate shadow rendering is a key component of visual realism. Ray traced shadows can provide good performance, accurate penumbra, and they avoid some of the artifacts and pitfalls of shadow maps and shadow volumes.Reflections are an obvious application for ray tracing in games. Reflections and refractions off irregularly shaped objects can add an element of realism that is difficult to achieve any other way.This session will cover the technical details of how these effects are blended into the Unity engine's rendering pipeline without sacrificing real time frame rate.

Attendees will gain an understanding of how ray tracing can be used to enhance their current-generation game engines in a meaningful way. They will also develop an understanding of which effects are possible for which levels of ray tracing performance.

I'm not sure how to take this one, but with MS dropping awkward tweets like this one: https://twitter.com/XboxP3/status/439673026699751425

And the ties in for Unity and ID@Xbox and this topic of DX12 could be a great generation of indies coming up. I'm backing quite a few Unity based games (Project Eternity, Planescape etc) so definitely it's lending more strength to games like that; It's pretty exciting. I've personally found Unity to be a bit heavy for mobile games, but for this topic on consoles I think it's a fairly fitting engine with some pretty great features for it's price point.
 
I'm not sure how to take this one, but with MS dropping awkward tweets like this one: https://twitter.com/XboxP3/status/439673026699751425
I don't see the relevance. A Ray Tracing talk from a company that provides raytracing hardware makes sense - they want people using the techniques that they're hardware can help accelerate, and which they've spent time researching where perhaps other IHVs haven't. The tweet is about RT in the cloud which has nothing to do with DX or XB1. You could have, for example, a game with backgrounds raytraced and streamed as a video feed into a game.

An RT pipeline in DX12 may be on the cards, but I don't see evidence pointing to that. RT is a constant presence in the realtime graphics world, with discussions every now and then.
 
I dont see ray tracing being used in gaming for quite some time. I know back when John Carmack was still with Id he mentioned something about idtech 6 using a combo of raytracing and rasterizing but he said the hardware that would be needed to do this hasnt been invented yet.
 
I don't see the relevance. A Ray Tracing talk from a company that provides raytracing hardware makes sense - they want people using the techniques that they're hardware can help accelerate, and which they've spent time researching where perhaps other IHVs haven't. The tweet is about RT in the cloud which has nothing to do with DX or XB1. You could have, for example, a game with backgrounds raytraced and streamed as a video feed into a game.

An RT pipeline in DX12 may be on the cards, but I don't see evidence pointing to that. RT is a constant presence in the realtime graphics world, with discussions every now and then.

Yea I'm definitely looking at it from a game art perspective as opposed to attempting to reach photorealism.

I should amend what I wrote, I didn't mean to imply that ray tracing and cloud was a thing - I was actually thinking the tweet was in response to ray tracing and its possible implementation into Unity Engine.

What got me, and you pointed it out perfectly was that the lecture and also a second GDC lecture from PowerVR both indicated that there was hardware available for real time RT. But like you I don't see any evidence supporting that in this generation or next. It's a big stretch and not one I'm willing to chase when we can wait 3 days and get a definitive answer.

Am definitely excited for Unity though.
 
I don't see any evidence supporting that in this generation or next.
Uhm. Imagination already has RT hardware available (Carmack's comment is inaccurate but fun to read regardless).
http://arstechnica.com/gadgets/2013...t-on-imaginations-real-time-ray-tracing-card/

So, yeah, no evidence for sure. ;)

But putting my jerkiness aside - I have no idea why you've decided to merge Spencer's comments with the announcement of Imagination's presentation. These seem to be two completely separate things.
 
Uhm. Imagination already has RT hardware available (Carmack's comment is inaccurate but fun to read regardless).
http://arstechnica.com/gadgets/2013...t-on-imaginations-real-time-ray-tracing-card/

So, yeah, no evidence for sure. ;)

But putting my jerkiness aside - I have no idea why you've decided to merge Spencer's comments with the announcement of Imagination's presentation. These seem to be two completely separate things.

lol right my bad, I'm not sure why I did that. Logic has clearly evaded me lol. It was funny too because I recall reading about the PowerVR presentation, but it was specific to PowerVR commercial so immediately discounted the possibility that it could be in consumer grade hardware for us in the next coming generation. The presentation about RT additions into Unity hinted at hardware that looked readily available soon/now, so that's where I was a little lost.

As for Spencer's comments, eh, I was all over the place there, looking back I should have made a more concise point before I wrote something, I was basically talking out loud there, big mistake, tends to confuse people even myself. The tldr, I thought Spencer's tweet was about the RT work at Unity, and not what they were working on at MS; learning about the RT features demo with Unity @ GDC. Likely that is wrong, but it was what I was thinking out loud at the time, and then writing it out... oh so bad...

2 more days ;-) I'll wait till I read something concrete, you guys have me blushing/embarrassed for not keeping my thoughts in order, rightly so I deserve it.

edit: Let me just reiterate how absolutely and undeniably wrong I was, and how undeniably right you were Dominik ;)
"The real-time lightmap previews will tap Imagination Technologies’ PowerVR Ray Tracing technology"
http://venturebeat.com/2014/03/17/u...to-make-thousands-of-3d-games-more-realistic/
 
Last edited by a moderator:
I know back when John Carmack was still with Id he mentioned something about idtech 6 using a combo of raytracing and rasterizing but he said the hardware that would be needed to do this hasnt been invented yet.
Carmack has been mainly discussing ray tracing SVOs (sparse voxel octrees), while PowerVR hardware supposedly ray traces triangles. I don't think the PowerVR hardware could be used to ray trace voxel data structures (as the algorithms would be completely different to ray tracing triangles).
 
Carmack has been mainly discussing ray tracing SVOs (sparse voxel octrees), while PowerVR hardware supposedly ray traces triangles. I don't think the PowerVR hardware could be used to ray trace voxel data structures (as the algorithms would be completely different to ray tracing triangles).

Would they really be completely different though ?
 
Would they really be completely different though ?
Yes, not completely different. You can accelerate both with BVHs, etc, and you can combine them together (use BHV and change precise test algorithm based on the style of geometry the ray is currently passing through). Precise test however (ray-voxel and ray-triangle) is however quite different (but if programmable shader units are used, obviously both can be done using the same hardware).
 


Interesting article, I especially like the writer's interpretation:

the addition of DirectX 12 is unlikely to have a dramatic effect on game visuals

So I guess the guys are Total Xbox aren't expecting anything amazing to come out of it. I imagine the presentation will be worth a watch though.
 
Low level API basically.

zxv5NY4.jpg
 
Back
Top