Skip to main content

VRCQualitySettings

一个只读层,封装 UnityEngine.QualitySettings 的属性。

当前暴露的属性:

  • int AntiAliasing
  • int PixelLightCount
  • float LODBias
  • int MaximumLODLevel
  • ShadowResolution ShadowResolution
  • float ShadowDistance
  • int ShadowCascades
  • int vSyncCount

其中一些可能受到用户图形设置的影响。

阴影距离​

你可以使用 VRCQualitySettings.SetShadowDistance() 覆盖世界中的阴影距离。在 VRChat 中,该值被限制在 0.1f 到 10000.0f 之间。

SetShadowDistance() 接受四个 float 参数:low、medium、high 和 mobile。这些对应图形设置菜单中的"Low"、"Medium"和"High"阴影质量设置。如果你指定了不同的值,将使用与本地用户当前设置匹配的参数。mobile 适用于所有非 PC 平台,无论设置如何。如果你想为所有四个参数使用相同的值,请使用接受单个参数的 SetShadowDistance() 重载方法。

一旦使用此属性设置了阴影距离,用户配置的"Shadow Quality"设置将被覆盖。用户将在其图形设置中看到警告。请谨慎设置阴影距离,因为较大的值可能会对性能产生严重影响。

要禁用覆盖并恢复为用户配置的阴影距离值,可以调用 VRCQualitySettings.ResetShadowDistance()。

此外,以下 2 个与阴影相关的属性可作为读写属性访问:

  • float shadowCascade2Split
  • Vector3 shadowCascade4Split

所有属性在世界加载时重置。

OnChanged 事件​

当用户更改影响已暴露属性的图形设置时,会触发 OnVRCQualitySettingsChanged 事件。