Add toolkit.standardassets package

This commit is contained in:
Santiago Lo Coco 2024-10-13 18:54:57 +02:00
parent 4902527289
commit 575c928157
331 changed files with 53032 additions and 0 deletions

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a725dc666d93482abb094d384a8a968c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 291bf9326e517b0489c2ee53d0a6a63f
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 40ae713ddf420714bbc1a3b5c3f2eac1
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 2193e9060a088b24f97f48d1e1a4a862
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: bcae4cbce6135d84b9b04ee9e5b909f4
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: a16c53885bdbc54469088880ea44a9fd
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: ec33d8a6027c1574390812966f8aef94
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 72d90092d0f1a734eb1cfcf71b8fa2e4
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 82bb32b8900f55c488f190d835ffcd99
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 765efbcf7ca1773488edcc8ab6ba4923
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 9d90886bb6646244e852a0acb1de3a3b
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: bdc1f15a0c976854780adcd7e56cfb3e
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 23a78d131feb8774ebe5dd1ea221933e
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 06f9d598e90313646bbff63530142344
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 848c1453f7177fb46a18dff735a5fdc4
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 3448d870fb0a1b24ab44f20f2e1f982d
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 5e03cdafc88015c47af4cad5d65de327
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: e35ddb0c8710c2949a37a6975f6847db
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 45a90682f74bb0c41b65994c63b74e60
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: ac992f1ec8cfba145b10655b334ec711
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 6c0efce9e4f4243449555af66e975f27
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 0632575a55cf09349a999a10968f6395
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 32c013149113ba24cb267e1e3f6725c7
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 170429180f309a940b54c1001e94e54c
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
fileFormatVersion: 2
guid: 4075162bd7e8d9b4387ba77aeb751a0d
AudioImporter:
externalObjects: {}
serializedVersion: 6
defaultSettings:
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
preloadAudioData: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,21 @@
# Changelog
## 2.5.1
[MRTK 2.5.1 changes](https://github.com/microsoft/MixedRealityToolkit-Unity/milestone/15?closed=1)
## 2.5.0
[MRTK 2.5.0 changes](https://github.com/microsoft/MixedRealityToolkit-Unity/milestone/12?closed=1)
## 2.4.0
[MRTK 2.4.0 changes](https://github.com/microsoft/MixedRealityToolkit-Unity/milestone/11?closed=1)
## 2.3.0
[MRTK 2.3.0 changes](https://github.com/microsoft/MixedRealityToolkit-Unity/milestone/10?closed=1)
## 2.2.0
[MRTK 2.2.0 changes](https://github.com/microsoft/MixedRealityToolkit-Unity/milestone/9?closed=1)

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a0829ffee66e1dc459348c774dee10d1
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,169 @@
# Authors
The Microsoft Mixed Reality Toolkit is a collaborative project containing contributions from individuals around the world. Our sincere thanks to all who have contributed and all who continue to contribute.
- achaperon
- Adam Mitchell (AdamMitchell-ms)
- Addison Linville (radicalad)
- ADP-JoNeff
- Against Lightning (AgainstLightning)
- Agredek
- alandergrouse (alandergrouse)
- Alex Floyd (elbuhofantasma)
- Alexander Seeck (Alexees)
- Alon Farchy (afarchy)
- Andrew Hall (ryzngard)
- Anton Zachesov (googlan)
- Anuraag Puri (anuraag016)
- Arsen (arsdever)
- artsouflMS
- Ben Godard (genbod)
- Bernadette Thalhammer (thalbern)
- Bertrand Oustrière (BertrandOustriere)
- Billy Franscois (BillyFrcs)
- Blake Gross (blgrossMS)
- Bowen Zhang (BowenBZ)
- Brandon Furtwangler (brandf)
- Bryan Truong (bhtruong93)
- C. M. Barth (chrisfromwork)
- Cameron (Cameron-Micka)
- cartwrightluke
- Casey Crabb (ptc-ccrabb)
- CDiaz-MS
- cefoot
- cellarmation
- CharlesWanMS
- cihankurt98
- CoPres (CoPrez)
- Craig (Craig-J)
- Cristiano Carvalheiro (ccarvalheiro)
- Daniel Hofmann (danielhofmann-ms)
- David Evans (phosphoer)
- David Johnson (djohnsomsft)
- David Kline (davidkline-ms)
- deibich
- deibu
- Derek (derekfreed)
- Dino Fejzagić (FejZa)
- Dirk Songür (DirkSonguer)
- Dominic Aglialoro (DominicAglialoro)
- ErianVazquez-Microsoft
- Eric Carter (Ecnassianer)
- Eric Fiscus (MRW-Eric)
- Eric O'Brien (ericob)
- Eric prvncher (provencher)
- Esteban Fuentealba (EstebanFuentealba)
- etiennemargraff (meulta)
- Eusebiu Marcu (eusebiu)
- Evan Tice (in2dair)
- Finn Sinclair (Zee2)
- Florian Jasche (FlorianJa)
- flufy3d (flufy3d)
- Forrest Trepte (ForrestTrepte)
- Francesco Clasadonte (klasaf)
- gauravb4
- George Johnston (gejohnst)
- gilbdev (gilbdev)
- Grace Lee (grayclee)
- Graham Bury (grbury)
- Harrison Ferrone (hferrone)
- Harrison Yu (harrisonyu)
- hybridherbst
- Hyung-il Kim (hyungilkim)
- Iulian Radu (iuli4n)
- Jack Yang (jackyangzzh)
- James Provan (JamesProvan-UL)
- Jamie Magee (JamieMagee)
- Jared Bienz [MSFT] (jbienzms)
- Jarod (jshowacre)
- Jerome Humbert (djee-ms)
- Jesse Vander Does (FreakTheMighty)
- John (johnppella)
- Jon Palmer (JonathanPalmerGD)
- Jonathan Dana (Nakda)
- Jonathan Palmer (JPalmerDev)
- Jonathon Cobb (jonathoncobb)
- Joost van Schaik (LocalJoost)
- Josh Wittner (jwittner)
- julesra
- Julia Schwarz (julenka)
- Julian Löhr (jloehr)
- julianloehr-kg
- JungJik Lee (fnwinter)
- jverral
- keith-phillips
- Ken Jakubzak (KenJakubzak)
- Kent1 (Kent1LG)
- Kevin Foley (kevinfoley)
- Kevin Kennedy (KevinKennedy)
- Kevin Semple (polar-kev)
- kircher1
- kiyasu (holohiko)
- Kjakubzak (Kjakubzak)
- Kurtis (keveleigh)
- LaneMax
- Lars Simkins (Railboy)
- Lei (idea-lei)
- Luboš Vonásek (lvonasek)
- Luis Valverde (luval-microsoft)
- Luis Valverde (luis-valverde-ms)
- Lukas Tönne (lukastoenneMS)
- Maciej Borowik (macborow)
- Malcolm Tyrrell (MalcolmTyrrell)
- maleicacid (kazuki0824)
- malnas01
- Manuel Pezzera (manuelpezzera)
- Marek Stój (marek-stoj)
- Mark Finch (fast-slow-still)
- Matteo Valoriani (mvaloriani)
- Matthew Johnson (matthejo)
- MaxPalmer-UH
- MaxWang-MS
- mbeagley-MS
- Michael Hoffman (m-the-hoff)
- Michael House (michael-house)
- Michael Kozlowski (mpkoz)
- Michael Notter (mikenotter)
- michael-g (insominx)
- ms738
- Myranda (myrandaGoesToSpace)
- Nathan Ostrander (naostranMS)
- Niall Milsom (MenelvagorMilsom)
- NoTuxNoBux (NoTuxNoBux)
- omanuke
- Oscar Salandin (ossala)
- PatientEz
- Patrick Cook (darax)
- Philipp (AllBecomesGood)
- ritijain
- Robert Butterworth (RobertButterworthMS)
- Robert Onulak (Ziugy)
- Roberto Sonnino (robertos)
- RogPodge
- Roland Smeenk (rolandsmeenk)
- Rosthouse (Rosthouse)
- rwinj
- SabinMGeorge
- Sarah (SarahSexton)
- Shawn Gwin (sgwin)
- Shinya Tachihara (decoc)
- Simon (Darkside) Jackson (SimonDarksideJ)
- Simon Ferquel (simonferquel)
- sostel
- Srinjoy Majumdar (srinjoym)
- Stefan Wasserbauer (wassx)
- Stephen Hodgson (StephenHodgson)
- Steve Leigh (xwipeoutx)
- Sue Loh [MS] (sloh-ms)
- tarukosu (tarukosu)
- Tim Gerken (timGerken)
- Todd Williams (killerantz)
- Troy Ferrell (Troy-Ferrell)
- Vanessa Oliva (vaoliva)
- Vsevolod Belskiy (Proton-V)
- Weasy (Weasy666)
- Will (wiwei)
- William Tian (witian)
- Wonkee (wonkee-kim)
- Yoon Park (cre8ivepark)
- yoyo (Yoyozilla)

View File

@ -0,0 +1,4 @@
# Microsoft Mixed Reality Toolkit
[Getting Started](https://docs.microsoft.com/windows/mixed-reality/develop/unity/mrtk-getting-started)
[MRTK Documentation](https://docs.microsoft.com/windows/mixed-reality/mrtk-unity)

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9d0a5976f05b106438254198566dafd8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
[assembly: System.Reflection.AssemblyVersion("2.8.3.0")]
[assembly: System.Reflection.AssemblyFileVersion("2.8.3.0")]
[assembly: System.Reflection.AssemblyProduct("Microsoft® Mixed Reality Toolkit StandardAssets")]
[assembly: System.Reflection.AssemblyCopyright("Copyright © Microsoft Corporation")]

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: dc12862daab58004f943b7fa53713576
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,14 @@
{
"name": "Microsoft.MixedReality.Toolkit.StandardAssets.Editor",
"references": [],
"optionalUnityReferences": [],
"includePlatforms": [
"Editor"
],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": []
}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e97aa3e5b44dd784d92300a3ff12eb17
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,218 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
using System.Collections.Generic;
using System.IO;
using UnityEditor;
using UnityEngine;
namespace Microsoft.MixedReality.Toolkit.Utilities.Editor
{
[InitializeOnLoad]
static class OnLoadUtilities
{
private const string ShaderSentinelGuid = "05852dd420bb9ec4cb7318bfa529d37c";
private const string ShaderSentinelFile = "MRTK.Shaders.sentinel";
private const string ShaderImportDestination = "MRTK/Shaders";
private const string IgnoreFileName = "IgnoreUpdateCheck.sentinel";
static OnLoadUtilities()
{
EnsureShaders(false);
}
/// <summary>
/// Checks for updated shaders and bypasses the ignore update check.
/// </summary>
[MenuItem("Mixed Reality/Toolkit/Utilities/Check for Shader Updates")]
private static void CheckForShaderUpdates()
{
EnsureShaders(true);
}
/// <summary>
/// Ensures that MRTK shader files are present in a writable location. To support the
/// Universal Render Pipeline, shader modifications must be persisted.
/// </summary>
/// <param name="bypassIgnore">Causes the shader update code to disregard the ignore file.</param>
private static void EnsureShaders(bool bypassIgnore)
{
DirectoryInfo packageShaderFolder = FindShaderFolderInPackage();
if (bypassIgnore)
{
// The customer is manually checking for updates, delete the ignore file
string sentinelPath = AssetDatabase.GUIDToAssetPath(ShaderSentinelGuid);
if (!string.IsNullOrWhiteSpace(sentinelPath))
{
FileInfo ignoreFile = new FileInfo(Path.Combine(new FileInfo(sentinelPath).Directory.FullName, IgnoreFileName));
if (ignoreFile.Exists)
{
ignoreFile.Delete();
}
ignoreFile.Refresh();
}
}
if (!AssetsContainsShaders(packageShaderFolder))
{
ImportShaderFiles(packageShaderFolder);
}
}
/// <summary>
/// Checks to see if the Assets or Packages (if embedded) folder trees contains the MRTK shaders.
/// </summary>
/// <returns>True if the shader sentinel file is found, otherwise false.</returns>
private static bool AssetsContainsShaders(DirectoryInfo packageShaderFolder)
{
string sentinelPath = AssetDatabase.GUIDToAssetPath(ShaderSentinelGuid);
// If we do not find the sentinel, we need to import the shaders.
if (string.IsNullOrWhiteSpace(sentinelPath))
{
return false;
}
// Getting here indicates that the project's Assets folder contains the shader sentinel.
// Check for the "ignore this check" file, if present we do NOT import
FileInfo ignoreFile = new FileInfo(Path.Combine(new FileInfo(sentinelPath).Directory.FullName, IgnoreFileName));
if (ignoreFile.Exists)
{
return true;
}
// If the package shader folder does not exist, there is nothing for us to do.
if ((packageShaderFolder == null) || !packageShaderFolder.Exists)
{
return true;
}
// Get the versions of the sentinel files,
int packageVer = ReadSentinelVersion(Path.Combine(packageShaderFolder.FullName, ShaderSentinelFile));
int assetVer = ReadSentinelVersion(sentinelPath);
// No need to copy if the versions are the same.
if (packageVer == assetVer)
{
return true;
}
string message = (packageVer < assetVer) ?
"The MRTK shaders older than those in your project, do you wish to overwrite the existing shaders?" :
"Updated MRTK shaders are available, do you wish to overwrite the existing shaders?";
int dialogResponse = EditorUtility.DisplayDialogComplex(
"Mixed Reality Toolkit Standard Assets",
message +
"\n\nNOTE: Overwriting will lose any customizations and may require reconfiguring the render pipeline.",
"Yes", // returns 0
"Ignore", // returns 1 - placed in the cancel slot to force the button order as Yes, No, Ignore
"No"); // returns 2
if (dialogResponse == 1)
{
// Write an "ignore this check" file to prevent future prompting
if (!ignoreFile.Directory.Exists)
{
ignoreFile.Directory.Create();
}
ignoreFile.Create();
}
ignoreFile.Refresh();
// Return the inverse of the dialog result. Result of true means we want to overwrite, this method returns false
// to cause an overwrite.
return (dialogResponse != 0);
}
/// <summary>
/// Finds the shader folder within an installed or embedded package.
/// </summary>
/// <returns>
/// DirectoryInfo object representing the shader folder in the package cache.
/// If not found, returns null.
/// </returns>
private static DirectoryInfo FindShaderFolderInPackage()
{
List<string> searchPaths = new List<string>
{
Path.GetFullPath(Path.Combine("Library", "PackageCache")),
Path.GetFullPath("Packages")
};
foreach (string path in searchPaths)
{
DirectoryInfo di = new DirectoryInfo(path);
if (!di.Exists) { continue; }
FileInfo[] files = di.GetFiles(ShaderSentinelFile, SearchOption.AllDirectories);
if (files.Length > 0)
{
return new DirectoryInfo(files[0].DirectoryName);
}
}
return null;
}
/// <summary>
/// Copies the shader files from the package cache to the Assets folder tree.
/// </summary>
private static void ImportShaderFiles(DirectoryInfo packageShaderFolder)
{
if (packageShaderFolder == null)
{
Debug.LogError("Unable to locate the shader source folder in the package");
return;
}
DirectoryInfo destination = new DirectoryInfo(Path.Combine(Application.dataPath, ShaderImportDestination));
if (!destination.Exists)
{
destination.Create();
}
FileInfo[] sourceFiles = packageShaderFolder.GetFiles();
foreach (FileInfo fi in sourceFiles)
{
fi.CopyTo(Path.Combine(destination.FullName, fi.Name), true);
}
}
/// <summary>
/// Reads the version number out of the shader
/// </summary>
/// <param name="sentinelPath">The path to the sentinel file.</param>
/// <returns>The version number found in the file, or -1.</returns>
private static int ReadSentinelVersion(string sentinelPath)
{
using (FileStream fs = new FileStream(sentinelPath, FileMode.Open, FileAccess.Read))
{
using (StreamReader reader = new StreamReader(fs))
{
const string token = "ver:";
while (!reader.EndOfStream)
{
string line = reader.ReadLine();
if (line.StartsWith(token))
{
line = line.Substring(token.Length).Trim();
if (!int.TryParse(line, out int ver))
{
break;
}
return ver;
}
}
}
}
return -1;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 54d7d34289fb5f5498ae69025476481a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 24f9c5a6075b435890a36a0f7ba38718
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,91 @@
Copyright 2015, Microsoft Corporation (www.microsoft.com), with Reserved Font Name Selawik. All Rights Reserved. Selawik is a trademark of Microsoft Corporation in the United States and/or other countries.
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 69f44fbae774470e81d66851ee0a0b8d
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,24 @@
fileFormatVersion: 2
guid: e48b920555144c6da3ee2ab03f0fda88
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Selawik
fontNames:
- Selawik
fallbackFontReferences:
- {fileID: 12800000, guid: a99e8b1ed1154eb58270cc6a18605657, type: 3}
- {fileID: 12800000, guid: e869342c56e54acf989b2422b4b80dcc, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: a99e8b1ed1154eb58270cc6a18605657
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Selawik
fontNames:
- Selawik
fallbackFontReferences:
- {fileID: 12800000, guid: e869342c56e54acf989b2422b4b80dcc, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,26 @@
fileFormatVersion: 2
guid: e65983ad3f7b44aa81e726d5ffb472d7
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Selawik
fontNames:
- Selawik
fallbackFontReferences:
- {fileID: 12800000, guid: a99e8b1ed1154eb58270cc6a18605657, type: 3}
- {fileID: 12800000, guid: 0fd94703e1ea496bb9999216ac3ece0d, type: 3}
- {fileID: 12800000, guid: e869342c56e54acf989b2422b4b80dcc, type: 3}
- {fileID: 12800000, guid: e48b920555144c6da3ee2ab03f0fda88, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,26 @@
fileFormatVersion: 2
guid: e869342c56e54acf989b2422b4b80dcc
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Selawik
fontNames:
- Selawik
fallbackFontReferences:
- {fileID: 12800000, guid: 0fd94703e1ea496bb9999216ac3ece0d, type: 3}
- {fileID: 12800000, guid: e48b920555144c6da3ee2ab03f0fda88, type: 3}
- {fileID: 12800000, guid: e65983ad3f7b44aa81e726d5ffb472d7, type: 3}
- {fileID: 12800000, guid: a99e8b1ed1154eb58270cc6a18605657, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,25 @@
fileFormatVersion: 2
guid: 0fd94703e1ea496bb9999216ac3ece0d
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontName: Selawik
fontNames:
- Selawik
fallbackFontReferences:
- {fileID: 12800000, guid: a99e8b1ed1154eb58270cc6a18605657, type: 3}
- {fileID: 12800000, guid: e869342c56e54acf989b2422b4b80dcc, type: 3}
- {fileID: 12800000, guid: e48b920555144c6da3ee2ab03f0fda88, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b19b56dab3a0c79489e000b63097f2b7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: de9aa62057faa7f4a83e461c533b39e1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 32aad78585988cc43838b0d2bd36aff3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f137eba12ee10834cb19632437cfdb2e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cf40b52fb3478de4ea4adf277e3b75ef
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d94d0d64ec3545b408d5621e7d27cf96
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8f25585131267564cab5bbdafd36a94f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ad601d838b0fb2744937cd5dad890e81
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4cb0959ab879da74d85e85e90e65eedc
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: afc8299d5d5bbd440a0616c8ecbc7217
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 708ca4cbd1d60c64184b76fa75044402
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8349af0188f70214ba25245a3c05ddeb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c334791383d1d8042b3a69a77b6b3283
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1e1a3bf70c1dc22478ff4fc9837e570e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6a84f857bec7e7345843ae29404c57ce
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More