您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

421 行
10 KiB

// This file is generated from JsonSchema. Don't modify this source code.
using UniJSON;
using System;
using System.Collections.Generic;
using UnityEngine;
namespace UniGLTF.Extensions.VRMC_materials_mtoon {
public static class GltfDeserializer
{
public static readonly Utf8String ExtensionNameUtf8 = Utf8String.From(VRMC_materials_mtoon.ExtensionName);
public static bool TryGet(UniGLTF.glTFExtension src, out VRMC_materials_mtoon extension)
{
if(src is UniGLTF.glTFExtensionImport extensions)
{
foreach(var kv in extensions.ObjectItems())
{
if(kv.Key.GetUtf8String() == ExtensionNameUtf8)
{
extension = Deserialize(kv.Value);
return true;
}
}
}
extension = default;
return false;
}
public static VRMC_materials_mtoon Deserialize(JsonNode parsed)
{
var value = new VRMC_materials_mtoon();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="specVersion"){
value.SpecVersion = kv.Value.GetString();
continue;
}
if(key=="transparentWithZWrite"){
value.TransparentWithZWrite = kv.Value.GetBoolean();
continue;
}
if(key=="renderQueueOffsetNumber"){
value.RenderQueueOffsetNumber = kv.Value.GetInt32();
continue;
}
if(key=="shadeColorFactor"){
value.ShadeColorFactor = Deserialize_ShadeColorFactor(kv.Value);
continue;
}
if(key=="shadeMultiplyTexture"){
value.ShadeMultiplyTexture = Deserialize_ShadeMultiplyTexture(kv.Value);
continue;
}
if(key=="shadingShiftFactor"){
value.ShadingShiftFactor = kv.Value.GetSingle();
continue;
}
if(key=="shadingShiftTexture"){
value.ShadingShiftTexture = Deserialize_ShadingShiftTexture(kv.Value);
continue;
}
if(key=="shadingToonyFactor"){
value.ShadingToonyFactor = kv.Value.GetSingle();
continue;
}
if(key=="giEqualizationFactor"){
value.GiEqualizationFactor = kv.Value.GetSingle();
continue;
}
if(key=="matcapFactor"){
value.MatcapFactor = Deserialize_MatcapFactor(kv.Value);
continue;
}
if(key=="matcapTexture"){
value.MatcapTexture = Deserialize_MatcapTexture(kv.Value);
continue;
}
if(key=="parametricRimColorFactor"){
value.ParametricRimColorFactor = Deserialize_ParametricRimColorFactor(kv.Value);
continue;
}
if(key=="rimMultiplyTexture"){
value.RimMultiplyTexture = Deserialize_RimMultiplyTexture(kv.Value);
continue;
}
if(key=="rimLightingMixFactor"){
value.RimLightingMixFactor = kv.Value.GetSingle();
continue;
}
if(key=="parametricRimFresnelPowerFactor"){
value.ParametricRimFresnelPowerFactor = kv.Value.GetSingle();
continue;
}
if(key=="parametricRimLiftFactor"){
value.ParametricRimLiftFactor = kv.Value.GetSingle();
continue;
}
if(key=="outlineWidthMode"){
value.OutlineWidthMode = (OutlineWidthMode)Enum.Parse(typeof(OutlineWidthMode), kv.Value.GetString(), true);
continue;
}
if(key=="outlineWidthFactor"){
value.OutlineWidthFactor = kv.Value.GetSingle();
continue;
}
if(key=="outlineWidthMultiplyTexture"){
value.OutlineWidthMultiplyTexture = Deserialize_OutlineWidthMultiplyTexture(kv.Value);
continue;
}
if(key=="outlineColorFactor"){
value.OutlineColorFactor = Deserialize_OutlineColorFactor(kv.Value);
continue;
}
if(key=="outlineLightingMixFactor"){
value.OutlineLightingMixFactor = kv.Value.GetSingle();
continue;
}
if(key=="uvAnimationMaskTexture"){
value.UvAnimationMaskTexture = Deserialize_UvAnimationMaskTexture(kv.Value);
continue;
}
if(key=="uvAnimationScrollXSpeedFactor"){
value.UvAnimationScrollXSpeedFactor = kv.Value.GetSingle();
continue;
}
if(key=="uvAnimationScrollYSpeedFactor"){
value.UvAnimationScrollYSpeedFactor = kv.Value.GetSingle();
continue;
}
if(key=="uvAnimationRotationSpeedFactor"){
value.UvAnimationRotationSpeedFactor = kv.Value.GetSingle();
continue;
}
}
return value;
}
public static float[] Deserialize_ShadeColorFactor(JsonNode parsed)
{
var value = new float[parsed.GetArrayCount()];
int i=0;
foreach(var x in parsed.ArrayItems())
{
value[i++] = x.GetSingle();
}
return value;
}
public static TextureInfo Deserialize_ShadeMultiplyTexture(JsonNode parsed)
{
var value = new TextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
}
return value;
}
public static ShadingShiftTextureInfo Deserialize_ShadingShiftTexture(JsonNode parsed)
{
var value = new ShadingShiftTextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
if(key=="scale"){
value.Scale = kv.Value.GetSingle();
continue;
}
}
return value;
}
public static float[] Deserialize_MatcapFactor(JsonNode parsed)
{
var value = new float[parsed.GetArrayCount()];
int i=0;
foreach(var x in parsed.ArrayItems())
{
value[i++] = x.GetSingle();
}
return value;
}
public static TextureInfo Deserialize_MatcapTexture(JsonNode parsed)
{
var value = new TextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
}
return value;
}
public static float[] Deserialize_ParametricRimColorFactor(JsonNode parsed)
{
var value = new float[parsed.GetArrayCount()];
int i=0;
foreach(var x in parsed.ArrayItems())
{
value[i++] = x.GetSingle();
}
return value;
}
public static TextureInfo Deserialize_RimMultiplyTexture(JsonNode parsed)
{
var value = new TextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
}
return value;
}
public static TextureInfo Deserialize_OutlineWidthMultiplyTexture(JsonNode parsed)
{
var value = new TextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
}
return value;
}
public static float[] Deserialize_OutlineColorFactor(JsonNode parsed)
{
var value = new float[parsed.GetArrayCount()];
int i=0;
foreach(var x in parsed.ArrayItems())
{
value[i++] = x.GetSingle();
}
return value;
}
public static TextureInfo Deserialize_UvAnimationMaskTexture(JsonNode parsed)
{
var value = new TextureInfo();
foreach(var kv in parsed.ObjectItems())
{
var key = kv.Key.GetString();
if(key=="extensions"){
value.Extensions = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="extras"){
value.Extras = new glTFExtensionImport(kv.Value);
continue;
}
if(key=="index"){
value.Index = kv.Value.GetInt32();
continue;
}
if(key=="texCoord"){
value.TexCoord = kv.Value.GetInt32();
continue;
}
}
return value;
}
} // GltfDeserializer
} // UniGLTF