• 1/1

Maya 2013 Extension: DX11 in Viewport 2.0 **Available for Download **

Posted by STLR, 25 September 2012 9:40 pm

I had a crazy busy week in the bay area last week.  Over the course of 3 days I met with 4 distinctly unique game developers including:  TakeTwo's 2K Sports, Zynga and Activision's Toys For Bob and Sledgehammer.  Seeing the breadth of titles that these developers have worked on reminded me just how varied the games industry really is.  From 2k12 Basketball, to Call of Duty MW3, to Skylanders, to CityVille.  Each of these titles is a completely different style, with each having a very different look and feel.  But of course they all have one thing in common... they were all created, at least in part, with Maya.


One of the more well recieved new features that I've been promoting recently is the new DX11 support in the latest Maya 2013 Extension release (formlery known as SAP = Subscription Advantage Pack).   The Maya 2013 Extension is now avaialbe to anyone on subscription.  You can download it from the subscription center ->  http://subscription.autodesk.com


Next-Gen Viewport Display and Shading* - Take advantage of Microsoft® DirectX® 11 technology with the new Maya DX11Shader. Offering you real-time, centralized, easy-to-control shader effects such as crack-free tessellation, vector displacement maps, translucence, reflections, and shadows, the DX11Shader is built with a new API (application programming interface) that exposes DirectX 11 natively in Maya with HLSL (High Level Shading Language) support.

DX11 in Viewport 2.0 Overview

Note:  Creature model created by Jesse Sandifer

34 Comments

mayanic

Posted 26 September 2012 11:06 am

hi steve,
how to install the bonus tools with the brand new extensions for maya?

do we need another installer?

hope to hear from you soon . ...

mayanic

s03241

Posted 26 September 2012 11:11 am

Aren't the Pixar OpenSubdiv and the DX11 Viewport 2.0 doing the same thing regarding simulating high poly surface?

I think this kind of rendering is good enough for a lot of situations, but in my dreams there is also a refraction node for the DX11 shader. But that's not possible, ever , I presume?

neofytos

Posted 26 September 2012 11:11 am

Like the previous release (2012 SAP) I think you have to have both 2013 and 2013.5 installed.

cgbegger

Posted 26 September 2012 3:00 pm

2013.5 isn't binary compatible with 2013 so you can't just use the symlink workarounds to install plug-ins for 2013.5 – they need to be updated.

mayanic

Posted 26 September 2012 9:26 pm

guess that's the answer @cgbegger - thanks

vlado has to recompile their plugin as well
http://www.chaosgroup.com/forums/vbulletin/showthread.php?70034-VRay-on-Maya2013-Extension


damn

œstlr: any news about layout tools ^^
br

nickzucc

Posted 26 September 2012 10:37 pm

Is there a trick to get reflections to work? When I hook my map up and turn on the reflection amount the entire object starts to go dark.

I'm also having trouble getting a nice-looking shadow. The DX 11 shadows have a lot of problems with the shadow bias. It doesn't look like I can control the shadow color anymore as well.

What are the plans to get better looking real time shadows inside of Maya?

nickzucc

Posted 27 September 2012 3:29 pm

I haven't spent much time with this revision, but it seems to be HIGHLY unstable. I have to tell you as a subscription user, these updates seem rushed and unstable.

As far as display modes go, we now have regular display, high quality mode, viewport 2.0 and now viewport 2.0 DX11. Each one of these draws and shades object, wires, locators lights ect. differently. Some things work in one mode and not others, and then you throw the Mental Ray and the way things show or render that is different than how Maya shows and renders objects. (Both in viewport and in render view.)

I have been using Maya since version 1 and I am now becoming very confused as to what works in what manner and what viewport/render to use. AUTODESK...clean this mess up ASAP!! Imagine trying to teach someone that is new to Maya and trying to explain this mess in a manner that actually makes sense. It really isn't possible anymore because things currently don't make logical sense as to why something does/doesn't work at times.

Furthermore, every time there is an update we have to fully uninstall Maya, install and then license the new version. This is a rather time consuming process. Switching from a float license to a stand alone also requires a full uninstall and re-install, this is a horrible process when you are using the creation suite. (It is a LOT of data to uninstall and reinstall...just to license your software that you already own.) I really hope I am wrong about all of this, but this is the only way my IT manager could get it to work.

Then it seems from a lot of the post that I have been seeing, all plug-ins and bonus tools need to be recompiled. It really feels like we are paying Autodesk extra to beta test their software. If you update the software,great. But can we do this in a manner that doesn't take a huge time sync out of your production day?

Often times we will be stuck using Maya versions that are 3 revs behind because the update process is time consuming and can put your team in danger of missing deadlines if they choose to upgrade mid development cycle.

