您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
421 行
10 KiB
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
|