Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

3D Content Guidelines for Microsoft

1,384 views

Published on

3D Content Guidelines for Microsoft

Published in: Technology
  • Be the first to comment

3D Content Guidelines for Microsoft

  1. 1. 3D Content Guidelines for Microsoft Jeremy Kersey, Fiona Mok Version 1.3 2019
  2. 2. 00 Introduction 3D Content Guidelines for Office Guide overview 01 3D Engine Overview Rendering Overview What is rendering? Offline rendering Real-time rendering Office 3D Engine Real-time rendering in Office Performance targets Office 3D feature support 02 Sourcing Assets Acquiring 3D Assets for Office Acquiring 3D assets overview Online marketplace search terms Selecting content Vendors 03 Content Creation Creating Custom 3D Assets for Office Content creation overview Polygon modelling Surfacing Animation Export Workflows Export overview GLB FBX OBJ PLY STL 3MF Conversion Workflows CAD Intermediate file formats Optimizing File size and memory consumption Performance Visual Artifacts Common visual artifacts 04 Additional Resources Tools Preview tools Validation tool Appendix Useful links
  3. 3. Introduction
  4. 4. 3D Content Guidelines for Office
  5. 5. Introduction Guide overview Whether you are a Microsoft Office 365 user looking to acquire 3D assets for your documents or a 3D professional creating content for your clients, this guide is designed to help you be more successful with 3D in Office. The guide is split into four major parts: 01 3D Engine Overview 02 Sourcing Assets 03 Content Creation 04 Additional Resources If 3D in Office 365 is new to you, be sure to check out this quick start guide and video. These templates are also a great way to explore using 3D in PowerPoint and Word.
  6. 6. Introduction Guide overview Each of the four major parts of the guide can be read in sequence or independently in any order you choose. 01 3D Engine Overview Learn about the inner workings of the real-time 3D engine used in Office and how it compares to other methods of rendering 3D content. 02 Sourcing Assets Tips and tricks for finding quality 3D content in online marketplaces and working with vendors to build your custom assets. 03 Content Creation Step through the process of creating content for real-time rendering in Office. From modelling, surfacing and animation through to optimizing and exporting your assets. 04 Additional Resources Discover tools for viewing, analyzing and validating your 3D content as well as links to other valuable resources. Recommended reading for: Everyone Recommended reading for: Office users looking to acquire 3D assets Recommended reading for: 3D Professionals Recommended reading for: 3D Professionals Office users reviewing 3D content
  7. 7. 3D Engine Overview
  8. 8. Rendering Overview
  9. 9. 3D Engine Overview What is rendering? To create the computer-generated images used in today’s films, video games and applications, 3D models are created with complex materials and textures and then lit and animated in virtual simulations of real-world physical properties. Rendering is the process of calculating the results of these simulations and turning it into the final image on screen. Depending on the intended usage of the resulting images, different types of renderers can be used to achieve varying levels of quality and accuracy versus the time it takes to render. Learn more about the process of computer graphics rendering on Wikipedia. Recursive Ray Tracing of a sphere, which incorporates the effects of diffuse interreflection, limited depth-of-field and area light sources. Generated using a custom Java renderer. Tim Babb, 2018. Wikipedia license.
  10. 10. 3D Engine Overview Offline rendering Offline rendering makes use of a technique called Ray Tracing to achieve the photorealism and ultra high precision seen in today’s films and product visualizations. Ray Tracing aims to replicate the way light interacts with objects and reflects to your eyes in the real world. This simulation of physical properties is what creates realistic surfaces, lighting phenomenon, accurate reflections and shadows. This level of quality comes at a high computational cost and is usually carried out on large server farms and can take several minutes or even hours to produce a single high-resolution image of complex scenes. Illustration of the Ray Tracing algorithm for rendering an image. Henrik, 2018. Wikipedia license. Ray Tracing is commonly used in offline rendering, where as most of today’s real-time renderers rely explicitly on Rasterization. For more information on the differences see Nvidia’s article here.
  11. 11. 3D Engine Overview Real-time rendering The power of real-time rendering really shines in interactive experiences where the action on screen in not predetermined. Rasterization is a real-time rendering technique used in today’s video games and simulators. Rasterization is hardware accelerated by the Graphics Processing Unit or “GPU” in your computer to achieve a constant frame rate with smooth interactions and fluid animations. Rendering complex scenes at this pace on today’s hardware requires some tradeoffs in physical accuracy compared to an offline renderer where speed is less of a constraint. Visit Scratchapixel for an in-depth breakdown of a Rasterization implementation. Principle of the geometrical perspective projection. Joachim Baecker, 2005. Wikipedia license
  12. 12. Office 3D Engine
  13. 13. 3D Engine Overview Real-time rendering in Office Office is using a real-time Rasterization renderer to create the resulting images you see when you insert a 3D model. glTF or “GL Transmission Format” is the open source 3D file format used by Office to store and render all 3D models. Many different 3D file formats can be imported and are automatically converted to glTF before rendering in Office, because of this it is important to understand the feature set of the glTF specification. GLB is the binary version of glTF which allows you to store complex 3D assets in a single file for maximum portability. GLB is recommend when exporting to the glTF format for Office. Supported 3D File Formats File Extension Meshes Materials UVs Textures Vertex Colors Animation GLB Yes Yes Yes Yes Yes Yes FBX Yes Yes Yes Yes Yes Yes OBJ Yes Yes Yes Yes No No PLY Yes No No No Yes No STL Yes No No No No No 3MF Yes Yes Yes Yes Yes No Each supported 3D file format has its own limitations that need to be considered when authoring content. Click the links in the table above to jump to the export guide for each format in the Content Creation section.
  14. 14. 3D Engine Overview Performance targets The hardware and the resolution of the screen used to view or present your 3D documents will have a direct impact on what fidelity of models you will be able to display while remaining performant. This table defines some conservative targets to aim for when acquiring or authoring 3D content for a range of hardware. When in doubt, target models to the Mid-Range profile for a balance of fidelity and performance. Low End Mid-Range High End Processor and Graphics i3 i5, Integrated Graphics i7/i9, Discrete GPU Triangle Count Maximum 25k 40k 60k Texture Count Maximum 5 9 12 Texture Resolution Maximum 512x512 2048x2048 4096x4096 Texture Resolution Average 256x256 1024x1024 2048x2048 Draw Calls Maximum 4 6 8 Joint Count Maximum 40 100 180 Joint Count Mapped to Vertices Maximum 20 50 100 Multiple Texture Passes per Material Not Recommended Yes Yes 3D file sizes should be kept below 50mb whenever possible. Large 3D file sizes will directly affect the size of your documents and make them less portable. Share large documents easily using a cloud service such as OneDrive or SharePoint.
  15. 15. 3D Engine Overview Office 3D feature support Depending on the version of Office you are working with, there will be differences in the available 3D features. Office 365 receives regular updates and will provide access to the latest features as they become available. 3D features are supported on: • Office for Mac • Office for Windows • Office Mobile for Windows 10 Documents authored with 3D content will still be viewable by users on the web clients or previous versions of Office. However, 3D models will be displayed as images with no embedded animation or interaction capabilities. 3D Feature Office on *Windows PC Office on **Mac 3D Model Support Mesh Primitives with Physically Based Rendering (PBR) Metallic Roughness material workflow Office 2019 Office 365 Subscription Office 2019 Office 365 Subscription Points and Lines Primitives - - Animated 3D Model Support Skinned skeletal animation Office 365 Subscription - Node transform animation - - Morph Target animation - - glTF Extension Support KHR_materials_pbrSpecularGlossiness Office 2019 Office 365 Subscription Office 2019 Office 365 Subscription KHR_materials_unlit Office 2019 Office 365 Subscription Office 2019 Office 365 Subscription *Supported Windows PC Versions: Win7 (with latest updates), Win8 and Win10 **Mac 2012 or greater with OS X Sierra or greater
  16. 16. Sourcing Assets
  17. 17. Acquiring 3D Assets for Office
  18. 18. Sourcing Assets Acquiring 3D assets overview There are a couple of options to consider when acquiring 3D content, each has its own advantages depending on your needs. Online marketplace Advantages • Plenty of pre-made content in many different art styles • Assets ready for immediate download • Attractive pricing Disadvantages • You may not be able to find a suitable asset • Assets may require modifications to be glTF compliant and performant • Licensing terms may prevent the intended usage Vendors Advantages • Completely custom assets built to your specifications • glTF compliant and performant • Assets can be owned outright when the proper agreement is in place Disadvantages • Lead time • Requires more time investment up front and during development • High quality vendors can come at a high cost
  19. 19. Sourcing Assets Filters • Setup a filter for the supported file types such as .GLB and .FBX • Filter by license type to avoid unusable content • Content categories. Examples: animals, dogs, animated Visual Style • Use keywords that describe the art style • Examples: realistic dog, hand painted fire hydrant, cartoon sports car, photorealistic human Animated Content • Animated content should be in .GLB or .FBX • Animation style terms: squash and stretch, exaggerated, realistic, motion capture, mo-cap • Technical terms: rigged, skinned, takes, clips, looping, walk cycles Technical Specifications • Technical keywords can help focus on options that will work out of the box with Office • Examples: glTF compliant, Real- time, no plug-ins, polygons, triangles, clean topology, UVs, texture, PBR, Metallic Roughness Online marketplace search terms There are many online marketplaces offering a huge selection of content which means that finding the right 3D asset can be challenging. Here are some things to keep in mind while searching marketplace content to help narrow down the selection quickly.
  20. 20. Sourcing Assets Licensing • Pay close attention to the details of the licensing agreement before making a purchase and when using the content. • Each piece of content is subject to its own license terms which may impose limitations on its usage such as redistribution restrictions. • Some content may have 3rd party branding. In this case usage clearances need to be requested directly from the original rights holder. Selecting content After narrowing down the options using filters and search terms there are still a few things to consider before making a purchase. Quality Listings • Always look for highly rated assets with artists who are active and responsive to feedback on their listings. • Many marketplaces display certification badges or tags for assets that have been verified for quality. • Most marketplaces sell content provided by many different vendors, so don’t be afraid to ask questions or request fixes if the asset received is not as advertised. Technical Notes • 3D content creation applications provide many workflows that are not supported by glTF and the Office 365 renderer. • Be aware that these types of assets may have to be heavily modified before they are ready to use in Office. • Examples of unsupported features to avoid: NURBS, subdivision surfaces, parametric solids, procedural materials, subsurface scattering, curvature maps, cavity maps, height maps, displacement, hair and fur simulations, cloth and muscle simulations Refer to Performance targets in the 3D Engine Overview section to ensure that asset fidelity is aligned with hardware requirements.
  21. 21. Sourcing Assets Vendors There are plenty of readily available vendors that could help build custom 3D assets for your project. Here are some suggestions to keep in mind when choosing and working with a vendor. Choosing a vendor • Demonstrates clear communication skills and responsiveness to clients • Proven track record of successful job completion • Portfolio containing examples of the required art style or asset type • Experience producing assets for real-time rendering • Local time zone of the vendor may impact the scheduling and communication Provide to a vendor • Detailed delivery schedule for major milestones • Work in progress review terms • Asset delivery terms: method of delivery, final file format, source files • Reference package: Art targets, color palettes, animation style examples, object reference images or drawings, dimensions • Technical specifications: Draw call limits, texture resolutions, texture counts, triangle count, joint count, file size targets • Quick turnaround on feedback and answering questions
  22. 22. Content Creation
  23. 23. Creating Custom 3D Assets for Office
  24. 24. Content Creation Content creation overview Following the overview of feature support, the Content Creation guidance is split into four major sections. The guidance may be read in sequence or you can jump to the section that is most relevant to your workflow. Export Workflows Example export workflows for each of the supported 3D file formats and tips for avoiding common issues. Conversion Workflows General guidance on converting parametric CAD models and working with intermediate 3D file types. Optimizing Guidance for reducing file size and memory consumption as well as tips for resolving common performance bottlenecks. Visual Artifacts Tips for identifying and resolving common visual rendering artifacts.
  25. 25. Textured Mesh Vertex colors Blended Result Content Creation Polygon modelling Create meshes with real-time rendering in mind and use the performance targets to inform your modelling budgets. Combine sub-meshes whenever possible to reduce draw calls. Be aware that glTF will split meshes with multiple materials into a sub-mesh per material. Supported Mesh Features • Triangles or quads • Vertex normals for hard or soft edges • 2 UV sets • UV tiling • 1 vertex color set All meshes will be triangulated when exporting to .GLB or during the conversion process that occurs while importing any of the other supported 3D file formats into Office. Autodesk Maya
  26. 26. Content Creation Surfacing glTF and the Office renderer makes use of Physically Based Rendering or “PBR” with a Metallic Roughness workflow. A detailed breakdown of the PBR texture and material creation process is covered for a variety of applications in the Khronos Group’s Art Pipeline for glTF. Supported Textures • Base Color • Normal • Metallic • Roughness • Ambient Occlusion • Emission Metallic Roughness is the standard PBR workflow for glTF. Specular Glossiness is also supported via a glTF extension. For an example of Specular Glossiness usage see FBX export workflow.
  27. 27. Content Creation Animation Animations can be embedded in .GLB and .FBX files and show up as “Scenes” in Office. These Scenes can be triggered just like any other animation type found in Office. See the Export Workflows section for more details on exporting multiple animations to .GLB or .FBX. Supported Animation Features • Skinned skeletal joint hierarchies • 4 influences per vertex maximum • Normalized weighting • 30 frames per second with keys on frame recommended • glTF animation interpolation: linear, cubic spline • FBX animation interpolation: linear • Up to 18 animations within one .GLB or .FBX file Support for node transform animation and morph target animation is coming soon. Check the Office 3D feature support table for updates. Autodesk Maya
  28. 28. Export Workflows
  29. 29. Content Creation Export overview Now that your 3D content is complete, you will need to export it in a supported 3D file format which can handle all the features the asset requires. glTF is the open source 3D file format recommended for Office. If your content creation package doesn’t have a glTF exporter yet, we recommend exporting to .FBX for animated and textured assets. No glTF exporter? Consider requesting one from your software vendor or the glTF community on the Khronos Group’s GitHub. glTF Exporters Content Creation Package Compliance Description Blender.org Blender glTF 2.0 Native import / export Blender 2.8 or later Autodesk 3DS Max glTF 2.0 Babylon.JS plug-in for Max 2015 or later Autodesk Maya glTF 2.0 Babylon.JS plug-in for Maya 2018 or later Trimble SketchUp glTF 2.0 Separate extensions for export and import Allegorithmic Substance Painter glTF 2.0 Native exporter SideFX Houdini glTF 2.0 Native import / export Foundry Modo glTF 2.0 Native exporter Visit Khronos Group on GitHub for a full list of glTF Import, Export and Conversion tools.
  30. 30. Content Creation GLB Exporting directly to GLB from your content creation tools is the best option for more direct control over how your assets will look in Office. The Babylon.JS plug-ins for Autodesk Maya and 3DS Max allow you to work directly with the glTF metallic roughness workflow; further reducing the conversion that needs to happen during the export process. Create multiple animations on the timeline and use the Babylon.JS Animation Groups panel to define frame ranges and export multiple animation clips in a single file. Read more about the glTF file format here on Wikipedia. glTF workflow documentation • The Art Pipeline for glTF from Khronos Group provides an excellent breakdown of the whole glTF workflow in a variety of applications. • Autodesk Maya | Babylon.JS: • Metallic roughness workflow with Stingray PBS or the Arnold Standard Surface material • Autodesk Maya | Babylon.JS: • Multiple animations in a single GLB file • Autodesk 3DS Max | Babylon.JS: • Metallic roughness workflow with PBR materials or the Arnold Standard Surface material • Autodesk 3DS Max | Babylon.JS: • Multiple animations in a single GLB file Tools Content Creation Package Compliance Description Autodesk Maya glTF 2.0 Babylon.JS plug-in for Maya 2018 or later Autodesk 3DS Max glTF 2.0 Babylon.JS plug-in for Max 2015 or later Visit Khronos Group on GitHub for a full list of glTF Import, Export and Conversion tools.
  31. 31. Content Creation FBX Wide availability and feature support make FBX the next best choice after GLB when exporting content for Office. When authoring FBX files you must use the Specular Glossiness workflow. This can be achieved in Autodesk Maya with a standard Phong material. Use the Embed Media export option to package textures inside the exported FBX file. If your exporter does not have an embed option, textures must be in the same directory as the FBX file on a local drive. Textures must be referenced with relative paths. Importing FBX files into Office will result in a GLB that uses the Specular Glossiness glTF extension. FBX files that reference loose textures must be imported from a local drive. Autodesk Maya: Phong Specular Gloss workflow mappings for glTF glTF attribute Phong attribute Texture type Base Color Color RGB + A for optional transparency Specular Specular Color RGB + A for Glossiness Glossiness Specular Color A channel of Specular texture Normal Bump / Normal RGB Emission Incandescence RGB Ambient Occlusion Ambient Color RGB glTF only supports .PNG and .JPG textures, all other image formats will be converted during the import process. Color factors can be used in place of textures for Base Color, Transparency, Specular, Emission and Ambient Occlusion. Embed Media option in the Maya FBX exporter dialogue.
  32. 32. Content Creation FBX Multiple animations can be authored on a single timeline or by arranging clips with the Time Editor in Autodesk Maya. Frame ranges of multiple animations can be defined in the Animation Clips tab of the Game Exporter. The Time Editor tab in the Game Exporter is used to select which animations clips will be exported and their desired frame ranges. Read more about the FBX file format here on Wikipedia. Three animations defined for export in the Animation Clips tab of Maya’s Game Exporter panel.
  33. 33. Content Creation OBJ When authoring OBJ files you must use the Specular Glossiness workflow. This can be achieved in Autodesk Maya with a standard Phong material. Exporting an OBJ will also create an MTL file. The MTL file can be opened in a text editor to see material settings and references to texture files. The OBJ, MTL and loose texture files must all exist in the same directory on a local drive when importing OBJ files in Office. Read more about the OBJ file format here on Wikipedia. Autodesk Maya: Phong Specular Gloss workflow mappings for glTF glTF attribute Phong attribute Texture type Base Color Color RGB + A for optional transparency Specular Specular Color RGB + A for Glossiness Glossiness Specular Color A channel of Specular texture Normal Bump / Normal RGB Emission Incandescence RGB Ambient Occlusion Ambient Color RGB glTF only supports .PNG and .JPG textures, all other image formats will be converted during the import process. Many OBJ exporters will interpret normal maps as bump maps on export.
  34. 34. Content Creation PLY PLY files were primarily designed to store mesh data from 3D scanners. Vertex normals can be used to create hard and soft edges. A single vertex color set with alpha is also supported. Both binary and ASCII versions of PLY are available. Read more about the PLY file format here on Wikipedia. SideFX Houdini
  35. 35. Content Creation STL STL files are commonly used in 3D printing workflows and only describe surface geometry with hard edged faces. All color, texture and UV information will be stripped on export. STL files contain no scale information and the units are arbitrary. Most STL exporters provide an option to output files in either binary or ASCII. Read more about the STL file format here on Wikipedia.
  36. 36. Content Creation 3MF The 3D Manufacturing Format or 3MF, is a 3D printing format designed for interoperability of full fidelity models across platforms, applications and services. 3MF files can be imported into Office with vertex colors, UVs and embedded textures for base color. Read more about 3MF and the consortium here. 3D Builder
  37. 37. Conversion Workflows
  38. 38. Content Creation CAD Modelling tools in most CAD applications use sets of adjustable mathematical parameters to define parametric solids. Parametric solids are highly accurate volumes that can be used to carry out engineering simulations and manufacturing processes. glTF and the Office renderer require models to be represented as a triangulated polygon surface. Additional Notes • Many CAD applications can perform the required tessellation step when exporting to another file format. • CAD assemblies often contain large amounts of individual parts each with their own material assignments. • Refer to the Content Creation guidance on Draw Calls and Hierarchy Complexity to improve the performance of exported CAD files. If your application does not support tessellation on export, there are several 3rd party solutions on the market for converting CAD models to polygon surfaces. SideFX Houdini
  39. 39. Content Creation Intermediate file formats Even if your content creation package cannot export to any of the supported 3D file formats, you may be able to export your assets to an intermediate file format which can be converted with another tool. The widely supported COLLADA exchange file format is the precursor to glTF from Khronos Group. COLLADA’s .DAE files can be imported and exported with a variety of applications. .ZAE is the archive version of .DAE. Changing the extension from .ZAE to .ZIP will allow you to unpack the contents. Example .DAE to .GLB conversion workflow • Install the OpenCollada plug-in for Autodesk Maya or 3DS Max • Install the Babylon.JS exporter for Autodesk Maya or 3DS Max • Launch Autodesk Maya or 3DS Max and enable the OpenCollada and Babylon.JS plug-ins • Import the .DAE file • Use the Babylon.JS exporter to generate a .GLB • Alternatively, export as .FBX with embedded media Tools Content Creation Package Compliance Description Autodesk Maya | 3DS Max glTF 2.0 OpenCollada plug-in Autodesk Maya glTF 2.0 Babylon.JS plug-in for Maya 2018 or later Autodesk 3DS Max glTF 2.0 Babylon.JS plug-in for Max 2015 or later Visit Khronos Group on GitHub for a full list of glTF Import, Export and Conversion tools.
  40. 40. Optimizing
  41. 41. Content Creation Textures • Reducing the resolution and the amount of textures will have the largest impact on memory consumption and file size on disk. • Reduce textures based on their visual impact. For example metallic roughness maps can often be half the resolution of base color and normal maps with no discernable reduction of quality. • JPG compression and PNG quantization will further reduce file size on disk, however it will have no impact on the memory required at runtime when the asset is loaded. Unused Data • Be sure to remove any data that is not required by your Office document. Extra nodes, meshes, materials and textures can add up quickly. • Animations can consume a lot of disk space, especially in assets with large skeletal hierarchies. Remove all key frames on channels that are not changing for the duration of the animation. • Remove any extraneous animations and trim the range of the required animations to only the frames you need. Triangle Reduction • It takes a massive reduction in triangle count to make a meaningful change to file size. Use this method when it is the only remaining option. • If the model usage is known ahead of time, use that to inform triangle reduction choices. Focus on less important areas with high mesh density while being mindful of the silhouette impact. • Fine geometric surface details can often be replaced by baking them into normal and occlusion maps for large triangle savings. File size and memory consumption Use 3D Viewer to compare stats and visualize optimization results. Autodesk Maya
  42. 42. Draw Calls • The most common runtime performance bottleneck can usually be attributed to large amounts of draw calls. • While there are many reasons an asset may incur more draw calls the most likely cause is simply many materials assigned to the meshes in the scene. • Create texture atlases out of multiple materials and merge the meshes together to consolidate draw calls. Transparency • Transparency has significantly more cost to render compared to a fully opaque material. • Split texture sets into opaque and transparent materials to minimize the amount of geometry rendered with alpha. • If the model only has one texture set, duplicate the material, remove the transparency and assign the newly created material to all the opaque triangles of the mesh. Textures • Large textures require a lot of system resources and can be especially taxing on devices without a discrete GPU. • Reduce textures based on their visual impact. For example metallic roughness maps can often be half the resolution of base color and normal maps with no discernable reduction of quality. • Consider completely removing textures based on their visual impact, especially if you are targeting a lower end hardware specification. Performance Content Creation Use 3D Viewer to compare stats and visualize optimization results. Autodesk Maya
  43. 43. Content Creation Hierarchy Complexity • Grouping, parenting and large amounts of nodes such as nulls, locators, meshes and joints can contribute to poor runtime performance. • Simplify your hierarchy, remove unnecessary nodes and combine meshes where possible. • glTF will create a mesh per material, atlas materials together to reduce node count and draw calls. • For animated models consider how the model needs move and consolidate the hierarchy into as few nodes as possible. Triangle Reduction • High triangle or vertex counts can hinder performance especially on devices without a discrete GPU. • If the model usage is known ahead of time, use that to inform triangle reduction choices. Focus on less important areas with high mesh density while being mindful of the silhouette impact. • Fine geometric surface details can often be replaced by baking them into normal and occlusion maps for large triangle savings. Joint and Skin Count • Skeletal hierarchies with large amounts of joints skinned to vertices can be costly at runtime especially if there are multiple skin clusters. • While it may increase the complexity of the skin weighting process, reducing skin clusters by combining meshes is one of the best options for improving skin and skeletal performance. • Remove joints that won’t be used in the required animations. Consider reducing joint count in dense parts of the hierarchy, often a similar deformation can be achieved with skin weighting adjustments. Performance Use 3D Viewer to compare stats and visualize optimization results. Autodesk Maya Autodesk MayaAllegorithmic Substance Painter
  44. 44. Visual Artifacts
  45. 45. Content Creation Coplanar Geometry • Flickering can occur when geometry faces are coplanar or nearly coplanar. This is especially prevalent when the model is animating. • Increasing the distance between geometry faces by a small amount will resolve the flickering issues in most cases. Inverted Face Normals • Inverted face normals can cause the model to be shaded incorrectly. • Flip the normals of the incorrectly shaded faces to resolve the rendering issues. Common visual artifacts Use 3D Viewer to identify visual artifacts and test your revisions. Autodesk Maya
  46. 46. Content Creation Alpha Sorting • A mesh with a single material for both opaque and transparent faces can introduce sort order artifacts depending on the position of the model. • Texture sets should always be split into opaque and transparent materials to improve render sorting. • If the model only has one texture set, duplicate the material, remove the transparency and assign the newly created material to all the opaque triangles of the mesh. A single mesh with both opaque and transparent faces that overlap can cause sort order artifacts. Common visual artifacts Use 3D Viewer to identify visual artifacts and test your revisions. Tangent Basis • A conflicting tangent basis can cause your normal maps to appear inverted. • If you don’t export tangents with your model, glTF and the Office renderer will assume right-handedness. • Export your model with tangents if you are baking tangent space normal maps in a left-handed setup. Alternatively you could invert the green channel (Y axis) of your normal map.
  47. 47. Additional Resources
  48. 48. Tools
  49. 49. Additional Resources Preview tools 3D Viewer is a Microsoft Store application built on the same 3D rendering engine used in Office 365. This is the fastest way to preview how your assets will look in the renderer. Asset stats and the detailed visualizations found in 3D Viewer can help identify performance bottlenecks. Import supported 3D file types and save them as .GLB. 3D files on your local hard drive can also be previewed in Windows File Explorer by enabling the Preview pane under the View menu. 3D Viewer can be found in the Windows 10 Start menu
  50. 50. Additional Resources Preview tools Babylon.JS Sandbox is a drag and drop web tool built on the fully glTF compliant Babylon.JS renderer. Preview .glTF, .GLB, .OBJ and .Babylon files in your web browser. Files that are performant and render well in Babylon.JS Sandbox will most likely render as expected in the Office renderer.
  51. 51. Additional Resources Validation tool The Khronos glTF Validator is a drag and drop web tool that verifies the output from your glTF exporter or converter against the glTF specification. When loading a glTF file, the tool will generate a pass or fail state as well as a detailed report that outlines any errors that have been encountered. The errors can be used by developers to determine if there are any issues with the tools used to generate the glTF file. Your software vendor or developer may be able to use this data to improve the compliance of their glTF tools.
  52. 52. Appendix
  53. 53. Additional Resources Useful links glTF Specification The official glTF specification from Khronos Group Babylon.JS Open source 3D engine based on WebGL and JavaScript Windows Mixed Reality Development guidelines for Windows Mixed Reality headset experiences HoloLens Development guidelines and resources for HoloLens experiences Allegorithmic PBR Guide Part 1 Excellent guide on the theory behind Physically Based Rendering Allegorithmic PBR Guide Part 2 A guide to authoring PBR textures and materials focused on the Substance toolset

×