NEWS         TESTS         INTERVIEWS         DOSSIERS         GALLERY 3D         3D SITES
 Q&A

Ultimate XAML,
J Collins Design
August - 2009

 

“Microsoft has made significant investments in making 3D XAML available as a component for designing user interfaces, but we only rarely see it used partly because of the difficulties in creating content in that format. This tool is designed to help solve that problem.”

< Ultimate XAML in action

   
Q1 Please give a brief description of Ultimate XAML.
A1

Ultimate XAML for Softimage is a plugin for Autodesk Softimage and Mod Tool that helps with the creation of 3D XAML content. The primary audience includes user interface developers of XBAPs (such as web games) and standalone applications. It is more than just a simple exporter; it includes a real time shader that mimics how XAML content appears in a Windows Presentation Foundation (WPF) application so that the final model can be accurately visualized during creation. The WPF shader settings correspond exactly to the settings available to the XAML material settings so there is nothing lost in translation. Other exporters we’ve looked at impose severe limitations on the types of materials they can generate or the composition of the scene; we’ve done our best to minimize these limitations and make this process as simple as possible. Scenes can have arbitrary hierarchies, objects can have local transforms, meshes can have subdivision surfaces and even instances are fully supported in the final XAML to keep file sizes down.
The plugin also includes the Ultimapper Helper which is designed to help create the image maps XAML requires, which I’ll explain more about later.
Another aspect of this plugin is the ability to create C# code that helps interface programmers use the exported objects within an application and integrate the resources with the project in a type safe manner. The main benefit of this is the compiler will produce errors if an asset that doesn’t exist is referenced by the code.
While this is the first public release of Ultimate XAML for Softimage, we initially created this tool in 2006 to solve our own development needs while creating XBAP games and other applications and we have been slowly improving it since then. We would very much like to start seeing Windows applications incorporate 3D elements more often because we think it can make for a better user experience. Not too long ago we decided to make it available to others because clearly, even though 3D XAML has been available to developers for several years now, it is not used very much. We hope this tool makes it a little easier for developers to make slick looking and fun to use applications.

   
Q2 XAML is not often used to display 3D contents. What are the benefits of XAML/WPF?
A2

XAML is the standard way to integrate 3D content into the user interface a Windows Presentation Foundation application. Historically, applications that needed to present 3D content would use either pre-rendered bitmaps or Direct 3D. Pre-rendered bitmaps certainly continues to have its place in UI design but does have some obvious limitations in that dynamic 3D content isn’t an option. Integration with Direct 3D poses many implementation challenges because embedding a Direct 3D rendering system within a user interface without it becoming the user interface is very complicated. Certainly possible, but not as convenient as using XAML which enables the user interface programmer to simply embed a 3D control into the middle of an existing user interface. Any Windows PC that has .NET 3.0 or greater (which is included in all Windows Vista and Windows 7 installations and can be installed onto XP) can embed 3D XAML content directly into the user interface of an application. 3D XAML content coexists with all other user interface systems of the Windows Presentation Foundation, and 3D XAML appears the same way across all supporting systems with no special hardware requirements. Microsoft has made significant investments in making 3D XAML available as a component for designing user interfaces, but we only rarely see it used partly because of the difficulties in creating content in that format. This tool is designed to help solve that problem.

   
Q3 Ultimate XAML export 3D assets from Softimage. What are the main settings to do on a Softimage scene to be well exported?
A3

The basic requirement is to create a collection of meshes which have render trees configured to use the WPF real time shader included in the plugin. The render trees can be shared or unique per mesh. The shader provides precise control of the settings of the XAML materials that are emitted by the exporter. Each render tree can have any number of WPF shaders chained together, and the exporter will produce a XAML Material Group that corresponds to how these are connected. This allows XAML objects to be constructed which use any combination of diffuse, specular and emissive materials. These are distinct material types in XAML and the WPF shaders can be configured individually to suit the artists preferences for each material in use. If the creation of a model requires the use of Mental Ray shaders, as is often the case, the images need to be baked into image files for use with the WPF shaders. This is a task very similar to game developers reducing a high resolution model into a game-ready model. The Ultimapper Helper can make that process easier by coordinating the generation of these images across multiple instances of Ultimapper objects, one per material channel.

   
Q4 Ultimate XAML introduce its own material nodes. Does it also support advanced shading (such as fragment/vertex shaders)?
A4

