Erstellen von 3D-Modellen zur Verwendung auf der StartseiteCreate 3D models for use in the home

Der Windows Mixed Reality -Startpunkt ist der Ausgangspunkt, an dem Benutzer vor dem Starten von Anwendungen landen.The Windows Mixed Reality home is the starting point where users land before launching applications. Verwenden Sie beim Entwerfen Ihrer Anwendung für Windows Mixed Reality-Headsets ein 3D-Modell als App -Start Programm, und platzieren Sie die Deep-Links für 3D in der Windows Mixed Reality-Startseite.When designing your application for Windows Mixed Reality headsets, use a 3D model as an app launcher and place 3D deep links into the Windows Mixed Reality home. In diesem Artikel werden die Richtlinien für die Erstellung von 3D-Modellen beschrieben, die mit dem Windows Mixed Reality-StartThis article outlines the guidelines for creating 3D models compatible with the Windows Mixed Reality home.

Übersicht über Asset-AnforderungenAsset requirements overview

Beim Erstellen von 3D-Modellen für Windows Mixed Reality müssen einige Anforderungen erfüllt sein:When creating 3D models for Windows Mixed Reality, there are some requirements that all assets must meet:

  1. Export -Assets müssen im. GLB-Dateiformat (binäres gltf) übermittelt werden.Exporting - Assets must be delivered in the .glb file format (binary glTF)
  2. Modellierung : Assets müssen kleiner als 10.000 Dreiecke sein, dürfen nicht mehr als 64 Knoten und 32 Subnetze pro Lod aufweisen.Modeling - Assets must be less than 10k triangles, have no more than 64 nodes and 32 submeshes per LOD
  3. Material : Texturen können nicht größer als 4096 x 4096 sein, und die kleinste MIP-Karte sollte in beiden Dimensionen nicht größer als 4 sein.Materials - Textures can't be larger than 4096 x 4096 and the smallest mip map should be no larger than 4 on either dimension
  4. Animation -Animationen dürfen nicht länger als 20 Minuten bei 30 fps (36.000 Keyframes) sein und müssen <= 8192 Morph-Ziel Vertices enthalten.Animation - Animations can't be longer than 20 minutes at 30 FPS (36,000 keyframes) and must contain <= 8192 morph target vertices
  5. Optimieren : Assets sollten mithilfe von windowsmrassetconverteroptimiert werden.Optimizing - Assets should be optimized using the WindowsMRAssetConverter. Erforderlich unter Windows-Betriebssystemversionen <= 1709* und empfohlen unter Windows-Betriebssystemversionen >= 1803Required on Windows OS Versions <= 1709* and recommended on Windows OS versions >= 1803

Der Rest dieses Artikels enthält eine ausführliche Übersicht über diese Anforderungen und zusätzliche Richtlinien, um sicherzustellen, dass Ihre Modelle mit dem Windows Mixed Reality-Start gut funktionieren.The rest of this article includes a detailed overview of these requirements and extra guidelines to ensure your models work well with the Windows Mixed Reality home.

Ausführliche AnleitungenDetailed guidance

Exportieren von ModellenExporting models

Die Windows Mixed Reality-Startseite erwartet, dass 3D-Assets über das. GLB-Dateiformat mit eingebetteten Bildern und Binärdaten übermittelt werden.The Windows Mixed Reality home expects 3D assets to be delivered using the .glb file format with embedded images and binary data. GLB ist die binäre Version des gltf-Formats, bei der es sich um einen kostenlosen Open-Standard für die 3D-Asset-Übermittlung handelt, der von der Khronos-Gruppe verwaltet wirdGlb is the binary version of the glTF format, which is a royalty free open standard for 3D asset delivery maintained by the Khronos group. Da sich gltf als Industriestandard für interoperablen 3D-Inhalt entwickelt, unterstützt Microsoft das Format in Windows-apps und-Umgebungen.As glTF evolves as an industry standard for interoperable 3D content, so will Microsoft’s support for the format across Windows apps and experiences. Wenn Sie noch kein gltf-Asset erstellt haben, können Sie auf der GitHub-Seite der gltf-Arbeitsgruppe eine Liste der unterstützten Export-und Konverter finden.If you haven't created a glTF asset before you can find a list of supported exporters and converters on the glTF working group github page.

Modellierungs RichtlinienModeling guidelines

Windows erwartet anhand der folgenden Modellierungs Richtlinien, dass Assets generiert werden, um die Kompatibilität mit der gemischten Realität zu gewährleisten.Windows expects assets to be generated using the following modeling guidelines to ensure compatibility with the Mixed Reality home experience. Beachten Sie beim Modellieren des Programms Ihrer Wahl die folgenden Empfehlungen und Einschränkungen:When modeling in your program of your choice, keep in mind the following recommendations and limitations:

  1. Die up-Achse sollte auf "Y" festgelegt werden.The Up axis should be set to “Y”.
  2. Das Medienobjekt sollte für die positive Z-Achse "Vorwärts" stehen.The asset should face “forward” towards the positive Z axis.
  3. Alle Assets sollten auf der Grundebene am Ursprung der Szene (0,0) erstellt werden.All assets should be built on the ground plane at the scene origin (0,0,0)
  4. Arbeitseinheiten sollten auf Meter und Ressourcen festgelegt werden, damit Assets weltweit skaliert werden könnenWorking Units should be set to meters and assets so that assets can be authored at world scale
  5. Alle Netzen müssen nicht kombiniert werden, aber es wird empfohlen, wenn Sie auf Ressourcen beschränkte Geräte abzielen.All meshes don't need to be combined, but it's recommended if you're targeting resource constrained devices
  6. Alle Netzen sollten ein Material gemeinsam nutzen, wobei nur ein Textur Satz für das gesamte Asset verwendet wird.All meshes should share one material, with only one texture set being used for the whole asset
  7. UVS müssen in einer quadratischen Anordnung im 0-1-Bereich angeordnet werden.UVs must be laid out in a square arrangement in the 0-1 space. Vermeiden Sie das Verwenden von Texturen, auch wenn Sie zulässig sind.Avoid tiling textures although they're permitted.
  8. Multiudfs werden nicht unterstützt.Multi-UVs aren't supported
  9. Doppelte Materialien werden nicht unterstützt.Double-sided materials aren't supported

Dreiecks Anzahl und Detailebenen (LODs)Triangle counts and levels of detail (LODs)

Die Windows Mixed Reality-Startseite unterstützt keine Modelle mit mehr als 10.000 Dreiecken.The Windows Mixed Reality home doesn't support models with more than 10,000 triangles. Es wird empfohlen, dass Sie Ihre Netzen vor dem Exportieren auslassen, um sicherzustellen, dass diese Anzahl nicht überschritten wird.It’s recommended you triangulate your meshes before exporting to ensure they don't exceed this count. Windows Mr unterstützt auch optionale Geometrie Ebenen (LODs), um eine leistungsfähige und qualitativ hochwertige Darstellung sicherzustellen.Windows MR also supports optional geometry levels of detail (LODs) to ensure a performant and high-quality experience. Der windowsmrassetconverter unter stützt Sie beim Kombinieren von drei Versionen Ihres Modells in einem einzigen. GLB-Modell.The WindowsMRAssetConverter will help you combine 3 versions of your model into a single .glb model. Windows legt fest, welche Lod basierend auf der Menge der Bildschirmfläche angezeigt werden soll, die das Modell einnimmt.Windows determines which LOD to display based on the amount of screen real estate the model is taking up. Es werden nur drei Lod-Ebenen mit den folgenden empfohlenen Dreiecks Zählungen unterstützt:Only 3 LOD levels are supported with the following recommended triangle counts:

LOD-EbeneLOD Level Empfohlene Dreiecks AnzahlRecommended Triangle Count Maximale Anzahl von DreiecksMax Triangle Count
LOD 0LOD 0 10.00010,000 10.00010,000
LOD 1LOD 1 5.0005,000 10.00010,000
LOD 2LOD 2 2.5002,500 10.00010,000

Knoten Zähler und submesh-LimitsNode counts and submesh limits

Windows Mixed Reality Home unterstützt keine Modelle mit mehr als 64 Knoten oder 32 Subnetzen pro Lod.The Windows Mixed Reality home doesn't support models with more than 64 nodes or 32 submeshes per LOD. Knoten sind ein Konzept in der gltf-Spezifikation , die die Objekte in der Szene definieren.Nodes are a concept in the glTF specification that define the objects in the scene. Subnetze werden im Array von primitiven im-Objekt definiert.Submeshes are defined in the array of primitives on the mesh in the object.

