Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@baba-s
Created November 10, 2020 11:42
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save baba-s/5b7fa1ee8e9604a7b4e7318624750a41 to your computer and use it in GitHub Desktop.
Save baba-s/5b7fa1ee8e9604a7b4e7318624750a41 to your computer and use it in GitHub Desktop.
using JetBrains.Annotations;
using System;
using UnityEngine;
namespace Kogane
{
public static class JsonUnityEngineQualitySettings
{
[Serializable]
private struct JsonData
{
[SerializeField][UsedImplicitly] public int particleRaycastBudget;
[SerializeField][UsedImplicitly] public bool softVegetation;
[SerializeField][UsedImplicitly] public int vSyncCount;
[SerializeField][UsedImplicitly] public int antiAliasing;
[SerializeField][UsedImplicitly] public int asyncUploadTimeSlice;
[SerializeField][UsedImplicitly] public int asyncUploadBufferSize;
[SerializeField][UsedImplicitly] public bool asyncUploadPersistentBuffer;
[SerializeField][UsedImplicitly] public bool realtimeReflectionProbes;
[SerializeField][UsedImplicitly] public bool billboardsFaceCameraPosition;
[SerializeField][UsedImplicitly] public float resolutionScalingFixedDPIFactor;
[SerializeField][UsedImplicitly] public bool softParticles;
[SerializeField][UsedImplicitly] public SkinWeights skinWeights;
[SerializeField][UsedImplicitly] public bool streamingMipmapsActive;
[SerializeField][UsedImplicitly] public float streamingMipmapsMemoryBudget;
[SerializeField][UsedImplicitly] public int streamingMipmapsRenderersPerFrame;
[SerializeField][UsedImplicitly] public int streamingMipmapsMaxLevelReduction;
[SerializeField][UsedImplicitly] public bool streamingMipmapsAddAllCameras;
[SerializeField][UsedImplicitly] public int streamingMipmapsMaxFileIORequests;
[SerializeField][UsedImplicitly] public int maxQueuedFrames;
[SerializeField][UsedImplicitly] public string[] names;
[SerializeField][UsedImplicitly] public ColorSpace desiredColorSpace;
[SerializeField][UsedImplicitly] public ColorSpace activeColorSpace;
[SerializeField][UsedImplicitly] public int masterTextureLimit;
[SerializeField][UsedImplicitly] public int pixelLightCount;
[SerializeField][UsedImplicitly] public int maximumLODLevel;
[SerializeField][UsedImplicitly] public ShadowProjection shadowProjection;
[SerializeField][UsedImplicitly] public int shadowCascades;
[SerializeField][UsedImplicitly] public float shadowDistance;
[SerializeField][UsedImplicitly] public ShadowQuality shadows;
[SerializeField][UsedImplicitly] public ShadowmaskMode shadowmaskMode;
[SerializeField][UsedImplicitly] public float shadowNearPlaneOffset;
[SerializeField][UsedImplicitly] public float shadowCascade2Split;
[SerializeField][UsedImplicitly] public Vector3 shadowCascade4Split;
[SerializeField][UsedImplicitly] public float lodBias;
[SerializeField][UsedImplicitly] public AnisotropicFiltering anisotropicFiltering;
[SerializeField][UsedImplicitly] public ShadowResolution shadowResolution;
}
public static string Get()
{
var jsonData = new JsonData
{
particleRaycastBudget = QualitySettings.particleRaycastBudget,
softVegetation = QualitySettings.softVegetation,
vSyncCount = QualitySettings.vSyncCount,
antiAliasing = QualitySettings.antiAliasing,
asyncUploadTimeSlice = QualitySettings.asyncUploadTimeSlice,
asyncUploadBufferSize = QualitySettings.asyncUploadBufferSize,
asyncUploadPersistentBuffer = QualitySettings.asyncUploadPersistentBuffer,
realtimeReflectionProbes = QualitySettings.realtimeReflectionProbes,
billboardsFaceCameraPosition = QualitySettings.billboardsFaceCameraPosition,
resolutionScalingFixedDPIFactor = QualitySettings.resolutionScalingFixedDPIFactor,
softParticles = QualitySettings.softParticles,
skinWeights = QualitySettings.skinWeights,
streamingMipmapsActive = QualitySettings.streamingMipmapsActive,
streamingMipmapsMemoryBudget = QualitySettings.streamingMipmapsMemoryBudget,
streamingMipmapsRenderersPerFrame = QualitySettings.streamingMipmapsRenderersPerFrame,
streamingMipmapsMaxLevelReduction = QualitySettings.streamingMipmapsMaxLevelReduction,
streamingMipmapsAddAllCameras = QualitySettings.streamingMipmapsAddAllCameras,
streamingMipmapsMaxFileIORequests = QualitySettings.streamingMipmapsMaxFileIORequests,
maxQueuedFrames = QualitySettings.maxQueuedFrames,
names = QualitySettings.names,
desiredColorSpace = QualitySettings.desiredColorSpace,
activeColorSpace = QualitySettings.activeColorSpace,
masterTextureLimit = QualitySettings.masterTextureLimit,
pixelLightCount = QualitySettings.pixelLightCount,
maximumLODLevel = QualitySettings.maximumLODLevel,
shadowProjection = QualitySettings.shadowProjection,
shadowCascades = QualitySettings.shadowCascades,
shadowDistance = QualitySettings.shadowDistance,
shadows = QualitySettings.shadows,
shadowmaskMode = QualitySettings.shadowmaskMode,
shadowNearPlaneOffset = QualitySettings.shadowNearPlaneOffset,
shadowCascade2Split = QualitySettings.shadowCascade2Split,
shadowCascade4Split = QualitySettings.shadowCascade4Split,
lodBias = QualitySettings.lodBias,
anisotropicFiltering = QualitySettings.anisotropicFiltering,
shadowResolution = QualitySettings.shadowResolution,
};
return JsonUtility.ToJson( jsonData, true );
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment