在大型项目中使用 MRTK

此页面包含 MRTK 的使用者的一些有用提示,这些提示将其拉取到现有的大型项目中,或设置将受源代码管理并具有多个开发人员的新内容。

建议阅读下面的所有准则,遵循这些准则有助于避免在处理更大的基本代码时遇到的一些棘手问题

gitignore

使用 MRTK 时,建议使用以下 .gitignore 文件进行拉取: MRTK 中的某些部分创建可被源代码管理安全忽略的本地状态,这会导致本地 git 状态变脏。

请注意,此部分的开头部分是从默认的 github Unity .gitignore 中获取的,稍后将添加特定于 MRTK 的添加。 另请注意,其中的某些规则假定特定路径,并且可以根据 MRTK 在项目中的位置进行修改。

# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/

# MemoryCaptures can get excessive in size.
# They also could contain extremely sensitive data
/[Mm]emoryCaptures/

# Asset meta data should only be ignored when the corresponding asset is also ignored
!/[Aa]ssets/**/*.meta

# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*

# Autogenerated Jetbrains Rider plugin
/[Aa]ssets/Plugins/Editor/JetBrains*

# Visual Studio cache directory
.vs/

# Gradle cache directory
.gradle/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta

# Unity3D generated file on crash reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

# Crashlytics generated file
crashlytics-build.properties

# NuGet Build Process Generated
# This section covers files that are generated when consuming/using MRTK from NuGet
# May not be relevant if consuming via .unitypackages
/NuGet/*
!/NuGet/BuildSource.proj
/MRTKBuild/
/MSBuild/
/PackagesCopy/
!/scripts/Packaging/NuGetRestoreProject.csproj

ProjectPreferences 文件

可在 > Project 设置 > 混合现实 Toolkit 位置下找到 Project 范围内的 MRTK 设置。 这些设置将保存到以下位置的 "资产" 文件夹中的文件:

Assets/MixedRealityToolkit.Generated/ProjectPreferences.asset

如果你的项目将具有多个协作者,则建议在执行 MRTK 设置的初始设置后签入此资产文件。 特别是,请考虑 检查以下设置

锁定 SDK 配置文件 -如果此功能处于禁用状态,则默认的 MRTK 配置文件将是全局可编辑的,这会使 MRTK 升级变得挑战性 (它可能会导致框架自身的合并冲突)

忽略 MRTK 项目配置 器-如果禁用此项,则项目配置器会显示当前 MRTK 设置是否与 MRTK 推荐默认值不匹配。 由于你的项目可能已显式选择不启用某些设置,因此选中此设置将阻止其他协作者无意中看到更改的设置。 这些设置应由设置项目的人员配置,并被其他协作者忽略。

自动启用 UWP 功能 -如果此功能处于禁用状态,则某些功能 (例如,目视跟踪) 在部署到设备时可能会以静默方式失败,因为 Unity 不会自动将所需的运行时功能添加到应用程序清单。 选中此设置可以保护应用程序的部署体验,从此类问题中解决。