FunktionFeature BESCHREIBUNGDescription Maximal unterstütztMax Supported DokumentationDocumentation
NodesNodes Objekte in der gltf-SzeneObjects in the glTF Scene 64 pro Lod64 per LOD AnwesendHere
SubnetzeSubmeshes Summe von primitiven für alle NetzenSum of primitives on all meshes 32 pro Lod32 per LOD AnwesendHere

Material Leit FädenMaterial guidelines

Texturen sollten mithilfe eines PBR-Metal-rautheit-Workflows vorbereitet werden.Textures should be prepared using a PBR metal roughness workflow. Beginnen Sie, indem Sie einen vollständigen Satz von Texturen erstellen, einschließlich Albedo, normal, Okklusion, Metallic und rauen.Begin by creating a full set of textures including Albedo, Normal, Occlusion, Metallic, and Roughness. Windows Mixed Reality unterstützt Texturen mit Auflösungen bis 4096x4096, aber es wird empfohlen, dass Sie die Erstellung bei 512x512 durch schreiben.Windows Mixed Reality supports textures with resolutions up to 4096x4096 but it's recommended that you author at 512x512. Texturen sollten bei Auflösungen in Vielfachen von 4 erstellt werden.Textures should be authored at resolutions in multiples of 4. Dies ist eine Voraussetzung für das Komprimierungs Format, das in den nachstehend beschriebenen Export Schritten auf Texturen angewendet wird.This is a requirement for the compression format applied to textures in the exporting steps outlined below. Beim Erstellen von MIP-Zuordnungen oder einer Textur muss das niedrigste MIP höchstens 4 x 4 sein.When generating mip maps or a texture, the lowest mip must be a maximum of 4x4.

Empfohlene Textur GrößeRecommended Texture Size Maximale Textur GrößeMax Texture Size Niedrigste MIPLowest Mip
512 x 512512x512 4096x40964096x4096 Max. 4 x 4max 4x4

Karte "Albedo (Basis Farbe)"Albedo (base color) map

Rohfarbe ohne Beleuchtungs Informationen.Raw color with no lighting information. Diese Karte enthält auch die Reflektions-und diffusen Informationen für Metal (weiß in der metallischen Karte) und die Flächen (schwarz in der metallischen Karte).This map also contains the reflectance and diffuse information for metal (white in the metallic map) and insulator (black in the metallic map) surfaces respectively.

NormalNormal

Tangens Raum normaler KarteTangent Space Normal map

RautenzuordnungRoughness map

Beschreibt die-Oberfläche des-Objekts.Describes the microsurface of the object. Weiß 1,0 ist grob schwarz 0,0 ist glatt.White 1.0 is rough Black 0.0 is smooth. Diese Zuordnung gibt dem Asset das meiste Zeichen, da es die Oberfläche wirklich beschreibt.This map gives the asset the most character, as it truly describes the surface. Beispielsweise Kratzer, Fingerabdrücke, smudges, Grime usw.For example, scratches, fingerprints, smudges, grime, and so on.

Ambiente-Okklusions ZuordnungAmbient occlusion map

Wertskalierungs Zuordnung mit Bereichen mit okkludierten Licht, die die Reflektionen blockierenValue scale map showing areas of occluded light, which blocks reflections

Metallische KarteMetallic map

Weist den Shader an, wenn etwas Metal ist oder nicht.Tells the shader if something is metal or not. RAW Metal = 1,0 White Non-Metal = 0,0 Black.Raw Metal = 1.0 white Non-metal = 0.0 black. Es können vorübergehende graue Werte vorhanden sein, die darauf hinweisen, dass das unformatierte Metall wie z. b. "Dirt" ist, aber im Allgemeinen sollte diese Karte nur schwarz und weiß seinThere can be transitional gray values that indicate something covering the raw metal such as dirt, but in general this map should be black and white only.

OptimierungenOptimizations

