Professional Documents
Culture Documents
3D Content Guidelines: For Microsoft
3D Content Guidelines: For Microsoft
3D Content Guidelines: For Microsoft
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.
01 3D Engine Overview
02 Sourcing Assets
03 Content Creation
04 Additional Resources
Guide overview
Each of the four major parts of the guide can be read in sequence or independently in any order you choose.
Learn about the inner workings of the Tips and tricks for finding quality 3D Step through the process of creating Discover tools for viewing, analyzing
real-time 3D engine used in Office content in online marketplaces and content for real-time rendering in and validating your 3D content as
and how it compares to other working with vendors to build your Office. From modelling, surfacing and well as links to other valuable
methods of rendering 3D content. custom assets. animation through to optimizing and resources.
exporting your assets.
Recommended reading for: Recommended reading for: Recommended reading for: Recommended reading for:
Everyone Office users looking to acquire 3D assets 3D Professionals 3D Professionals
Office users reviewing 3D content
3D Engine Overview
Rendering Overview
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.
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.
Real-time rendering
The power of real-time rendering really shines in interactive
experiences where the action on screen in not predetermined.
Visit Scratchapixel for an in-depth breakdown of a Rasterization Principle of the geometrical perspective projection.
implementation. Joachim Baecker, 2005. Wikipedia license
Office 3D Engine
3D Engine Overview
GLB is the binary version of glTF which allows you to store complex
3D assets in a single file for maximum portability.
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.
Large 3D file sizes will directly affect the size of your documents Joint Count Maximum 40 100 180
and make them less portable. Share large documents easily using a Joint Count Mapped to Vertices Maximum 20 50 100
cloud service such as OneDrive or SharePoint.
Multiple Texture Passes per Material Not Recommended Yes Yes
3D Engine Overview
Advantages Advantages
• Plenty of pre-made content in many different art styles • Completely custom assets built to your specifications
• Assets ready for immediate download • glTF compliant and performant
• Attractive pricing • Assets can be owned outright when the proper agreement is in place
Disadvantages Disadvantages
• You may not be able to find a suitable asset • Lead time
• Assets may require modifications to be glTF compliant and performant • Requires more time investment up front and during development
• Licensing terms may prevent the intended usage • High quality vendors can come at a high cost
Sourcing Assets
• Setup a filter for the supported • Use keywords that describe the • Animated content should be in • Technical keywords can help
file types such as .GLB and .FBX art style .GLB or .FBX focus on options that will work
• Filter by license type to avoid • Examples: realistic dog, hand • Animation style terms: squash out of the box with Office
unusable content painted fire hydrant, cartoon and stretch, exaggerated, realistic, • Examples: glTF compliant, Real-
• Content categories. Examples: sports car, photorealistic human motion capture, mo-cap time, no plug-ins, polygons,
animals, dogs, animated • Technical terms: rigged, skinned, triangles, clean topology, UVs,
takes, clips, looping, walk cycles texture, PBR, Metallic Roughness
Sourcing Assets
Quality Listings
• Always look for highly rated assets with artists who are active and
Selecting content responsive to feedback on their listings.
• Many marketplaces display certification badges or tags for assets that
After narrowing down the options using filters and search terms have been verified for quality.
there are still a few things to consider before making a purchase. • 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
Licensing not as advertised.
Technical Notes
• 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 • 3D content creation applications provide many workflows that are not
impose limitations on its usage such as redistribution restrictions. supported by glTF and the Office 365 renderer.
• Some content may have 3rd party branding. In this case usage • Be aware that these types of assets may have to be heavily modified
clearances need to be requested directly from the original rights holder. 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
Refer to Performance targets in the 3D Engine Overview section to
simulations, cloth and muscle simulations
ensure that asset fidelity is aligned with hardware requirements.
Sourcing Assets
Vendors
There are plenty of readily available vendors that could help
build custom 3D assets for your project.
• Demonstrates clear communication skills and responsiveness to clients • Detailed delivery schedule for major milestones
• Proven track record of successful job completion • Work in progress review terms
• Portfolio containing examples of the required art style or asset type • Asset delivery terms: method of delivery, final file format, source files
• Experience producing assets for real-time rendering • Reference package: Art targets, color palettes, animation style examples, object
• Local time zone of the vendor may impact the scheduling and communication 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
Content Creation
Creating Custom 3D Assets for Office
Content Creation
The guidance may be read in sequence or you can jump to the section that is
most relevant to your workflow.
Example export workflows for each of General guidance on converting Guidance for reducing file size and Tips for identifying and resolving
the supported 3D file formats and parametric CAD models and working memory consumption as well as tips common visual rendering artifacts.
tips for avoiding common issues. with intermediate 3D file types. for resolving common performance
bottlenecks.
Autodesk Maya
Content Creation
Polygon modelling
All meshes will be triangulated when exporting to .GLB or during Textured Mesh Vertex colors Blended Result
the conversion process that occurs while importing any of the other
supported 3D file formats into Office.
Content Creation
Surfacing
Supported Textures
• Base Color
• Normal
• Metallic
• Roughness
• Ambient Occlusion
• Emission
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.
Now that your 3D content is complete, you will need Blender.org Blender glTF 2.0 Native import / export Blender 2.8 or later
to export it in a supported 3D file format which can
Autodesk 3DS Max glTF 2.0 Babylon.JS plug-in for Max 2015 or later
handle all the features the asset requires.
Autodesk Maya glTF 2.0 Babylon.JS plug-in for Maya 2018 or later
glTF is the open source 3D file format recommended
for Office. If your content creation package doesn’t Trimble SketchUp glTF 2.0 Separate extensions for export and import
have a glTF exporter yet, we recommend exporting to
Allegorithmic Substance Painter glTF 2.0 Native exporter
.FBX for animated and textured assets.
SideFX Houdini glTF 2.0 Native import / export
Visit Khronos Group on GitHub for a full list of glTF Import, Export and Conversion tools.
GLB
glTF workflow documentation
Exporting directly to GLB from your content creation
tools is the best option for more direct control over • The Art Pipeline for glTF from Khronos Group provides an excellent breakdown of the whole glTF
workflow in a variety of applications.
how your assets will look in Office.
• Autodesk Maya | Babylon.JS:
• Metallic roughness workflow with Stingray PBS or the Arnold Standard Surface material
The Babylon.JS plug-ins for Autodesk Maya and 3DS • Autodesk Maya | Babylon.JS:
Max allow you to work directly with the glTF metallic • Multiple animations in a single GLB file
roughness workflow; further reducing the conversion • Autodesk 3DS Max | Babylon.JS:
that needs to happen during the export process. • Metallic roughness workflow with PBR materials or the Arnold Standard Surface material
• Autodesk 3DS Max | Babylon.JS:
Create multiple animations on the timeline and use • Multiple animations in a single GLB file
Autodesk Maya glTF 2.0 Babylon.JS plug-in for Maya 2018 or later
Read more about the glTF file format here on Wikipedia. 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.
Content Creation
FBX
FBX
OBJ
PLY
STL
3MF
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.
Content Creation
Even if your content creation package cannot export Example .DAE to .GLB conversion workflow
to any of the supported 3D file formats, you may be • Install the OpenCollada plug-in for Autodesk Maya or 3DS Max
able to export your assets to an intermediate file • 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
format which can be converted with another tool. •
• Import the .DAE file
• Use the Babylon.JS exporter to generate a .GLB
Alternatively, export as .FBX with embedded media
The widely supported COLLADA exchange file format •
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
.ZAE is the archive version of .DAE. Changing the extension from
.ZAE to .ZIP will allow you to unpack the contents. Visit Khronos Group on GitHub for a full list of glTF Import, Export and Conversion tools.
Optimizing
Content Creation Use 3D Viewer to compare stats and visualize optimization results.
Autodesk Maya
largest impact on memory consumption and file size on disk. document. Extra nodes, meshes, materials and textures can add up change to file size. Use this method when it is the only remaining
quickly. option.
• Reduce textures based on their visual impact. For example metallic
roughness maps can often be half the resolution of base color and • Animations can consume a lot of disk space, especially in assets • If the model usage is known ahead of time, use that to inform
normal maps with no discernable reduction of quality. with large skeletal hierarchies. Remove all key frames on channels triangle reduction choices. Focus on less important areas with high
that are not changing for the duration of the animation. mesh density while being mindful of the silhouette impact.
• JPG compression and PNG quantization will further reduce file size
on disk, however it will have no impact on the memory required at • Remove any extraneous animations and trim the range of the • Fine geometric surface details can often be replaced by baking
runtime when the asset is loaded. required animations to only the frames you need. them into normal and occlusion maps for large triangle savings.
Content Creation Use 3D Viewer to compare stats and visualize optimization results.
Performance
Autodesk Maya
attributed to large amounts of draw calls. fully opaque material. especially taxing on devices without a discrete GPU.
• While there are many reasons an asset may incur more draw calls • Split texture sets into opaque and transparent materials to • Reduce textures based on their visual impact. For example metallic
the most likely cause is simply many materials assigned to the minimize the amount of geometry rendered with alpha. roughness maps can often be half the resolution of base color and
• Create texture atlases out of multiple materials and merge the remove the transparency and assign the newly created material to • Consider completely removing textures based on their visual
meshes together to consolidate draw calls. all the opaque triangles of the mesh. impact, especially if you are targeting a lower end hardware
specification.
Content Creation Use 3D Viewer to compare stats and visualize optimization results.
Performance
locators, meshes and joints can contribute to poor runtime on devices without a discrete GPU. can be costly at runtime especially if there are multiple skin
performance. clusters.
• If the model usage is known ahead of time, use that to inform
• Simplify your hierarchy, remove unnecessary nodes and combine triangle reduction choices. Focus on less important areas with high • While it may increase the complexity of the skin weighting process,
meshes where possible. mesh density while being mindful of the silhouette impact. reducing skin clusters by combining meshes is one of the best
Autodesk Maya
• Increasing the distance between geometry faces by a small amount • Flip the normals of the incorrectly shaded faces to resolve the
inverted. faces can introduce sort order artifacts depending on the position
of the model.
• If you don’t export tangents with your model, glTF and the Office
renderer will assume right-handedness. • Texture sets should always be split into opaque and transparent
normal maps in a left-handed setup. Alternatively you could invert • If the model only has one texture set, duplicate the material,
the green channel (Y axis) of your normal map. remove the transparency and assign the newly created material to
Preview tools
Preview tools
Validation tool
Useful links
glTF Specification
The official glTF specification from Khronos Group
Babylon.JS
Open source 3D engine based on WebGL and JavaScript
HoloLens
Development guidelines and resources for HoloLens experiences