Deano Calver
Newcomer
I've had a tiring week of conferences and meetings. The only ones I can discuss was the 6800 Leagues conference NVIDIA held on Monday and Tuesday down in London.
1.5 half days of NVIDIA and MS (PC DirectX stuff). It wasn't quite as busy as it might have been, but that was because they weren't giving free cards out (whenever IHV give cards out at conferences, attendence doubles ;-) ). Instead they were showing how far ahead NV40 is. ATI fans might not like it but NV40 is a generation ahead of R420 in features, there are a whole set of exiting techniques and optimisation possible on NV40 and other SM3.0+ cards that they had a lot of features.
The first talk was on sales, pointing out that they reckon the high end PC sales is a growing market that will take the edge off next gen console sales. Not sure I agree as they would say that (not involved with any consoles, make sense to hype the PC games market). Also had some interesting figures about market share etc. But even taking some of the 'gloss' and bias off it, it does point to a good healthy PC game market over the next couple of years.
There were overviews on what NV40 can do (I'm sure everybody knows but a recap including SM3.0, FP16 blending and filtering, 16 pipes, etc.) and how to get at it (Dx9.0c). Tools like FX Composer (NVIDIA effect editor), support for the DX Standard Sementics and Annatation in effect files, OGL extensions etc.
Crytek and Epic were both there showing off Farcry and Unreal 3 on the NV40, some cool demo's with Crytek going into detail on what they did to use SM3.0. Interesting they were very honest (given they were at a NVIDIA sponsored event) with the problems encountered, subtle problems like pixel shader not having a constant index register (which stopped them implementing there intended PS 3.0 lighting model) and stencil/single-pass lighting problems.
Epic's stuff looked lovely, The graphics were nice but to be honest we have similar tech in house for the visuals so that didn't make my jaw drop too much, the editor did however. The editor looks awesome, I've use Unreal 2 editor about 18 months ago and it was pretty nice then, this latest edition looks awesome. We've putting alot of man power on getting our in house editor upto speed, seeing what Epic have done is raising the bar even further. The integration with the physics was really nice too, they can setup blocks, make arms breakable, etc. all in real time in the editor. Also a simple visual script editor for non technical designers was nice (our designer have been asking for a similar thing for ages...).
Everybody was doing HDR, which the FP16 blending help alot with (at least in PC space). Bit old hat for me (we've been doing 'proper' HDR for quite a while). Phil Scott showed a really nice PS 3.0 soft shadow map techniques, it using branching to do extra shadow map samples in the umbra. As NVIDIA support hardware shadowing map, the demo Phil showed was doing 64 depth samples and looked very nice.
Some interesting discussion from NVIDIA and MS about where we are going. Math ops are going up fast, wheras memory bandwidth isn't, seems universally true that everbody is saying shader ops are the future. Hence procedural and compressed data being the way forward. IEEE maths is the standard going forward, both MS and ATI are saying the same thing for the future and NVIDIA is already there (NV40 already is).
Mark Harris has some amazing GPGPU demo's, doing physics in pixel shader for some lovely visuals. A chemical diffusion model did some nice bateria like models, but the best (IMHO) were the particle and fluid demos, with collision with a height field and velocity etc all done on the GPU that showed 250,000 particles flying around (they mentioned a simplier 1,000,000 particle demo but didn't show it). Mark had also written a n-body solver, 4096 particles gravtionally attracted to each other. Showed it 'exploding' like some 1970's scifi explosion (think original death star blowing up planet effect). As a brute force test (no clever-ness, each particle however far away exerted a force on every other one) used about 10 GFLOP (FP16) per second.
Another lovely demo, Mark had was a Navior-Stokes solver with vortices. Different coloured ink-jets are injected into the area and intersect and move around very realisticly, your mouse can 'stir' the liquid. I couldn't help thinking it would make a great backdrop/desktop toy for windows, as you move the mouse the colours would stir... Was really pretty, going forward there should be no excuses for bad water simulations (I did alot of water racing games in my distant past and all the nice effects were really expensive, seeing what doingable now makes me happy).
MS also did some talks about Longhorn and WGF. As far as I can tell Windows Graphics Foundation is the API formally known as DirectX, as its now the heart of the OS they felt it needed a boring corporate name ;-) Virtualision of everything, command buffer scheuduling, high performace, low crashability, high security etc. They are trying to remove all CAPS bits in future.
On a less serious note, NVIDIA throw a fairly good party, provided plenty of beer and 'eye candy', they had a couple of Nalu walking around (body painted twins on stilts) and had a firebreathing act. I think I avoiding any embaressing photo's this time
I probably forgetten something but I've absorbed an amazing amount of info this week (most is NDA'ed), so I'm being careful not to slip up as the line between NDA'ed and public info can be fairly fine (of course sometimes its obvious )
Personally I think NV40 rocks, there is going to be alot of SM 3.0 hardware coming in the next 12-18 months, NV40 has put the flag in the map so we start using it.
Now all I need is one of the SLI systems to try some of these ideas I've got floating around my empty skull ;-) I'm mainly using refrast for SM 3.0 exploration (we have an NV40 at work but haven't had a chance).
On a slightly different topic, I've completed (bar some last minute edits) two articles for ShaderX3, I was also a section editor this time around which has kept me busy. I've done another deferred lighting peice using PS 3.0 to go a bit further than the one here and a really cool topology and vertex map one. The toplogy map stuff uses vertex texturing to allow topology access (i.e. surfaces, calculating vertex normals, etc.), really excited about it. The article just scratches the surface but I've already sketched out ideas using it for skinning 100's of character and calculating silhuette edges on the GPU efficently.
I've probably see about posting the articles up here (assuming legal's o.k.)
1.5 half days of NVIDIA and MS (PC DirectX stuff). It wasn't quite as busy as it might have been, but that was because they weren't giving free cards out (whenever IHV give cards out at conferences, attendence doubles ;-) ). Instead they were showing how far ahead NV40 is. ATI fans might not like it but NV40 is a generation ahead of R420 in features, there are a whole set of exiting techniques and optimisation possible on NV40 and other SM3.0+ cards that they had a lot of features.
The first talk was on sales, pointing out that they reckon the high end PC sales is a growing market that will take the edge off next gen console sales. Not sure I agree as they would say that (not involved with any consoles, make sense to hype the PC games market). Also had some interesting figures about market share etc. But even taking some of the 'gloss' and bias off it, it does point to a good healthy PC game market over the next couple of years.
There were overviews on what NV40 can do (I'm sure everybody knows but a recap including SM3.0, FP16 blending and filtering, 16 pipes, etc.) and how to get at it (Dx9.0c). Tools like FX Composer (NVIDIA effect editor), support for the DX Standard Sementics and Annatation in effect files, OGL extensions etc.
Crytek and Epic were both there showing off Farcry and Unreal 3 on the NV40, some cool demo's with Crytek going into detail on what they did to use SM3.0. Interesting they were very honest (given they were at a NVIDIA sponsored event) with the problems encountered, subtle problems like pixel shader not having a constant index register (which stopped them implementing there intended PS 3.0 lighting model) and stencil/single-pass lighting problems.
Epic's stuff looked lovely, The graphics were nice but to be honest we have similar tech in house for the visuals so that didn't make my jaw drop too much, the editor did however. The editor looks awesome, I've use Unreal 2 editor about 18 months ago and it was pretty nice then, this latest edition looks awesome. We've putting alot of man power on getting our in house editor upto speed, seeing what Epic have done is raising the bar even further. The integration with the physics was really nice too, they can setup blocks, make arms breakable, etc. all in real time in the editor. Also a simple visual script editor for non technical designers was nice (our designer have been asking for a similar thing for ages...).
Everybody was doing HDR, which the FP16 blending help alot with (at least in PC space). Bit old hat for me (we've been doing 'proper' HDR for quite a while). Phil Scott showed a really nice PS 3.0 soft shadow map techniques, it using branching to do extra shadow map samples in the umbra. As NVIDIA support hardware shadowing map, the demo Phil showed was doing 64 depth samples and looked very nice.
Some interesting discussion from NVIDIA and MS about where we are going. Math ops are going up fast, wheras memory bandwidth isn't, seems universally true that everbody is saying shader ops are the future. Hence procedural and compressed data being the way forward. IEEE maths is the standard going forward, both MS and ATI are saying the same thing for the future and NVIDIA is already there (NV40 already is).
Mark Harris has some amazing GPGPU demo's, doing physics in pixel shader for some lovely visuals. A chemical diffusion model did some nice bateria like models, but the best (IMHO) were the particle and fluid demos, with collision with a height field and velocity etc all done on the GPU that showed 250,000 particles flying around (they mentioned a simplier 1,000,000 particle demo but didn't show it). Mark had also written a n-body solver, 4096 particles gravtionally attracted to each other. Showed it 'exploding' like some 1970's scifi explosion (think original death star blowing up planet effect). As a brute force test (no clever-ness, each particle however far away exerted a force on every other one) used about 10 GFLOP (FP16) per second.
Another lovely demo, Mark had was a Navior-Stokes solver with vortices. Different coloured ink-jets are injected into the area and intersect and move around very realisticly, your mouse can 'stir' the liquid. I couldn't help thinking it would make a great backdrop/desktop toy for windows, as you move the mouse the colours would stir... Was really pretty, going forward there should be no excuses for bad water simulations (I did alot of water racing games in my distant past and all the nice effects were really expensive, seeing what doingable now makes me happy).
MS also did some talks about Longhorn and WGF. As far as I can tell Windows Graphics Foundation is the API formally known as DirectX, as its now the heart of the OS they felt it needed a boring corporate name ;-) Virtualision of everything, command buffer scheuduling, high performace, low crashability, high security etc. They are trying to remove all CAPS bits in future.
On a less serious note, NVIDIA throw a fairly good party, provided plenty of beer and 'eye candy', they had a couple of Nalu walking around (body painted twins on stilts) and had a firebreathing act. I think I avoiding any embaressing photo's this time
I probably forgetten something but I've absorbed an amazing amount of info this week (most is NDA'ed), so I'm being careful not to slip up as the line between NDA'ed and public info can be fairly fine (of course sometimes its obvious )
Personally I think NV40 rocks, there is going to be alot of SM 3.0 hardware coming in the next 12-18 months, NV40 has put the flag in the map so we start using it.
Now all I need is one of the SLI systems to try some of these ideas I've got floating around my empty skull ;-) I'm mainly using refrast for SM 3.0 exploration (we have an NV40 at work but haven't had a chance).
On a slightly different topic, I've completed (bar some last minute edits) two articles for ShaderX3, I was also a section editor this time around which has kept me busy. I've done another deferred lighting peice using PS 3.0 to go a bit further than the one here and a really cool topology and vertex map one. The toplogy map stuff uses vertex texturing to allow topology access (i.e. surfaces, calculating vertex normals, etc.), really excited about it. The article just scratches the surface but I've already sketched out ideas using it for skinning 100's of character and calculating silhuette edges on the GPU efficently.
I've probably see about posting the articles up here (assuming legal's o.k.)