Windows Mixed Reality Home bietet eine Reihe von Optimierungen, die auf der Core-gltf-Spezifikation liegen, die mit benutzerdefinierten Erweiterungen definiert wurde.Windows Mixed Reality home offers a series of optimizations on top of the core glTF spec defined using custom extensions. Diese Optimierungen sind in Windows-Versionen <= 1709 erforderlich und werden für neuere Versionen von Windows empfohlen.These optimizations are required on Windows versions <= 1709 and recommended on newer versions of Windows. Mithilfe des Windows Mixed Reality Asset Converter, der auf GitHub verfügbarist, können Sie ein beliebiges gltf 2,0-Modell problemlos optimieren.You can easily optimize any glTF 2.0 model using the Windows Mixed Reality Asset Converter available on GitHub. Dieses Tool führt die richtige Textur Verpackung und Optimierungen wie unten angegeben aus.This tool will perform the correct texture packing and optimizations as specified below. Zur allgemeinen Verwendung empfiehlt sich die Verwendung von windowsmrassetconverter. Wenn Sie jedoch mehr Kontrolle über die Benutzerfunktion benötigen und eine eigene Optimierungs Pipeline erstellen möchten, können Sie auf die unten angegebene Ausführliche Spezifikation verweisen.For general usage, we recommend using the WindowsMRAssetConverter, but if you need more control over the experience and would like to build your own optimization pipeline then you can refer to the detailed specification below.

Hinweis

Eine definitive Liste der Möglichkeiten für genaue Modell Limits finden Sie im Artikel zur 3D-Modelloptimierung zur Verwendung in Dynamics 365-Anwendungen.For a definitive list of what the possibilities are for exact model limits, refer to the 3D model optimization article for use in Dynamics 365 applications.

MaterialienMaterials

Zum Verbessern der Lade Zeit für Medienobjekte in Mixed Reality-Umgebungen unterstützt Windows Mr das Rendern komprimierter DDS-Texturen entsprechend dem in diesem Abschnitt definierten Textur Verpackungs Schema.To improve asset loading time in Mixed Reality environments Windows MR supports rendering compressed DDS textures packed according to the texture packing scheme defined in this section. Auf DDS-Texturen wird mit der MSFT_texture_dds-Erweiterungverwiesen.DDS textures are referenced using the MSFT_texture_dds extension. Das Komprimieren von Texturen wird dringend empfohlen.Compressing textures is highly recommended.

HoloLensHoloLens

Die auf hololens basierende gemischte Realität erwartet, dass Texturen mithilfe eines 2-Textur-Setups verpackt werden, indem die folgende Packungs Spezifikation verwendet wird:HoloLens-based mixed reality experiences expect textures to be packed using a 2-texture setup using the following packing specification:

gltf-EigenschaftglTF Property StrukturTexture Verpackungs SchemaPacking Scheme
pbrmetallicroughnesspbrMetallicRoughness baseColorTexturebaseColorTexture Rot (R), grün (G), blau (B)Red (R), Green (G), Blue (B)
MSFT_packing_normalRoughnessMetallicMSFT_packing_normalRoughnessMetallic normalroughnessmetallictexturenormalRoughnessMetallicTexture Normal (RG), rautheit (B), metallisch (a)Normal (RG), Roughness (B), Metallic (A)

Beim Komprimieren der DDS-Texturen wird die folgende Komprimierung auf jeder Zuordnung erwartet:When compressing the DDS textures the following compression is expected on each map:

StrukturTexture Erwartete KomprimierungExpected Compression
basecolortexture, normroughnessmetallictexturebaseColorTexture, normalRoughnessMetallicTexture Bzw bc7BC7

Immersive (VR)-HeadsetsImmersive (VR) headsets

Die PC-basierte Windows Mixed Reality-Umgebung für immersive (VR)-Headsets erwartet, dass Texturen mithilfe eines 3-Textur-Setups verpackt werden, indem die folgende Packungs Spezifikation verwendet wird:PC-based Windows Mixed Reality experiences for immersive (VR) headsets expect textures to be packed using a 3-texture setup using the following packing specification:

Windows-Betriebssystem >= 1803Windows OS >= 1803

gltf-EigenschaftglTF Property StrukturTexture Verpackungs SchemaPacking Scheme
pbrmetallicroughnesspbrMetallicRoughness baseColorTexturebaseColorTexture Rot (R), grün (G), blau (B)Red (R), Green (G), Blue (B)
MSFT_packing_occlusionRoughnessMetallicMSFT_packing_occlusionRoughnessMetallic oksionroughnessmetallictextureocclusionRoughnessMetallicTexture Okklusion (R), rautheit (G), metallisch (B)Occlusion (R), Roughness (G), Metallic (B)
MSFT_packing_occlusionRoughnessMetallicMSFT_packing_occlusionRoughnessMetallic normalTexturenormalTexture Normal (RG)Normal (RG)