Ultimate XAML for Softimage introduces two material nodes. The first is the WPF Shader, which enables the artist to visualize how the final XAML object will appear directly within Softimage and allows for tweaking the XAML properties in real time prior to export. The WPF shader is intentionally limited to the features available to XAML, so it only supports solid colors and image map textures used with diffuse, specular and emissive shaders. It is impossible to configure the WPF shader in a way that is incompatible with the features XAML supports. The second node is a simple switch node that is used by the Ultimapper Helper during the creation of Ultimapper images to extract the diffuse, specular and emissive channels from a standard render tree into image files for use with the WPF shaders. The Ultimapper Helper switch shader inputs can be connected to any other node output but will usually be the non-illuminated texture channel data for the material because the final XAML object will typically be lit by the application’s scene lights. You don’t need to use the Ultimapper Helper switch shader to export XAML objects, but in situations where it makes sense to use the Ultimapper Helper, it can be a real time saver for creating the images used by the XAML objects.

   
Q5 When using Ultimate XAML, is it possible to export 3D data to XNA?
A5 No, this exporter is specifically designed to create XAML content and XNA does not support XAML at this time. We would very much like to see XNA support XAML in the future because currently the XNA platform has a distinct lack of comprehensive user interface APIs and XAML would be an obvious choice for Microsoft to add support for. If the user’s goal is to produce general purpose 3D content for XNA, Softimage users already have the option of using the XNA add-on which is more suited for that task because it is not constrained by the limitations of XAML.
   
Q6 Ultimate XAML documentation do not mention animation : does it mean that Ultimate XAML do not export object animation or bones?
A6 That is correct. While XAML supports rigid body hierarchies, it unfortunately does not support bones or skinning. Ultimate XAML for Softimage can export object hierarchies with instancing which can be used by applications to configure animations procedurally but the plugin does not currently export animation data. Our internal project which originally drove the development of this plugin needed to maximize XAML animation performance, and this precluded us from using the standard XAML animation features because they are unfortunately much slower than an animation system tuned for a specific application. There is a lot of overhead that comes with the standard XAML animation features. Despite this, we are hoping to provide animation export features in a future version because clearly it would be a useful thing and many applications simply don’t require high performance animations in the UI. You can find out more about this and other limitations of the software on page 7 of the PDF documentation under “Features and Limitations”.
   
Q7 What are your future development and evolution of Ultimate XAML?
A7 We have a pretty good list of features we would like to incorporate into Ultimate XAML for Softimage. Some of the major items we would like to support in the future include animation support, ICE integrated particle export, and code generation for user interfaces. Whether or not these happen depends partly on our own internal needs and partly on user feedback.
   
Q8 XAML is more than just a 3D format, do you plan to support more features?
A8 XAML is certainly much more than just a 3D format! In fact, it’s probably safe to say most people know XAML for almost everything except 3D. Our main focus right now is to make it easier for developers to use XAML 3D within their applications because clearly, as we learned ourselves when we saw the need for this tool, it is very difficult to get 3D content into an application unless you have the right tools. We will continue to focus on those aspects of XAML content creation which can benefit from being part of a 3D authoring environment such as Softimage and Mod Tool.
   
   
   
   
 
  Search on 3d-test with Google
      A PROPOS DE 3D-TEST            INFORMATIONS LEGALES               LINKS              TRANSLATE WITH GOOGLE
 
© 2001-2007 3d-test, Panorama of web 3D technologies, 3d-test is edited by Westimages Realtime 3D Solution Provider