This wasn't a huge issue in the past, you could use the ignore file version and still get a majority of your file back into an older version. From what I understand, this version of Maya has a change in the geometry format that makes this process fail. Needless to say, I'm not a fan of Autodesks new subscription model.

Maya is a great tool with a great tool set, but please clean up this mess before you release another half finished revision that needs a SP update that requires a full install to fix all the bugs that shouldn't have shipped in the first place.

I really had high hopes that this latest version on Maya was going to fix some of these issues, I know that this post is highly negative, but I hate to see one of my favorite pieces of software go down this road.

Cory Mogk

Posted 28 September 2012 4:01 am

@nickzucc please provide some specific details on instability for us to look at.

Regarding which viewport to use, with the exception of FX we suggest people use Viewport 2.0 If there are issues with using Viewport 2.0 with modeling and animation, we want to know. DirectX 11 support in this release is targeted at game developers. Others may find that it is useful for them and should feel free to use it. Again, if there are issues, please let us know.

Yes, plug-ins will need a recompile to use this release. This was a conscious decision to expose API for the new workflows. Although this can be disruptive, please don't see it as a sign that you are beta testing the software. We have been open with our partners in explaining that a recompile would be necessary so that they would have their plug-ins ready for people anxious to try the new features.

waz mack

Posted 28 September 2012 10:50 am

With mobu & ikinema streaming live mocap data into maya, this will ensure previz looks nearly as good as the end result!

benjin

Posted 28 September 2012 3:00 pm

Hi. Just wanted to say good job on this release of Maya. It's a big program and the last couple of releases have shown a nicer level of response and stability since moving to Qt.

I played around with the DX11 for a couple of hours and got it to do all the awsome things it should. Figured I would list out the caveats to getting a successful render on my box.


1. Enable the DX11 pluging in your plug ins.


2. Turn on Viewport 2.0 render in your window.


3. Turn off Geometry Compilation in the options for Viewport 2.0. It tended to crash both a Quadro 4000 and a Gtx 580. Stability ensued after that.

4. With any light that you make turn on "Use disk based maps". This is how you get shadows to show up.


5. Creat a "DX11 Ubermaterial" and apply it to your geometry. Use a simple geometry firt to test. The more complicated the geometry the more unstable it gets. Multi-meshed objects like STL conversions and Nurb to Poly meshes can be a bit sloppy and have problems with normal translations. If that happens reverse your normals on the problem peices.


6. If you work in a User space not as Administrator then your default may not be set in the material drop down. The ".fx" material is under your presets folder in "C:/Programs/Autodesk/Maya2013.5/presets/HLSL11/examples" choose the "MayaUberShader.fx" in there.

7. While your diffusion, specular, and normal maps can be any normal kind of texture the reflection needs to be a ".dds" file. Use "Default_reflection.dds" as a starter to see what it does. Nvidia makes a set of plugins for Photoshop to get you started.



Once you've done this prep work the result are amazing. Everything it promised. There are a couple of feature requests for the shader that would be cool. The first is to enable "image based reflection" to get some geometry reflections going. The second would be to enable light blooms and other camera tricks in the shader as well but it's a great first pass.

nickzucc

Posted 28 September 2012 3:13 pm

@ Mogkc - Opening an older Maya scene file that is saved with Viewport 2.0 was crashing on me on scene load when loading into new Maya with Viewport 2.0 DX11 enabled. There wasn't rhyme or reason behind the crash. This happened to me on multiple occasions in a one day period.

My other test, I set up the DX11 shader using the provided uber shader, set up all my maps and shading parameters, saved the file, closed Maya, reload Maya and reopen the scene file only to have the shader have some weird black shader rendering issue. It looks like it forgets how to render the normal map. In some cases I had to take each texture, load a new texture into it's slot and then reload the old texture. In some cases this would fix things, in some cases I just had to remake the texture all together.

For reflections to work I found that the only file format that I can use is a DDS file format, if not then the shader/Maya DX11 doesn't recognize the texture at all.