Beim Komprimieren der DDS-Texturen wird die folgende Komprimierung auf jeder Zuordnung erwartet:When compressing the DDS textures the following compression is expected on each map:

StrukturTexture Erwartete KomprimierungExpected Compression
normalTexturenormalTexture BC5BC5
basecolortexture, oksionroughnessliclictexturebaseColorTexture, occlusionRoughnessMetallicTexture Bzw bc7BC7
Windows-Betriebssystem <= 1709Windows OS <= 1709

gltf-EigenschaftglTF Property StrukturTexture Verpackungs SchemaPacking Scheme
pbrmetallicroughnesspbrMetallicRoughness baseColorTexturebaseColorTexture Rot (R), grün (G), blau (B)Red (R), Green (G), Blue (B)
MSFT_packing_occlusionRoughnessMetallicMSFT_packing_occlusionRoughnessMetallic roughnessmetallicocclusiontextureroughnessMetallicOcclusionTexture Rautheit (R), metallisch (G), Okklusion (B)Roughness (R), Metallic (G), Occlusion (B)
MSFT_packing_occlusionRoughnessMetallicMSFT_packing_occlusionRoughnessMetallic normalTexturenormalTexture Normal (RG)Normal (RG)

Beim Komprimieren der DDS-Texturen wird die folgende Komprimierung auf jeder Zuordnung erwartet:When compressing the DDS textures the following compression is expected on each map:

StrukturTexture Erwartete KomprimierungExpected Compression
normalTexturenormalTexture BC5BC5
basecolortexture, roughnessmetallicocclusiontexturebaseColorTexture, roughnessMetallicOcclusionTexture Bzw bc7BC7

Hinzufügen von Mesh-LODsAdding mesh LODs

Windows Mr verwendet Geometrie Knoten-LODs, um 3D-Modelle abhängig von der Bildschirm Abdeckung in verschiedenen Detailebenen zu Rendering.Windows MR uses geometry node LODs to render 3D models in different levels of detail depending on on-screen coverage. Diese Funktion ist zwar technisch nicht erforderlich, wird jedoch für alle Ressourcen empfohlen.While this feature is technically not required, it's recommended for all assets. Derzeit werden von Windows drei Detailebenen unterstützt.Currently Windows supports 3 levels of detail. Der Standard-Lod ist 0 (null), der die höchste Qualität darstellt.The default LOD is 0, which represents the highest quality. Andere LODs werden sequenziell nummeriert, z. b. 1, 2 und erzielen die Qualität progressiv.Other LODs are numbered sequentially, for example, 1, 2 and get progressively lower in quality. Der Windows Mixed Reality Asset Converter unterstützt das Erstellen von Assets, die diese Lod-Spezifikation erfüllen, indem mehrere gltf-Modelle akzeptiert und in einem einzelnen Medienobjekt mit gültigen Lod-Ebenen zusammengeführt werden.The Windows Mixed Reality Asset Converter supports generating assets that meet this LOD specification by accepting multiple glTF models and merging them into a single asset with valid LOD levels. In der folgenden Tabelle sind die erwarteten Lod-Reihen folgen und Dreiecks Ziele aufgeführt:The following table outlines the expected LOD ordering and triangle targets:

LOD-EbeneLOD Level Empfohlene Dreiecks AnzahlRecommended Triangle Count Maximale Anzahl von DreiecksMax Triangle Count
LOD 0LOD 0 10.00010,000 10.00010,000
LOD 1LOD 1 5.0005,000 10.00010,000
LOD 2LOD 2 2.5002,500 10.00010,000

Wenn Sie LODs verwenden, geben Sie immer drei Lod-Ebenen an.When using LODs always specify 3 LOD levels. Fehlende LODs bewirken, dass das Modell nicht unerwartet wieder verwendet wird, wenn das Lod-System zur fehlenden Lod-Ebene wechselt.Missing LODs will cause the model to not render unexpectedly as the LOD system switches to the missing LOD level. in gltf 2,0 werden LODs derzeit nicht als Teil der Kern Spezifikation unterstützt. LODs sollten mithilfe der MSFT_LOD Erweiterungdefiniert werden.glTF 2.0 doesn't currently support LODs as part of the core spec. LODs should be defined using the MSFT_LOD extension.

Bildschirm AbdeckungScreen coverage

LODs werden in Windows Mixed Reality auf Grundlage eines Systems angezeigt, das durch den für jede Lod festgelegten Bildschirm Abdeckungs Wert gesteuert wird.LODs are displayed in Windows Mixed Reality based on a system driven by the screen coverage value set on each LOD. Objekte, die gerade einen größeren Teil des Bildschirmbereichs beanspruchen, werden auf einer höheren Lod-Ebene angezeigt.Objects that are currently consuming a larger portion of the screen space are displayed at a higher LOD level. Die Bildschirm Abdeckung ist nicht Teil der Core gltf 2,0-Spezifikation und muss mit MSFT_ScreenCoverage im Abschnitt "Extras" der MSFT_lod Erweiterungangegeben werden.Screen coverage isn't a part of the core glTF 2.0 spec and must be specified using MSFT_ScreenCoverage in the “extras” section of the MSFT_lod extension.

LOD-EbeneLOD Level Empfohlener BereichRecommended Range StandardbereichDefault Range
LOD 0LOD 0 100%-50%100% - 50% 0.50.5
LOD 1LOD 1 Unter 50%-20%Under 50% - 20% 0.20.2
LOD 2LOD 2 Weniger als 20%-1%Under 20% - 1% 0.010.01
LOD 4LOD 4 Unter 1%Under 1% -

Animations RichtlinienAnimation guidelines

Hinweis

Diese Funktion wurde als Teil des Windows 10-Updates vom April 2018hinzugefügt.This feature was added as part of Windows 10 April 2018 Update. In älteren Versionen von Windows werden diese Animationen nicht wiedergegeben, Sie werden jedoch nach der Anleitung in diesem Artikel weiterhin geladen, wenn Sie erstellt werden.On older versions of Windows these animations won't play back, however, they will still load if authored according to the guidance in this article.

Die Mixed Reality-Startseite unterstützt animierte gltf-Objekte auf hololens-und immersive-Headsets (VR).The mixed reality home supports animated glTF objects on HoloLens and immersive (VR) headsets. Wenn Sie Animationen für Ihr Modell verwenden möchten, müssen Sie die Animations Zuordnungs Erweiterung im gltf-Format verwenden.If you wish to trigger animations on your model, you'll need to use the Animation Map extension on the glTF format. Mit dieser Erweiterung können Sie Animationen im gltf-Modell basierend auf dem vorhanden sein des Benutzers auf der ganzen Welt auslöschen, z. b. eine Animation, wenn sich der Benutzer in der Nähe des Objekts befindet oder wenn er sich darauf befindet.This extension lets you trigger animations in the glTF model based on the user's presence in the world, for example trigger an animation when the user is close to the object or while they're looking at it. Wenn Sie ein gltf-Objekt mit Animationen haben, aber keine Trigger definieren, werden die Animationen nicht wiedergegeben.If you glTF object has animations, but doesn't define triggers the animations won't be played back. Der folgende Abschnitt beschreibt einen Workflow zum Hinzufügen dieser Trigger zu einem animierten gltf-Objekt.The section below describes one workflow for adding these triggers to any animated glTF object.

ToolsTools

Laden Sie zunächst die folgenden Tools herunter, wenn Sie noch nicht vorhanden sind.First, download the following tools if you don't have them already. Mit diesen Tools können Sie ganz einfach ein beliebiges gltf-Modell öffnen, eine Vorschau anzeigen, Änderungen vornehmen und das Back-End als gltf oder. GLB speichern:These tools will make it easy to open any glTF model, preview it, make changes and save back out as glTF or .glb:

  1. Visual Studio CodeVisual Studio Code
  2. gltf-Tools für Visual Studio CodeglTF Tools for Visual Studio Code

Öffnen und Anzeigen der Vorschau des ModellsOpening and previewing the model