Shadow quality is not the same in DX11 mode as the old viewport 2.0. Shadow resolution needs to be cranked super high now to get a nice looking shadow and there are major problems with the shadow bias. You can no longer control the shadow color. (at least it appears that way.

We are now forced to use only 3 lights in the scene to accommodate for the new DX11 shader, the old viewport 2.0 required no light hook up and had a much higher light count.

Old scene files need to have their shaders completely rebuilt from the ground up.

I agree that you have made some great advances with the DX11 integration, but for the standard Maya user this just doesn't feel like it is integrated into the package very well. I would think that most users would expect that you could still use your lambert, phong and blin shaders.

I will try to take time out of my production cycle and I will compile a list of all things that do not draw/shade correctly in Viewport 2.0. Although I suspect the dev team will already have a similar list, and if they do not, perhaps it would be a good exercise for them to go through. I might give insight for what needs to be fixed for the next release.

lcymet

Posted 29 September 2012 4:24 pm

Just to clarify - your old shaders and lights will work fine in VP2 in DX11 mode, you are not forced to use the Ubershader while in DX11 mode.

When rendering using HLSL shaders in DX11, the lighting is defined within the shader, so you are limited by how many lights are defined in the HLSL shader. You can edit the .fx files to add more lights as desired (noting that there is a performance cost).

Cube mapped .dds reflection maps are preferred for efficiency and are easily generated with freely available plugins for photoshop. It's an inconvenience with a large payoff in terms of performance.

As to issues with stability and shader problems when reloading Maya files - please log bugs, ideally with reproducible cases and we'll take a look.

Thanks greatly.

T. I. Burbage

Posted 29 September 2012 7:45 pm

This looks like a fantastic feature for Windows game developers!

A maybe dumb question. If you want something analogous but for OGL, is there such a thing within Maya? I had thought maybe the CGFx shaders, but I don't see the same level of configurability. The regular "Viewport 2.0" does use OpenGL 2.0 shaders, right?

Cory Mogk

Posted 30 September 2012 10:39 am

@TIBurbage some of the things you see in DX11 are not available in OGL2. OGL4 does open more possibilities.

Gabriel Gazzan

Posted 30 September 2012 5:27 pm

The Service Pack 2 is also binary incompatible with the previous release?
I was waiting to replace my 2012 SAP with the new 2013 Extension when it was out.
Now, learning that it's binary incompatible this is out of question, but if SP2 is still binary compatible I think I should go with this one until the next release.
Thanks in advance.

nickzucc

Posted 1 October 2012 4:41 pm

Here are some observations that I have made about viewport 2.0/regular viewport.

I hope this will bring to light some of the issues (at least the ones that I have encountered.) that could bring the two draw modes in more of alignment with one another.

I really do love viewport 2.0 draw mode and I do wish to spend all of my time in this mode. My hope is that it will grow to the point where this is the ONLY draw mode for Maya and there will be no need to switch between various modes.

Viewport 2.0 Things that do not appear to draw correctly:

Toon outlines – Cannot be seen. These have to be converted to polys, this causes you to loose ability to tweak certain values.
Grid - Grid changes the way it displays axis, and subdivision line colors.
Backface culling doesn’t draw the same in Viewport 2.0 as the default display. (This becomes very confusing with poly cards with alpha when shadows are on. Surface must be double sided in order to draw shadows correctly. Then for some reason, even though double sided is turned on and backface culling is on, only one side of the mesh will draw. I have to duplicate the mesh and then revers the faces for everything to draw correctly.)
Texture boarder color draws a different color in Viewport 2.0 than the regular display.
Highlighted edges draws a different color than the default display.
You can have your ambient in your shader (lambert) set to pure white and your object will still have shading. (Shouldn’t this be pure white?)

Viewport 2.0 Things that now seem to draw correctly:

Ramp shader facing ratio – (doesn’t draw correctly in default display.)
2D Projections – Works with textures and also ramps.
Layered textures work with alphas, even alpha’s that are using a projection. This does not work in default render mode.
Ambient in the shader works. This doesn’t seem to have an effect in default mode.
Incandescence draws the same in both 2.0 and default. However, if you use transparence on your object the two modes will completely draw different from one another.
Translucence seems to draw as expected in 2.0. This does not draw the same (if at all in default mode.)

I was mistaken about the phong , lambert and blinn shaders not working as expected. When I did my test with an empty scene, normal, spec and reflections were working as I would expect in Vewport 2.0 DX11. The problem I was having was when I tried to load a scene file with a blinn shader that was pre set up with an older version of Maya and then opened into Maya with Viewport 2.0 DX11 enabled. The shading results looks like some weird dark shading that changed as you rotated around the model. It almost had the appearance of some odd texture reflection. (This doesn’t always happen on load.)

This does seems to happen if things are rendering correctly in VP2.0DX11 and then you switch to default mode and then back to VP2.0DX11. This causes my entire object to look as if it is 100 percent ambient lit. (Turning lights on and off no longer has any effect.) Then when you zoom in and out on your model it creates this crazy draw bug. (Looks as if the UV coordinates are changing based off the zoom of my camera.)

Here is a video I made to show what is happening (Draw bug??) when I load an old scene into the new Maya with VP2.0DX11.

https://vimeo.com/50538272

STLR

Posted 1 October 2012 7:39 pm

Wow... so this post generated a lot of discussion. Sorry I've been out of the loop. Got a little behind on my day job Thanks Cory and Laurence for chiming in and answering questions during my absence!

mayanic - unfortunately due to api changes bt will require a separate installer for the extension. We are doing QA on that now and should be posting it shortly. I'll do a blog post to announce is so stay tuned.

traden1976

Posted 2 October 2012 12:58 pm

@mogkc, @STLR: Great extension! I have a quick question: once you've setup your scene with scene assembly definitions how do you then import those references so the scene can be used in UDK /Unity?

I know it's probably best to just lay out modular pieces in the actual game engine, but I'm playing around with 2013.5 workflow improvements.

Summary: If I build a library of level pieces (modular walls, tables, barrels etc) , after building an environment with these how to I then export the scene and import those references into the scene so the assets are available in a game engine.

thanks!

lcymet

Posted 3 October 2012 2:45 am

Thanks for posting that video @nickzucc, can you outline your graphics hardware and driver version? Thanks.

nickzucc

Posted 3 October 2012 3:55 am

@Icymet

[Display]
Operating System: Windows 7 Professional, 64-bit (Service Pack 1)
DirectX version: 11.0
GPU processor: Quadro 3000M
Driver version: 276.05
DirectX support: 11
CUDA Cores: 240
Core clock: 450 MHz
Shader clock: 900 MHz
Memory clock: 1250 MHz (2500 MHz data rate)
Memory interface: 256-bit
Total available graphics memory: 9963 MB
Dedicated video memory: 2048 MB GDDR5
System video memory: 0 MB
Shared system memory: 7915 MB
Video BIOS version: 70.04.3A.01.01
IRQ: 16
Bus: PCI Express x16 Gen2

qayxsw

Posted 3 October 2012 6:21 am

Particle and Instancer support would be nice in DX11. Any plans in the near future?

lcymet

Posted 6 October 2012 8:22 pm

Thanks @nickzucc - You are running older drivers, you should update to at least 295.73, if this doesn't solve your problem, trying clamping your max texture res to a smaller image size and let us know if that helps.

Valen Wagner

Posted 9 October 2012 3:41 pm

When will we get a supported version of Bonus Tools?

nickzucc

Posted 10 October 2012 6:40 pm

Thanks Icymet. I will give this a try!

nickzucc

Posted 10 October 2012 8:03 pm

Icymet, updated drivers. Seems to be working now!! Thank you sir!

cjadams

Posted 4 November 2012 6:05 am

Heah nickzucc how are you liking the 3000m? I am agonizing over that vs. the gtx680 because of its cuda cores (also run Davinci Resolve on the same box)
I know the 680s OpenGL perf is crap compared to most of the quadros and ati fire ones.

darkomitev

Posted 25 December 2012 6:07 pm

WOW this new uber shader can do some really cool effects i wanted to ask is it possible to add more lights to the shader what if i want to use 6-7 lights to light a scene or character is it possible to add more slots for light select?

Maryus3D

Posted 1 January 2013 9:34 pm

What about viewport 2 using OpenGL 4.x for Linux or OSX? I hope Maya team will not hold real time tessellation for windows/DX 11 only. So, any news about OpenGL 4 in viewport 2 for multi-platform support?

lcymet

Posted 3 January 2013 8:36 pm

@darkomitev - It is very simple to add lights to the Ubershader, just open up the .fx file and have a look, the code is clearly laid out. An HLSL shading basics tutorial should give you all the knowledge you need to make this change. Note that adding more lights to the shader could affect performance depending on the situation.

@Maryus3D - DirectX gave the Maya team a quick path towards advanced rendering effects for game artists. We understand your concern here, and hear your complaint that these features should be native in Maya and work across platforms. Thank you for the input. Please note that OSX will have to support OpenGL 4 before these features could work on a mac.

Maryus3D

Posted 5 January 2013 10:55 am

Yes. I guess that is a sad and absurd story with OSX and OpenGL versions implementation. At least Linux is an option. Thank you anyway. Happy new year.

AlexRoberts

Posted 22 January 2013 2:39 pm

I modified the Maya UberShader to accept 5 lights instead of the default 3. It's on my blog if anyone wants to check it out, but so far I've been more limited by the shader than the hardware.

naaffax

Posted 21 February 2013 7:39 pm

i have installed the bonus tools for maya 2013 and had been able to use the bonus tools. but however i cant seem to find the option on my settings>preference>display to change from openGL to DirectX 11

Does any one know why it is not availbale or not showing up? any help would be appreciated.

STLR

Posted 11 March 2013 3:56 pm

@naaffax - The DX11 feature is not related to BonusTools. It is part of Maya 2013 Extension release. You have to be on subscription in order to use it. Check the links in the post above for installer info.

FirenzeXS

Posted 6 April 2013 11:24 pm

Just loving what the extension is capable of. We decided to realize our entire final year project in VP2.0/DX11 - it just feels great to have an image output at 5fps.
Just one thing, maybe it's me but I can't get the motion blur to work anymore - switching back to OpenGL it still works though.


http://darkhorizon.blog.com/ - DX11 short production blog

Add Your Comment

You must be logged in to post a comment.

Please only report comments that are spam or abusive.