Öffnen Sie zunächst das gltf-Modell in vscode, indem Sie die. gltf-Datei in das Editor-Fenster ziehen.Start by opening up the glTF model in VSCode by dragging the .glTF file into the editor window. Wenn Sie über eine. GLB-Datei anstelle einer. gltf-Datei verfügen, können Sie Sie mit dem heruntergeladenen Tool "gltf Tools" in vscode importieren.If you've a .glb instead of a .glTF file you can import it into VSCode using the glTF Tools addon that you downloaded. Wechseln Sie zu "View-> Command Palette", und beginnen Sie dann mit der Eingabe von "gltf" in der Befehls Palette, und wählen Sie "gltf: Import from GLB" aus. Daraufhin wird eine Dateiauswahl angezeigt, mit der Sie eine. GLB-Datei in importieren können.Go to "View -> Command Palette" and then begin typing "glTF" in the command palette and select "glTF: Import from glb", which will pop up a file picker for you to import a .glb with.

Nachdem Sie das gltf-Modell geöffnet haben, sollte der JSON-Code im Editor-Fenster angezeigt werden.Once you've opened your glTF model, you should see the JSON in the editor window. Sie können auch eine Vorschau des Modells in einem Live-3D-Viewer mithilfe von anzeigen, indem Sie mit der rechten Maustaste auf den Dateinamen klicken und die Befehls Verknüpfung "gltf: Preview 3D Model" im Kontextmenü auswählen.You can also preview the model in a live 3D viewer using the by right-clicking the file name and selecting the "glTF: Preview 3D Model" command shortcut from the right click menu.

Hinzufügen der TriggerAdding the triggers

Animations Trigger werden dem gltf-Modell JSON mithilfe der Animations Zuordnungs Erweiterung hinzugefügt.Animation triggers are added to glTF model JSON using the Animation Map extension. Die Animations Zuordnungs Erweiterung wird hier auf GitHub öffentlich dokumentiert (Hinweis: Dies ist eine Entwurfs Erweiterung).The animation map extension is publicly documented here on GitHub (NOTE: THIS IS A DRAFT EXTENSION). Wenn Sie dem Modell die Erweiterung hinzufügen möchten, Scrollen Sie einfach zum Ende der gltf-Datei im Editor, und fügen Sie der Datei den Block "extensionsused" und "Extensions" hinzu, wenn Sie nicht bereits vorhanden sind.To add the extension to your model just scroll to the end of the glTF file in the editor and add the "extensionsUsed" and "extensions" block to your file if they don't already exist. Im Abschnitt "extensionsused" fügen Sie einen Verweis auf die Erweiterung "EXT_animation_map" hinzu, und im Block "Extensions" fügen Sie die Zuordnungen den Animationen im Modell hinzu.In the "extensionsUsed" section, you'll add a reference to the "EXT_animation_map" extension and in the "extensions" block you'll add your mappings to the animations in the model.

Wie in der Spezifikation angegeben, definieren Sie, was die Animation auslöst, indem Sie die "semantische" Zeichenfolge in einer Liste von "Animationen" verwendet, bei der es sich um ein Array von Animations Indizes handelt.As noted in the spec you define what triggers the animation using the "semantic" string on a list of "animations", which is an array of animation indices. Im folgenden Beispiel haben wir die Animation angegeben, die abgespielt werden soll, während der Benutzer am Objekt sucht:In the example below we've specified the animation to play while the user is gazing at the object:

  "extensionsUsed": [
    "EXT_animation_map"
  ],
  "extensions" : {
      "EXT_animation_map" : {
            "bindings": [
                {
                    "semantic": "GAZE",
                    "animations": [0]
                }
            ]
      }
  }

Die folgenden Animations Trigger-Semantik wird von der Windows Mixed Reality-Startseite unterstützt.The following animation triggers semantics are supported by the Windows Mixed Reality home.

  • "Always": beständig Schleife einer Animation"ALWAYS": Constantly loop an animation
  • "Gehalten": Schleife während der gesamten Dauer, in der ein Objekt gepackt wird."HELD": Looped during the entire duration an object is grabbed.
  • "Blick": Schleifen Schleifen, während ein Objekt betrachtet wird."GAZE": Looped while an object is being looked at
  • "Near": Schleife, während sich ein Viewer in der Nähe eines Objekts befindet."PROXIMITY": Looped while a viewer is near to an object
  • "Zeigen": Schleife, während ein Benutzer auf ein Objekt zeigt"POINTING": Looped while a user is pointing at an object

Speichern und exportierenSaving and exporting

Nachdem Sie die Änderungen an Ihrem gltf-Modell vorgenommen haben, können Sie es direkt als gltf speichern.Once you've made the changes to your glTF model, you can save it directly as glTF. Sie können auch mit der rechten Maustaste auf den Namen der Datei im Editor klicken und "gltf: Export to GLB (Binary File)" auswählen, um eine. GLB-Datei zu exportieren.You can also right-click the name of the file in the editor and select "glTF: Export to GLB (binary file)" to export a .glb.

BeschränkungenRestrictions

Animationen dürfen nicht länger als 20 Minuten sein und dürfen nicht mehr als 36.000 Keyframes enthalten (20 Minuten bei 30 fps).Animations can't be longer than 20 minutes and can't contain more than 36,000 keyframes (20 mins at 30 FPS). Außerdem werden bei Verwendung von Morph-Ziel basierten Animationen nicht mehr als 8192 Morph-Ziel Vertices oder weniger überschritten.Additionally when using morph target-based animations don't exceed 8192 morph target vertices or less. Wenn diese Anzahl überschritten wird, wird das animierte Asset in der Windows Mixed Reality-Startseite nicht unterstützt.Exceeding these counts will cause the animated asset to be unsupported in the Windows Mixed Reality home.

FunktionFeature MaximumMaximum
DurationDuration 20 Minuten20 minutes
KeyframesKeyframes 36.00036,000
Ziel Vertices für MorphMorph Target Vertices 81928192

Hinweise zur gltf-ImplementierungglTF Implementation notes

Windows Mr unterstützt das Kippen von Geometrie mithilfe negativer Skalen nicht.Windows MR doesn't support flipping geometry using negative scales. Geometrie mit negativen Skalen führt wahrscheinlich zu visuellen Artefakten.Geometry with negative scales will likely result in visual artifacts.

Das gltf-Asset muss auf die Standard Szene zeigen, wobei das Scene-Attribut verwendet wird, das von Windows Mr gerendert wird.The glTF asset MUST point to the default scene using the scene attribute to be rendered by Windows MR. Zusätzlich erfordert das Windows Mr-gltf-Lade Modul vor dem Windows 10-Update vom April 2018 Accessoren:Additionally the Windows MR glTF loader before the Windows 10 April 2018 update requires accessors:

  • Muss über minimale und maximale Werte verfügen.Must have min and max values.
  • Der Typ Skalar muss ein componentType-UNSIGNED_SHORT (5123) oder UNSIGNED_INT (5125) sein.Type SCALAR must be componentType UNSIGNED_SHORT (5123) or UNSIGNED_INT (5125).
  • Type vec2 und VEC3 müssen componentType float (5126) sein.Type VEC2 and VEC3 must be componentType FLOAT (5126).

Die folgenden Materialeigenschaften werden aus der Core gltf 2,0-Spezifikation verwendet, sind jedoch nicht erforderlich:The following material properties are used from core glTF 2.0 spec but not required:

  • basecolorfactor, Metal licfactor, roughnessfactorbaseColorFactor, metallicFactor, roughnessFactor
  • basecolortexture: muss auf eine in DDS gespeicherte Textur zeigen.baseColorTexture: Must point to a texture stored in dds.
  • emissivetexture: muss auf eine in DDS gespeicherte Textur zeigen.emissiveTexture: Must point to a texture stored in dds.
  • emissiveFactoremissiveFactor
  • Alpha AMODEalphaMode

Die folgenden Materialeigenschaften werden von der Kern Spezifikation ignoriert:The following material properties are ignored from core spec:

  • Alle Multi-UVSAll Multi-UVs
  • metalroughnesstexture: muss stattdessen die unten definierte Microsoft-optimierte Textur Verpackung verwenden.metalRoughnessTexture: Must instead use Microsoft optimized texture packing defined below
  • normaltexture: muss stattdessen die unten definierte Microsoft-optimierte Textur Verpackung verwenden.normalTexture: Must instead use Microsoft optimized texture packing defined below
  • normal skalierennormalScale
  • oksiontexture: muss stattdessen die unten definierte Microsoft-optimierte Textur Verpackung verwenden.occlusionTexture: Must instead use Microsoft optimized texture packing defined below
  • oksions StärkeocclusionStrength

In Windows Mr werden Zeilen und Punkte im primitiven Modus nicht unterstützt.Windows MR doesn't support primitive mode lines and points.

Nur ein einzelnes UV-Vertex-Attribut wird unterstützt.Only a single UV vertex attribute is supported.

Weitere RessourcenMore resources

Weitere InformationenSee also