This commit is contained in:
parent
e179d2eb53
commit
b7b89ee71a
|
@ -1,7 +1,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<ImplicitUsings>disable</ImplicitUsings>
|
||||
<Nullable>disable</Nullable>
|
||||
<PackageId>BITKit</PackageId>
|
||||
<TargetFramework>net7.0</TargetFramework>
|
||||
|
|
Binary file not shown.
|
@ -5,13 +5,19 @@
|
|||
"GUID:75469ad4d38634e559750d17036d5f7c",
|
||||
"GUID:66d2ae14764cc7d49aad4b16930747c0",
|
||||
"GUID:49b49c76ee64f6b41bf28ef951cb0e50",
|
||||
"GUID:e6234d6c1f7bf4e4db20eddc411c00b8",
|
||||
"GUID:15fc0a57446b3144c949da3e2b9737a9",
|
||||
"GUID:f51ebe6a0ceec4240a699833d6309b23",
|
||||
"GUID:4307f53044263cf4b835bd812fc161a4",
|
||||
"GUID:df380645f10b7bc4b97d4f5eb6303d95",
|
||||
"GUID:d8b63aba1907145bea998dd612889d6b",
|
||||
"GUID:d525ad6bd40672747bde77962f1c401e",
|
||||
"GUID:e34a5702dd353724aa315fb8011f08c3"
|
||||
"GUID:e34a5702dd353724aa315fb8011f08c3",
|
||||
"GUID:4988cf9794f41d64c884876ab6574b89",
|
||||
"GUID:e0cd26848372d4e5c891c569017e11f1",
|
||||
"GUID:517785bb4600a5140b47eac5fa49b8fc",
|
||||
"GUID:a11ff146d38b27a44af87b4b4d9c4ecb",
|
||||
"GUID:8c1b5e158961445498f8a66188fbb2e3"
|
||||
],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [],
|
||||
|
|
|
@ -1,7 +1,18 @@
|
|||
using System;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public interface IAddressable
|
||||
{
|
||||
string AddressablePath { get; }
|
||||
|
||||
ulong AddressableId
|
||||
{
|
||||
get => ulong.MinValue;
|
||||
set
|
||||
{
|
||||
if (value <= 0) throw new ArgumentOutOfRangeException(nameof(value));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -155,7 +155,7 @@ namespace BITKit
|
|||
"FAE",
|
||||
"MK",
|
||||
"Lzf",
|
||||
|
||||
"MySql",
|
||||
};
|
||||
}
|
||||
#if NET5_0_OR_GREATER
|
||||
|
@ -249,7 +249,6 @@ namespace BITKit
|
|||
Settings = settings??new AppSettings();
|
||||
CancellationTokenSource = new CancellationTokenSource();
|
||||
AppName = appName;
|
||||
ThreadHelper.LogCurrentThread();
|
||||
InitialTime = DateTime.Now;
|
||||
await Init();
|
||||
}
|
||||
|
@ -270,9 +269,7 @@ namespace BITKit
|
|||
BIT4Log.Log<BITApp>("已加载全局appsettings");
|
||||
}
|
||||
//内部反射初始化
|
||||
ThreadHelper.InitAPP();
|
||||
await UniTask.SwitchToThreadPool();
|
||||
ThreadHelper.LogCurrentThread();
|
||||
Stopwatch stopwatch = new();
|
||||
stopwatch.Start();
|
||||
Stopwatch reflectionHelperWatch = new();
|
||||
|
@ -284,11 +281,15 @@ namespace BITKit
|
|||
await BITCommands.InitializeAsync();
|
||||
commandWatch.Stop();
|
||||
|
||||
|
||||
Stopwatch binaryWatch = new();
|
||||
await BITBinary.Start();
|
||||
binaryWatch.Stop();
|
||||
|
||||
stopwatch.Stop();
|
||||
State = InitializationState.Initialized;
|
||||
BIT4Log.Log<BITApp>($"已完成初始化,耗时:{stopwatch.ElapsedMilliseconds}ms");
|
||||
BIT4Log.Log<BITApp>($"反射初始化耗时:{reflectionHelperWatch.ElapsedMilliseconds}ms");
|
||||
BIT4Log.Log<BITApp>($"初始化二进制序列化耗时:{binaryWatch.ElapsedMilliseconds}ms");
|
||||
}
|
||||
catch (System.Exception e)
|
||||
{
|
||||
|
|
|
@ -16,10 +16,15 @@ namespace BITKit.IO
|
|||
public DateTime LastModifiedTime;
|
||||
|
||||
// ReSharper disable once CollectionNeverQueried.Global
|
||||
public readonly List<string> Files = new List<string>();
|
||||
// ReSharper disable once FieldCanBeMadeReadOnly.Global
|
||||
public List<string> Files = new List<string>();
|
||||
}
|
||||
public class BITAssets : List<IAsset>
|
||||
{
|
||||
public static BITHeader ReadHeader(string path)
|
||||
{
|
||||
return Read<BITHeader>(path,"manifest.json");
|
||||
}
|
||||
public static void Build(string path, params IAsset[] assets)
|
||||
{
|
||||
List<IAsset> assetList = new();
|
||||
|
@ -54,6 +59,7 @@ namespace BITKit.IO
|
|||
using var ms = new MemoryStream(x.Buffer);
|
||||
using var writer = entry.Open();
|
||||
ms.CopyTo(writer);
|
||||
writer.Flush();
|
||||
}
|
||||
|
||||
zipFile.Dispose();
|
||||
|
|
|
@ -8,6 +8,10 @@ namespace BITKit
|
|||
public class ExcuteOnStartAttribute : Attribute { }
|
||||
[AttributeUsage(AttributeTargets.Method)]
|
||||
public class ExcuteOnStopAttribute : Attribute { }
|
||||
[AttributeUsage(AttributeTargets.Property|AttributeTargets.Field)]
|
||||
public class ReadOnlyAttribute : Attribute { }
|
||||
|
||||
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field)]
|
||||
public class ReadOnlyAttribute : Attribute
|
||||
{
|
||||
public bool HideLabel { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,6 +10,17 @@ namespace BITKit
|
|||
[AttributeUsage(AttributeTargets.Field)]
|
||||
public class InjectAttribute : System.Attribute
|
||||
{
|
||||
public static void Clear(object obj)
|
||||
{
|
||||
var fields = obj.GetType().GetFields(ReflectionHelper.Flags);
|
||||
foreach (var field in fields)
|
||||
{
|
||||
if (field.GetCustomAttributes(typeof(InjectAttribute), true).Length > 0)
|
||||
{
|
||||
field.SetValue(obj, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
public readonly bool CanBeNull;
|
||||
public InjectAttribute()
|
||||
{
|
||||
|
@ -20,21 +31,41 @@ namespace BITKit
|
|||
}
|
||||
}
|
||||
|
||||
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = true, Inherited = true)]
|
||||
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Interface, AllowMultiple = true, Inherited = true)]
|
||||
public class CustomTypeAttribute : System.Attribute
|
||||
{
|
||||
public readonly Type Type;
|
||||
public readonly bool AsGlobal;
|
||||
public CustomTypeAttribute(Type type)
|
||||
{
|
||||
|
||||
Type = type;
|
||||
}
|
||||
public CustomTypeAttribute(Type type, bool asGlobal)
|
||||
{
|
||||
Type = type;
|
||||
AsGlobal = asGlobal;
|
||||
}
|
||||
public CustomTypeAttribute(bool asGlobal)
|
||||
{
|
||||
AsGlobal = asGlobal;
|
||||
}
|
||||
}
|
||||
#if UNITY_64
|
||||
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = true, Inherited = true)]
|
||||
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Field | AttributeTargets.Method, AllowMultiple = true, Inherited = true)]
|
||||
public class ExportAttribute : System.Attribute
|
||||
{
|
||||
|
||||
public readonly string Name;
|
||||
public readonly IExportSetting Settings;
|
||||
public ExportAttribute(){}
|
||||
public ExportAttribute(IExportSetting settings)
|
||||
{
|
||||
Settings = settings;
|
||||
}
|
||||
public ExportAttribute(string name)
|
||||
{
|
||||
Name = name;
|
||||
}
|
||||
}
|
||||
public interface IExportSetting{}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -45,7 +45,7 @@ namespace BITKit
|
|||
#if NET5_0_OR_GREATER
|
||||
Log($"[{DateTime.Now}]{typeof(T).Name}:{x}");
|
||||
#else
|
||||
Log($"{typeof(T).Name}:{x}");
|
||||
Log($"<color=#add8e6ff><b>{typeof(T).Name}</b></color>:{x}");
|
||||
#endif
|
||||
|
||||
currentType = typeof(T);
|
||||
|
@ -69,7 +69,7 @@ namespace BITKit
|
|||
#endif
|
||||
public static void Warning<T>(object x)
|
||||
{
|
||||
Warning($"{typeof(T).Name}:{x}");
|
||||
Warning($"<color=#ffa500ff><b>{typeof(T).Name}</b></color>:{x}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,9 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using Microsoft.SqlServer.Server;
|
||||
#if NET5_0_OR_GREATER
|
||||
using Microsoft.SqlServer.Server;
|
||||
#endif
|
||||
|
@ -17,9 +19,7 @@ namespace BITKit
|
|||
public class BITBinary
|
||||
{
|
||||
private static readonly Dictionary<string, INetMessageReader> netReaders = new();
|
||||
#if NET5_0_OR_GREATER
|
||||
public static readonly List<Type> serializableTypes = new();
|
||||
#endif
|
||||
|
||||
public static async UniTask Start()
|
||||
{
|
||||
|
@ -27,30 +27,31 @@ namespace BITKit
|
|||
#if NET5_0_OR_GREATER
|
||||
serializableTypes.Clear();
|
||||
#endif
|
||||
var stringBuilder = new StringBuilder();
|
||||
foreach (var x in await ReflectionHelper.GetInstances<INetMessageReader>())
|
||||
{
|
||||
var typeName = x.GetMessageType().FullName;
|
||||
if (typeName == null) continue;
|
||||
netReaders.Add(typeName, x);
|
||||
BIT4Log.Log<BITBinary>($"已注册类型:{typeName}");
|
||||
stringBuilder.AppendLine(typeName);
|
||||
}
|
||||
// #if NET5_0_OR_GREATER
|
||||
// var serializes = await ReflectionHelper.GetInstances<IBinarySerialize>();
|
||||
// #else
|
||||
//
|
||||
// #endif
|
||||
// #if NET5_0_OR_GREATER
|
||||
// #else
|
||||
// serializes = serializes.Where(x => x is not UnityEngine.Object);
|
||||
// #endif
|
||||
// foreach (var x in serializes)
|
||||
// {
|
||||
// serializableTypes.Add(x.GetType());
|
||||
// BIT4Log.Log<BITBinary>($"已注册类型:{x.GetType().FullName}");
|
||||
// }
|
||||
|
||||
var serializes = await ReflectionHelper.GetInstances<IBinarySerialize>();
|
||||
#if NET5_0_OR_GREATER
|
||||
#else
|
||||
serializes = serializes.Where(x => x.GetType().IsAssignableFrom(typeof(UnityEngine.Object)) is false);
|
||||
#endif
|
||||
foreach (var x in serializes)
|
||||
{
|
||||
serializableTypes.Add(x.GetType());
|
||||
//BIT4Log.Log<BITBinary>($"已注册类型:{x.GetType().FullName}");
|
||||
stringBuilder.AppendLine(x.GetType().FullName);
|
||||
}
|
||||
|
||||
BIT4Log.Log<BITBinary>($"已注册类型:\n{stringBuilder}");
|
||||
}
|
||||
|
||||
public static object Read<T>(byte[] buffer) => (T)ReadAsValue(buffer);
|
||||
public static T Read<T>(byte[] buffer) => (T)ReadAsValue(buffer);
|
||||
public static object ReadAsValue(byte[] buffer)
|
||||
{
|
||||
using var ms = new MemoryStream(buffer);
|
||||
|
@ -60,20 +61,35 @@ namespace BITKit
|
|||
|
||||
public static object Read(BinaryReader reader)
|
||||
{
|
||||
var isObjects = reader.ReadBoolean();
|
||||
if (isObjects)
|
||||
try
|
||||
{
|
||||
var objs = new object[reader.ReadInt32()];
|
||||
for (var i = 0; i < objs.Length; i++)
|
||||
if (reader.ReadBoolean())
|
||||
{
|
||||
objs[i] = Read(reader);
|
||||
var objs = new object[reader.ReadInt32()];
|
||||
for (var i = 0; i < objs.Length; i++)
|
||||
{
|
||||
objs[i] = Read(reader);
|
||||
}
|
||||
return objs.ToArray();
|
||||
}
|
||||
return objs.ToArray();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
var typeName = reader.ReadString();
|
||||
if (netReaders.TryGetValue(typeName, out var netReader))
|
||||
return netReader.ReadBinaryAsObject(reader);
|
||||
|
||||
var instance = System.Activator.CreateInstance(BITSharp.GetTypeFromFullName(typeName));
|
||||
if (instance is IBinarySerialize serialize)
|
||||
{
|
||||
serialize.Read(reader);
|
||||
return instance;
|
||||
}
|
||||
|
||||
var json = reader.ReadString();
|
||||
if (string.IsNullOrEmpty(json))
|
||||
{
|
||||
|
@ -128,9 +144,22 @@ namespace BITKit
|
|||
{
|
||||
netReader.WriteBinaryAsObject(writer,value);
|
||||
}
|
||||
else if (value is IBinarySerialize serialize)
|
||||
{
|
||||
serialize.Write(writer);
|
||||
}
|
||||
else
|
||||
{
|
||||
writer.Write(JsonConvert.SerializeObject(value));
|
||||
try
|
||||
{
|
||||
writer.Write(JsonConvert.SerializeObject(value));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.Warning<BITBinary>(typeName);
|
||||
throw;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
public static bool IsSupport(object obj) => IsSupport(obj.GetType().FullName);
|
||||
|
@ -138,21 +167,9 @@ namespace BITKit
|
|||
public static bool IsSupport<T>() => IsSupport(typeof(T).FullName);
|
||||
public static bool IsSupport(string typeName)
|
||||
{
|
||||
if (netReaders.ContainsKey(typeName))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
#if NET5_0_OR_GREATER
|
||||
else if (serializableTypes.Any(x => x.FullName == typeName))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
return false;
|
||||
return netReaders.ContainsKey(typeName) || serializableTypes.Any(x => x.FullName == typeName);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static bool TryWrite(object obj, out byte[] bytes)
|
||||
{
|
||||
bytes = null;
|
||||
|
|
|
@ -17,9 +17,9 @@ namespace BITKit
|
|||
}
|
||||
public static void WriteFloat3(this BinaryWriter writer, float3 value)
|
||||
{
|
||||
value.x = MathB.Fix(value.x);
|
||||
value.y = MathB.Fix(value.y);
|
||||
value.z = MathB.Fix(value.z);
|
||||
//value.x = MathB.Fix(value.x);
|
||||
//value.y = MathB.Fix(value.y);
|
||||
//value.z = MathB.Fix(value.z);
|
||||
|
||||
writer.Write(value.x);
|
||||
writer.Write(value.y);
|
||||
|
@ -40,10 +40,10 @@ namespace BITKit
|
|||
|
||||
public static void WriteFloat4(this BinaryWriter writer, float4 value)
|
||||
{
|
||||
value.x = MathB.Fix(value.x);
|
||||
value.y = MathB.Fix(value.y);
|
||||
value.z = MathB.Fix(value.z);
|
||||
value.w = MathB.Fix(value.z);
|
||||
//value.x = MathB.Fix(value.x);
|
||||
//value.y = MathB.Fix(value.y);
|
||||
//value.z = MathB.Fix(value.z);
|
||||
//value.w = MathB.Fix(value.z);
|
||||
|
||||
|
||||
writer.Write(value.x);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 80d35d9e6778dc84b88662124834dd35
|
||||
guid: 242f24809addbc442a81534487aa2b17
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
|
@ -0,0 +1,52 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using Microsoft.SqlServer.Server;
|
||||
|
||||
namespace BITKit.CommandPattern
|
||||
{
|
||||
public interface ICommand
|
||||
{
|
||||
void Execute();
|
||||
void Undo();
|
||||
}
|
||||
public interface ICommandService
|
||||
{
|
||||
ICommand[] Commands { get; }
|
||||
event Action<ICommand> OnExecute;
|
||||
event Action<ICommand> OnClear;
|
||||
event Action<ICommand> OnUndo;
|
||||
event Action<ICommand[]> OnRelease;
|
||||
void Execute(ICommand command);
|
||||
void Undo();
|
||||
void Undo(int count);
|
||||
void Redo();
|
||||
void Trace(ICommand command);
|
||||
void Clear();
|
||||
void Rebuild();
|
||||
void Release();
|
||||
}
|
||||
|
||||
public sealed class CommandSequence:List<ICommand>,IBinarySerialize
|
||||
{
|
||||
public void Read(BinaryReader r)
|
||||
{
|
||||
Clear();
|
||||
var count = r.ReadInt32();
|
||||
for (var i = 0; i <count; i++)
|
||||
{
|
||||
Add(BITBinary.Read(r).As<ICommand>());
|
||||
}
|
||||
}
|
||||
|
||||
public void Write(BinaryWriter w)
|
||||
{
|
||||
w.Write(Count);
|
||||
foreach (var x in this)
|
||||
{
|
||||
BITBinary.Write(w,x);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 97e364d5d74ebe94da6abf95c6d42c5b
|
||||
guid: 348d403129b862f46a56448b4e2e9528
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
|
@ -1,11 +1,55 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using System.Text;
|
||||
|
||||
#if UNITY_64
|
||||
using UnityEngine;
|
||||
#endif
|
||||
namespace BITKit
|
||||
{
|
||||
#if UNITY_64
|
||||
[Serializable]
|
||||
public sealed class ExecuteCommandAction : IAction
|
||||
{
|
||||
[SerializeField] private string command;
|
||||
public void Execute()
|
||||
{
|
||||
BITCommands.Excute(command);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public sealed class DataCondition : ICondition
|
||||
{
|
||||
[SerializeReference, SubclassSelector] private IReference key;
|
||||
public bool OnCheck()
|
||||
{
|
||||
return Data.Get<bool>(key.Value);
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
public sealed class DataCommand : IAction,IConfigProvider
|
||||
{
|
||||
[SerializeReference, SubclassSelector] private IReference key;
|
||||
[SerializeReference, SubclassSelector] private IReference value = new Reference();
|
||||
public void Execute()
|
||||
{
|
||||
//Data.Set(key.Value, value.Value);
|
||||
DataParser.Set(key.Value, value.Value);
|
||||
}
|
||||
|
||||
public string GetConfig(params object[] args)
|
||||
{
|
||||
return $"{key.Value} {value.Value}";
|
||||
}
|
||||
|
||||
public void Configure(params object[] args)
|
||||
{
|
||||
Execute();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
public static class BITCommands
|
||||
{
|
||||
[BITCommand]
|
||||
|
|
|
@ -5,7 +5,18 @@ using System.Threading.Tasks;
|
|||
|
||||
namespace BITKit
|
||||
{
|
||||
public class DI
|
||||
public abstract class InjectFromDI<T>
|
||||
{
|
||||
public T Value
|
||||
{
|
||||
get
|
||||
{
|
||||
return _value ??= DI.Get<T>();
|
||||
}
|
||||
}
|
||||
private T _value;
|
||||
}
|
||||
public sealed class DI
|
||||
{
|
||||
static readonly ConcurrentDictionary<Type, object> dictionary = new();
|
||||
[ExcuteOnStop]
|
||||
|
@ -13,7 +24,7 @@ namespace BITKit
|
|||
{
|
||||
//dictionary.Clear();
|
||||
}
|
||||
|
||||
|
||||
public static void Register<Interface, Class>() where Class : new()
|
||||
{
|
||||
var type = typeof(Interface);
|
||||
|
@ -86,28 +97,56 @@ namespace BITKit
|
|||
throw new NullReferenceException($"没有找到{typeof(T).Name}");
|
||||
}
|
||||
}
|
||||
public static bool TryGet<T>(out T value)
|
||||
{
|
||||
lock (dictionary)
|
||||
{
|
||||
if (dictionary.TryGetValue(typeof(T), out var obj))
|
||||
{
|
||||
if (obj is T i)
|
||||
{
|
||||
value = i;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
value = default;
|
||||
return false;
|
||||
}
|
||||
public static async Task<Interface> GetAsync<Interface>()
|
||||
{
|
||||
await TaskHelper.WaitUntil(() => dictionary.ContainsKey(typeof(Interface)) && dictionary[typeof(Interface) ]is not null);
|
||||
|
||||
return Get<Interface>();
|
||||
}
|
||||
/// <summary>
|
||||
/// 自动依赖注入,将所有带有<see cref="InjectAttribute"/>的字段注入
|
||||
/// </summary>
|
||||
/// <param name="obj"></param>
|
||||
public static void Inject(object obj)
|
||||
{
|
||||
foreach (var field in obj.GetType().GetFields())
|
||||
foreach (var field in obj.GetType().GetFields(ReflectionHelper.Flags))
|
||||
{
|
||||
if (field.GetCustomAttribute<ObsoleteAttribute>() is null &&
|
||||
field.GetCustomAttribute<InjectAttribute>() is not null)
|
||||
try
|
||||
{
|
||||
lock (dictionary)
|
||||
if (field.GetCustomAttribute<ObsoleteAttribute>() is null &&
|
||||
field.GetCustomAttribute<InjectAttribute>() is not null)
|
||||
{
|
||||
if(dictionary!.TryGetValue(field.FieldType,out var value))
|
||||
lock (dictionary)
|
||||
{
|
||||
BIT4Log.Log<DI>($"已为{obj.GetType().Name}.{field.Name}注入{value.GetType().Name}");
|
||||
field.SetValue(obj,value);
|
||||
if(dictionary!.TryGetValue(field.FieldType,out var value))
|
||||
{
|
||||
BIT4Log.Log<DI>($"已为{obj.GetType().Name}.{field.Name}注入{value.GetType().Name}");
|
||||
field.SetValue(obj,value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
||||
namespace BITKit.Entities
|
||||
{
|
||||
public interface IEntityBinaryComponent
|
||||
{
|
||||
int Id { get; }
|
||||
void Serialize(BinaryWriter writer);
|
||||
void Deserialize(BinaryReader reader);
|
||||
}
|
||||
public interface IEntityBinaryHeader
|
||||
{
|
||||
int Id { get; }
|
||||
IDictionary<int,IEntityBinaryComponent> ComponentDictionary { get; }
|
||||
void Serialize(BinaryWriter writer);
|
||||
void Deserialize(BinaryReader reader);
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2b1d23c488f41754ea714f972c248130
|
||||
guid: 41391256f70b92848918e355d5d43b78
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
|
@ -11,6 +11,10 @@ namespace BITKit.Entities
|
|||
/// </summary>
|
||||
public interface IEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// 等待初始化完成,通常用于其他系统需要等待实体初始化完成
|
||||
/// </summary>
|
||||
void WaitForInitializationComplete();
|
||||
ulong Id { get; }
|
||||
CancellationToken CancellationToken { get; }
|
||||
bool TryGetComponent<T>(out T component);
|
||||
|
@ -78,6 +82,17 @@ namespace BITKit.Entities
|
|||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
IEntity Get(ulong id);
|
||||
/// <summary>
|
||||
/// 尝试通过Id获取Entity
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
bool TryGetEntity(ulong id, out IEntity entity);
|
||||
/// <summary>
|
||||
/// 通过Id获取或添加Entity
|
||||
/// </summary>
|
||||
IEntity GetOrAdd(ulong id,Func<ulong,IEntity> factory);
|
||||
|
||||
/// <summary>
|
||||
/// 查询Entity,例如
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 80daba647c9a302418cae1bd15d9a078
|
||||
guid: 2dd41043546fb0e41a82e57749c0994a
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
|
@ -6,6 +6,10 @@ namespace BITKit
|
|||
{
|
||||
public static class FuncExtensions
|
||||
{
|
||||
public static IEnumerable<Func<T>> CastAsFunc<T>(this Func<T> self)
|
||||
{
|
||||
return self is null ? Array.Empty<Func<T>>() : self?.GetInvocationList().Cast<Func<T>>();
|
||||
}
|
||||
public static IEnumerable<Func<T0, T1>> CastAsFunc<T0, T1>(this Func<T0, T1> self)
|
||||
{
|
||||
return self is null ? Array.Empty<Func<T0,T1>>() : self?.GetInvocationList().Cast<Func<T0, T1>>();
|
||||
|
|
|
@ -19,5 +19,6 @@ namespace BITKit
|
|||
}
|
||||
return cacheName;
|
||||
}
|
||||
public static int Hash => typeof(T).GetHashCode();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,17 +1,174 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public static partial class Extensions
|
||||
public sealed class CacheList<T> : IList<T>
|
||||
{
|
||||
public static IDictionary<TKey, TValue> CreateOrAddIfEmety<TKey, TValue>(this IDictionary<TKey, TValue> self, TKey key, Func<TValue> createFactory)
|
||||
public T[] ValueArray
|
||||
{
|
||||
if (self.ContainsKey(key) is false)
|
||||
get
|
||||
{
|
||||
self.Add(key, createFactory.Invoke());
|
||||
CheckChanges();
|
||||
return _array;
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
private readonly IList<T> _listImplementation = new List<T>();
|
||||
private T[] _array = Array.Empty<T>();
|
||||
private IEnumerator<T> _enumerable=Array.Empty<T>().AsEnumerable().GetEnumerator();
|
||||
private bool _isDirty = true;
|
||||
|
||||
public IEnumerator<T> GetEnumerator()
|
||||
{
|
||||
CheckChanges();
|
||||
return _enumerable;
|
||||
}
|
||||
|
||||
IEnumerator IEnumerable.GetEnumerator()
|
||||
{
|
||||
CheckChanges();
|
||||
return _enumerable;
|
||||
}
|
||||
|
||||
public void Add(T item)
|
||||
{
|
||||
_listImplementation.Add(item);
|
||||
_isDirty = true;
|
||||
}
|
||||
|
||||
public void Clear()
|
||||
{
|
||||
_isDirty = false;
|
||||
_listImplementation.Clear();
|
||||
_array = Array.Empty<T>();
|
||||
}
|
||||
|
||||
public bool Contains(T item)
|
||||
{
|
||||
CheckChanges();
|
||||
return _listImplementation.Contains(item);
|
||||
}
|
||||
|
||||
public void CopyTo(T[] array, int arrayIndex)
|
||||
{
|
||||
CheckChanges();
|
||||
_listImplementation.CopyTo(array, arrayIndex);
|
||||
_isDirty = true;
|
||||
}
|
||||
|
||||
public bool Remove(T item)
|
||||
{
|
||||
_isDirty = true;
|
||||
return _listImplementation.Remove(item);
|
||||
}
|
||||
|
||||
public int Count
|
||||
{
|
||||
|
||||
get
|
||||
{
|
||||
CheckChanges();
|
||||
return _listImplementation.Count;
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsReadOnly
|
||||
{
|
||||
get
|
||||
{
|
||||
CheckChanges();
|
||||
return _listImplementation.IsReadOnly;
|
||||
}
|
||||
}
|
||||
|
||||
public int IndexOf(T item)
|
||||
{
|
||||
CheckChanges();
|
||||
return _listImplementation.IndexOf(item);
|
||||
}
|
||||
|
||||
public void Insert(int index, T item)
|
||||
{
|
||||
CheckChanges();
|
||||
_listImplementation.Insert(index, item);
|
||||
_isDirty = true;
|
||||
}
|
||||
|
||||
public void RemoveAt(int index)
|
||||
{
|
||||
CheckChanges();
|
||||
_listImplementation.RemoveAt(index);
|
||||
_isDirty = true;
|
||||
}
|
||||
|
||||
public T this[int index]
|
||||
{
|
||||
get
|
||||
{
|
||||
CheckChanges();
|
||||
return _listImplementation[index];
|
||||
}
|
||||
set
|
||||
{
|
||||
_isDirty = true;
|
||||
_listImplementation[index] = value;
|
||||
CheckChanges();
|
||||
}
|
||||
}
|
||||
|
||||
public bool CheckChanges()
|
||||
{
|
||||
if (!_isDirty) return false;
|
||||
_array = new T[_listImplementation.Count];
|
||||
_listImplementation.CopyTo(_array, 0);
|
||||
_enumerable = _array.AsEnumerable().GetEnumerator();
|
||||
_isDirty = false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class PrioritySelector<T>
|
||||
{
|
||||
public T Current { get; private set; }
|
||||
public event Action<T> OnRelease;
|
||||
private readonly SortedDictionary<int,T> _sortedDictionary = new();
|
||||
public void Set(int priority, T item)
|
||||
{
|
||||
_sortedDictionary.Set(priority,item);
|
||||
CheckChanges();
|
||||
}
|
||||
public void Remove(int priority)
|
||||
{
|
||||
_sortedDictionary.Remove(priority);
|
||||
CheckChanges();
|
||||
}
|
||||
|
||||
private void CheckChanges()
|
||||
{
|
||||
if (_sortedDictionary.Count is 0)
|
||||
return;
|
||||
var _current = _sortedDictionary.Last().Value;
|
||||
switch (_current, Current)
|
||||
{
|
||||
case (not null, null):
|
||||
Current = _current;
|
||||
break;
|
||||
case (null, not null):
|
||||
Current = default;
|
||||
break;
|
||||
case (not null, not null):
|
||||
if (Current.Equals(_current) is false)
|
||||
{
|
||||
Current = _current;
|
||||
}
|
||||
break;
|
||||
case (null, null):
|
||||
break;
|
||||
}
|
||||
OnRelease?.Invoke(Current);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -94,7 +94,7 @@ namespace BITKit
|
|||
}
|
||||
public static bool IsValid<T>(this IEnumerable<T> e)
|
||||
{
|
||||
return e is not null && e.Count() > 0;
|
||||
return e is not null && e.Any();
|
||||
}
|
||||
public static bool TryAdd<T>(this IList<T> self, T t)
|
||||
{
|
||||
|
|
|
@ -107,6 +107,7 @@ namespace BITKit
|
|||
if (index is not -1 && list.TryGetElementAt(index, out var nextElement))
|
||||
{
|
||||
nextElement.IsEntered = true;
|
||||
OnEntry?.Invoke(nextElement);
|
||||
nextElement.Entry();
|
||||
try
|
||||
{
|
||||
|
@ -114,7 +115,7 @@ namespace BITKit
|
|||
nextElement.Entered();
|
||||
}
|
||||
catch (OperationCanceledException){}
|
||||
OnEntry?.Invoke(nextElement);
|
||||
|
||||
}
|
||||
}
|
||||
completed = true;
|
||||
|
|
|
@ -36,11 +36,38 @@ namespace BITKit.StateMachine
|
|||
bool Enabled { get; set; }
|
||||
T CurrentState { get; set; }
|
||||
event Action<T,T> OnStateChanged;
|
||||
event Action<T> OnStateRegistered;
|
||||
event Action<T> OnStateUnRegistered;
|
||||
|
||||
IDictionary<Type, T> StateDictionary { get; }
|
||||
void Initialize();
|
||||
void UpdateState(float deltaTime);
|
||||
void DisposeState();
|
||||
void TransitionState<State>() where State : T;
|
||||
void TransitionState(T state);
|
||||
void Register(T newState) => throw new NotImplementedException("未实现的接口");
|
||||
void UnRegister(T newState) => throw new NotImplementedException("未实现的接口");
|
||||
void InvokeOnStateRegistered(T state){}
|
||||
void InvokeOnStateUnRegistered(T state){}
|
||||
}
|
||||
|
||||
public static class StateMachineUtils
|
||||
{
|
||||
public static void Register<T>(IStateMachine<T> stateMachine, T newState) where T : IState
|
||||
{
|
||||
if (stateMachine.StateDictionary.ContainsKey(newState.GetType()))
|
||||
{
|
||||
throw new ArgumentException($"State {newState.GetType().Name} already registered");
|
||||
}
|
||||
stateMachine.StateDictionary.Add(newState.GetType(), newState);
|
||||
newState.Initialize();
|
||||
stateMachine.InvokeOnStateRegistered(newState);
|
||||
}
|
||||
public static void UnRegister<T>(this IStateMachine<T> stateMachine, T newState) where T : IState
|
||||
{
|
||||
if (!stateMachine.StateDictionary.ContainsKey(newState.GetType())) return;
|
||||
stateMachine.StateDictionary.Remove(newState.GetType());
|
||||
stateMachine.InvokeOnStateUnRegistered(newState);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -40,7 +40,7 @@ namespace BITKit
|
|||
/// <summary>
|
||||
/// 基础物品
|
||||
/// </summary>
|
||||
public interface IBasicItem :IPropertable
|
||||
public interface IBasicItem :IPropertable,ICloneable,IAddressable
|
||||
{
|
||||
/// <summary>
|
||||
/// 唯一Id
|
||||
|
@ -50,10 +50,10 @@ namespace BITKit
|
|||
/// 物品名,一般用于查找物品的主键
|
||||
/// </summary>
|
||||
string Name { get; }
|
||||
/// <summary>
|
||||
/// 可寻址路径,该路径用于查找物品
|
||||
/// </summary>
|
||||
string AddressablePath { get; }
|
||||
// /// <summary>
|
||||
// /// 可寻址路径,该路径用于查找物品
|
||||
// /// </summary>
|
||||
// string AddressablePath { get; }
|
||||
/// <summary>
|
||||
/// 物品描述
|
||||
/// </summary>
|
||||
|
@ -76,7 +76,7 @@ namespace BITKit
|
|||
/// 被托管的物品
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public record ManagedItem : IBasicItem
|
||||
public class ManagedItem : IBasicItem
|
||||
{
|
||||
#region 字段
|
||||
public int Id;
|
||||
|
@ -135,8 +135,14 @@ namespace BITKit
|
|||
{
|
||||
return property.CopyPropertiesFrom(propertable);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public object Clone()
|
||||
{
|
||||
var item = MemberwiseClone() as ManagedItem;
|
||||
item!.Id = Id;
|
||||
return item;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
|
@ -19,18 +19,24 @@ namespace BITKit.Net
|
|||
public event Action OnDisconnected;
|
||||
public event Action OnConnectedFailed;
|
||||
public bool IsConnected => client.connected;
|
||||
public int Ping => -1;
|
||||
|
||||
public bool ManualTick { get; set; }
|
||||
|
||||
public int Ping { get; private set; }
|
||||
public int Id { get; private set; } = -1;
|
||||
private readonly KcpClient client;
|
||||
|
||||
private readonly Queue<byte[]> commandQueue = new();
|
||||
|
||||
private DateTime _lastPingTime = DateTime.Now;
|
||||
|
||||
private readonly Timer _timer = new(100)
|
||||
{
|
||||
AutoReset = true
|
||||
};
|
||||
|
||||
private readonly GenericEvent _events = new();
|
||||
|
||||
public KcpNetClient()
|
||||
{
|
||||
client = new KcpClient(
|
||||
|
@ -50,15 +56,8 @@ namespace BITKit.Net
|
|||
|
||||
private void Tick(object sender, ElapsedEventArgs e)
|
||||
{
|
||||
//await UniTask.SwitchToThreadPool();
|
||||
while (commandQueue.TryDequeue(out var bytes))
|
||||
{
|
||||
client.Send(bytes, KcpChannel.Reliable);
|
||||
}
|
||||
//for (var i = 0; i < 32; i++)
|
||||
{
|
||||
client.Tick();
|
||||
}
|
||||
if (!ManualTick)
|
||||
Tick();
|
||||
}
|
||||
|
||||
public async void Disconnect()
|
||||
|
@ -145,6 +144,9 @@ namespace BITKit.Net
|
|||
case NetCommandType.Heartbeat:
|
||||
client.Send(new[] { (byte)NetCommandType.Heartbeat }, KcpChannel.Reliable);
|
||||
break;
|
||||
case NetCommandType.Ping:
|
||||
Ping = (int)(DateTime.Now - _lastPingTime).TotalMilliseconds;
|
||||
break;
|
||||
default:
|
||||
BIT4Log.Log<KcpClient>($"未知消息类型:{type},字节:{(byte)type}");
|
||||
if (bytes.Array != null)
|
||||
|
@ -250,7 +252,29 @@ namespace BITKit.Net
|
|||
client.Send(bytes, KcpChannel.Reliable);
|
||||
}
|
||||
|
||||
public void Tick() => client.Tick();
|
||||
#if UNITY_EDITOR
|
||||
private readonly IntervalUpdate _pingInterval = new(1);
|
||||
#endif
|
||||
|
||||
public void Tick()
|
||||
{
|
||||
while (commandQueue.TryDequeue(out var bytes))
|
||||
{
|
||||
client.Send(bytes, KcpChannel.Reliable);
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
if (_pingInterval.AllowUpdate)
|
||||
{
|
||||
_lastPingTime = DateTime.Now;
|
||||
client.Send(new[] { (byte)NetCommandType.Ping }, KcpChannel.Reliable);
|
||||
}
|
||||
#endif
|
||||
|
||||
client.Tick();
|
||||
|
||||
}
|
||||
|
||||
public void HandShake()
|
||||
{
|
||||
// send client to server
|
||||
|
|
|
@ -14,6 +14,7 @@ namespace BITKit.Net
|
|||
{
|
||||
public class KCPNetServer:INetServer,INetProvider
|
||||
{
|
||||
public bool ManualTick { get; set; }
|
||||
public event Action<int> OnClientConnected;
|
||||
public event Action<int> OnClientDisconnected;
|
||||
public event Action OnStartServer;
|
||||
|
@ -24,7 +25,7 @@ namespace BITKit.Net
|
|||
{
|
||||
AutoReset = true
|
||||
};
|
||||
|
||||
|
||||
public KCPNetServer()
|
||||
{
|
||||
server = new KcpServer(
|
||||
|
@ -40,21 +41,38 @@ namespace BITKit.Net
|
|||
|
||||
private void Tick(object sender, ElapsedEventArgs e)
|
||||
{
|
||||
if (server.IsActive() is false) return;
|
||||
if (server.IsActive() is false || ManualTick) return;
|
||||
server.Tick();
|
||||
}
|
||||
|
||||
public void StartServer(ushort port = 27014)
|
||||
{
|
||||
OnStartServer?.Invoke();
|
||||
server.Start(port);
|
||||
_timer.Start();
|
||||
if (IsRunningServer is false)
|
||||
{
|
||||
OnStartServer?.Invoke();
|
||||
server.Start(port);
|
||||
_timer.Start();
|
||||
BIT4Log.Log<KCPNetServer>($"已启动KCP服务器:{port}");
|
||||
}
|
||||
else
|
||||
{
|
||||
BIT4Log.Warning<KCPNetServer>($"KCP服务器已经启动,忽略此次请求");
|
||||
}
|
||||
|
||||
}
|
||||
public void StopServer(bool dispose = false)
|
||||
{
|
||||
server.Stop();
|
||||
OnStopServer?.Invoke();
|
||||
_timer.Stop();
|
||||
if (IsRunningServer)
|
||||
{
|
||||
server.Stop();
|
||||
OnStopServer?.Invoke();
|
||||
_timer.Stop();
|
||||
BIT4Log.Log<KCPNetServer>($"已停止KCP服务器");
|
||||
}
|
||||
else
|
||||
{
|
||||
BIT4Log.Warning<KCPNetServer>($"KCP服务器未运行,忽略此次请求");
|
||||
}
|
||||
}
|
||||
public bool IsRunningServer => server.IsActive();
|
||||
public void SendMessageToClient(int id, string message)
|
||||
|
@ -140,6 +158,9 @@ namespace BITKit.Net
|
|||
var targetId = reader.ReadInt32();
|
||||
server.Send(targetId,bytes,channel);
|
||||
break;
|
||||
case NetCommandType.Ping:
|
||||
server.Send(Id,new byte[]{(byte)NetCommandType.Ping},channel);
|
||||
break;
|
||||
default:
|
||||
BIT4Log.Log<KCPNetServer>($"未知消息类型:{type},字节:{(byte)type}");
|
||||
BIT4Log.Log<KCPNetServer>($"已收到:({Id}, {BitConverter.ToString(bytes.Array, bytes.Offset, bytes.Count)} @ {channel})");
|
||||
|
@ -235,5 +256,6 @@ namespace BITKit.Net
|
|||
.Build();
|
||||
server.Send(id,bytes, KcpChannel.Reliable);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -7,6 +7,10 @@ namespace BITKit
|
|||
{
|
||||
public static class MathE
|
||||
{
|
||||
public static bool IndexInRange<T>(this IEnumerable<T> self, int index)
|
||||
{
|
||||
return index >= 0 && index < self.Count();
|
||||
}
|
||||
public static bool Equals<T>(params T[] objs)
|
||||
{
|
||||
var a = objs.FirstOrDefault();
|
||||
|
@ -25,7 +29,6 @@ namespace BITKit
|
|||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static IEnumerable<T> Subtract<T>(IEnumerable<T> a, IEnumerable<T> b) where T : IEnumerable
|
||||
{
|
||||
List<T> list = new();
|
||||
|
@ -61,7 +64,8 @@ namespace BITKit
|
|||
{
|
||||
foreach (var x in b)
|
||||
{
|
||||
if (a.Contains(x))
|
||||
var enumerable = a as T[] ?? a.ToArray();
|
||||
if (enumerable.Contains(x))
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -73,6 +77,7 @@ namespace BITKit
|
|||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public static IEnumerable<T[]> Combinations<T>(IEnumerable<T> source)
|
||||
{
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1b5481cf34bf4a145898ac81e58abf8f
|
||||
guid: 237df241127e9db4e8945efe90ffe83a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
|
@ -0,0 +1,14 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.Mod
|
||||
{
|
||||
public struct LoadFromFolderCommand
|
||||
{
|
||||
public string FolderPath;
|
||||
}
|
||||
public struct UninstallPackageCommand
|
||||
{
|
||||
public string PackageName;
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e6b88c0718e45444c886e28026f920cc
|
||||
guid: 5db9ede675f865f4bb8572fada2ec7ab
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
|
@ -0,0 +1,60 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace BITKit.Mod
|
||||
{
|
||||
[Serializable]
|
||||
public sealed record ModPackage
|
||||
{
|
||||
public const string DefaultFileName = "package.json";
|
||||
/// <summary>
|
||||
/// ModPackage名称,可以重复
|
||||
/// </summary>
|
||||
public string Name;
|
||||
/// <summary>
|
||||
/// 唯一包名
|
||||
/// </summary>
|
||||
public string PackageName;
|
||||
/// <summary>
|
||||
/// 描述
|
||||
/// </summary>
|
||||
public string Description;
|
||||
/// <summary>
|
||||
/// 版本号,建议调试时为0.0.0
|
||||
/// </summary>
|
||||
public string Version;
|
||||
/// <summary>
|
||||
/// 依赖包,例如: "com.bitkit.mymod":"0.0.0"
|
||||
/// </summary>
|
||||
public Dictionary<string, string> Dependencies;
|
||||
/// <summary>
|
||||
/// 引用DLL,如果丢失则会导致Mod无法加载,例如: "BITKit.dll"
|
||||
/// </summary>
|
||||
public List<string> Dlls;
|
||||
/// <summary>
|
||||
/// 标签,用于过滤和搜索
|
||||
/// </summary>
|
||||
public string[] Tags=Array.Empty<string>();
|
||||
/// <summary>
|
||||
/// 下载直链,通常托管于其他平台
|
||||
/// </summary>
|
||||
public string DownloadLink;
|
||||
/// <summary>
|
||||
/// 程序入口,类似指向.cs脚本或者.version资源文件
|
||||
/// </summary>
|
||||
public string EntryPoint;
|
||||
/// <summary>
|
||||
/// 当前路径,由中间件自动填充
|
||||
/// </summary>
|
||||
[JsonIgnore]
|
||||
public string WorkDirectory;
|
||||
/// <summary>
|
||||
/// 描述文件路径,由中间件自动填充
|
||||
/// </summary>
|
||||
[JsonIgnore]
|
||||
public string PackagePath;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3b340f148374c7a4ab84a5835089faf6
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,516 @@
|
|||
using System;
|
||||
using System.CodeDom.Compiler;
|
||||
using System.Collections;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.IO.Compression;
|
||||
using System.IO.MemoryMappedFiles;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using BITKit.IO;
|
||||
using BITKit.UX;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using Microsoft.CSharp;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace BITKit.Mod
|
||||
{
|
||||
/// <summary>
|
||||
/// Mod接口,需要实现所有方法
|
||||
/// </summary>
|
||||
public interface IMod
|
||||
{
|
||||
string FolderPath { get; set; }
|
||||
/// <summary>
|
||||
/// 唯一Id
|
||||
/// </summary>
|
||||
public Guid Id => new Guid("3E5AF780-FAB1-40B7-B8EF-62938F2340CB");
|
||||
/// <summary>
|
||||
/// Mod名称,可以重复
|
||||
/// </summary>
|
||||
public string Name { get; }
|
||||
/// <summary>
|
||||
/// 包名,不可重复
|
||||
/// </summary>
|
||||
public string PackageName { get; }
|
||||
/// <summary>
|
||||
/// 描述,可为空
|
||||
/// </summary>
|
||||
public string Description { get; }
|
||||
/// <summary>
|
||||
/// 版本,调试时Mod版本需要高于以前的版本或者为0.0.0
|
||||
/// </summary>
|
||||
public string Version { get; }
|
||||
/// <summary>
|
||||
/// 开发者
|
||||
/// </summary>
|
||||
public string Author { get; }
|
||||
/// <summary>
|
||||
/// 联系邮箱,或者为其他联系方式
|
||||
/// </summary>
|
||||
public string Email { get; }
|
||||
/// <summary>
|
||||
/// Mod主页
|
||||
/// </summary>
|
||||
public string Url { get; }
|
||||
/// <summary>
|
||||
/// Mod标签,通常用于过滤和搜索
|
||||
/// </summary>
|
||||
public string[] Tags { get; }
|
||||
/// <summary>
|
||||
/// Mod属性,例如图标,背景或者其他资产包
|
||||
/// </summary>
|
||||
public object[] Properties { get; }
|
||||
/// <summary>
|
||||
/// 初始化时
|
||||
/// </summary>
|
||||
void OnInitialize();
|
||||
/// <summary>
|
||||
/// 初始化时的异步方法
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
UniTask OnInitializedAsync(CancellationToken cancellationToken);
|
||||
/// <summary>
|
||||
/// 初始化完成后
|
||||
/// </summary>
|
||||
void OnInitialized();
|
||||
/// <summary>
|
||||
/// 被释放时
|
||||
/// </summary>
|
||||
void OnDispose();
|
||||
/// <summary>
|
||||
/// 被释放时的异步方法
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
UniTask OnDisposeAsync(CancellationToken cancellationToken);
|
||||
/// <summary>
|
||||
/// 被释放后
|
||||
/// </summary>
|
||||
void OnDisposed();
|
||||
}
|
||||
public class MyMod : IMod
|
||||
{
|
||||
public string FolderPath { get; set; }
|
||||
public virtual string Name { get; set; } = nameof(MyMod);
|
||||
// ReSharper disable once StringLiteralTypo
|
||||
public virtual string PackageName { get; set; } = "com.bitkit.mymod";
|
||||
public virtual string Description{ get; set; } = "Empty mod for test function";
|
||||
public virtual string Version { get; set; } = "initial 0.0.1";
|
||||
public virtual string Author { get; set; } = nameof(BITKit);
|
||||
public virtual string Email { get; set; } = "root@bitfall.icu";
|
||||
public virtual string Url { get; set; } = "https://bitfall.icu";
|
||||
public virtual string[] Tags { get; set; } = Array.Empty<string>();
|
||||
public virtual object[] Properties{ get; set; } = Array.Empty<object>();
|
||||
public virtual void OnInitialize()
|
||||
{
|
||||
}
|
||||
public virtual UniTask OnInitializedAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
return UniTask.CompletedTask;
|
||||
}
|
||||
public virtual void OnInitialized()
|
||||
{
|
||||
}
|
||||
public virtual void OnDispose()
|
||||
{
|
||||
}
|
||||
public virtual UniTask OnDisposeAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
return UniTask.CompletedTask;
|
||||
}
|
||||
public virtual void OnDisposed()
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
public class ModService
|
||||
{
|
||||
public static async UniTask<ModPackage[]> SearchPackages()
|
||||
{
|
||||
DI.TryGet<IUXWaiting>(out var waiting);
|
||||
var handle = waiting?.Get();
|
||||
handle?.SetMessage("正在搜索Mod包");
|
||||
|
||||
var list=new List<ModPackage>();
|
||||
var path = Path.Combine(Environment.CurrentDirectory, "Mods");
|
||||
var dir = new DirectoryInfo(path);
|
||||
dir.Create();
|
||||
foreach (var x in dir.GetDirectories())
|
||||
{
|
||||
var file = Path.Combine(x.FullName,ModPackage.DefaultFileName);
|
||||
if(File.Exists(file) is false)continue;
|
||||
var package = JsonConvert.DeserializeObject<ModPackage>(await File.ReadAllTextAsync(file))!;
|
||||
package.PackagePath = file;
|
||||
package.WorkDirectory = x.FullName;
|
||||
list.Add(package);
|
||||
}
|
||||
|
||||
waiting?.Release(handle);
|
||||
return list.ToArray();
|
||||
}
|
||||
public static async UniTask Reload()
|
||||
{
|
||||
OnReload?.Invoke();
|
||||
var mods = Mods;
|
||||
foreach (var x in Mods)
|
||||
{
|
||||
UnLoad(x);
|
||||
UnInstall(x);
|
||||
}
|
||||
|
||||
foreach (var x in await SearchPackages())
|
||||
{
|
||||
var path = x.PackagePath;
|
||||
if (File.Exists(path) is false)
|
||||
{
|
||||
BIT4Log.Warning<ModService>($"未找到{x.PackageName}的描述文件:{path}");
|
||||
continue;
|
||||
}
|
||||
try
|
||||
{
|
||||
await LoadFromPackage(path);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
}
|
||||
OnReloaded?.Invoke();
|
||||
}
|
||||
|
||||
public static IMod[] Mods { get; private set; }=Array.Empty<IMod>();
|
||||
|
||||
public static bool IsLocked
|
||||
{
|
||||
get => _IsLocked;
|
||||
set
|
||||
{
|
||||
if (_IsLocked == value) return;
|
||||
_IsLocked = value;
|
||||
OnLocked?.Invoke(value);
|
||||
}
|
||||
}
|
||||
|
||||
public static event Action<ModPackage> OnPackageLoad;
|
||||
public static event Action<ModPackage> OnPackageLoaded;
|
||||
|
||||
public static event Action<IMod> OnModLoad;
|
||||
public static event Action<IMod> OnModLoaded;
|
||||
public static event Action<IMod> OnModUnLoad;
|
||||
public static event Action<IMod> OnModUnLoaded;
|
||||
public static event Action<IMod> OnModInstalled;
|
||||
public static event Action<IMod> OnModUnInstalled;
|
||||
|
||||
public static event Action OnReload;
|
||||
public static event Action OnReloaded;
|
||||
|
||||
public static event Action<bool> OnLocked;
|
||||
|
||||
public static event Func<IMod,UniTask> OnModLoadAsync;
|
||||
public static event Func<IMod,UniTask> OnModUnloadAsync;
|
||||
|
||||
private static CancellationTokenSource _CancellationTokenSource;
|
||||
private static readonly ConcurrentQueue<IMod> _RegisterQueue=new();
|
||||
private static readonly ConcurrentQueue<IMod> _UnRegisterQueue = new();
|
||||
private static readonly List<IMod> _CacheMods = new();
|
||||
private static readonly ConcurrentDictionary<string,IMod> _InstalledMods=new();
|
||||
private static Thread _Thread;
|
||||
private static bool _IsRunning;
|
||||
private static bool _IsLocked;
|
||||
private static AppDomain _ModDomain;
|
||||
|
||||
public static void Initialize()
|
||||
{
|
||||
BIT4Log.Log<ModService>("Mod服务已启动");
|
||||
_IsRunning = true;
|
||||
_CancellationTokenSource = new CancellationTokenSource();
|
||||
_Thread = new Thread(InternalInitialize);
|
||||
_Thread.Start();
|
||||
|
||||
return;
|
||||
|
||||
async void InternalInitialize()
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
_ModDomain = AppDomain.CreateDomain("ModDomain");
|
||||
|
||||
var modPath = Path.Combine(Environment.CurrentDirectory, "Mods\\");
|
||||
PathHelper.EnsureDirectoryCreated(modPath);
|
||||
var directoryInfo = new DirectoryInfo(modPath);
|
||||
foreach (var fileInfo in directoryInfo.GetFiles())
|
||||
{
|
||||
switch (fileInfo.Extension)
|
||||
{
|
||||
case ".dll":
|
||||
{
|
||||
var assembly = Assembly.LoadFile(fileInfo.FullName);
|
||||
await Load(assembly);
|
||||
continue;
|
||||
}
|
||||
#if UNITY_64
|
||||
case ".cs":
|
||||
{
|
||||
var code = await File.ReadAllTextAsync(fileInfo.FullName);
|
||||
var assembly = BITSharp.Compile(code);
|
||||
await Load(assembly, fileInfo.DirectoryName);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.Warning<ModService>("自动加载Mod失败");
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
|
||||
|
||||
while (_IsRunning)
|
||||
{
|
||||
DI.TryGet<IUXWaiting>(out var waiting);
|
||||
|
||||
_CacheMods.Clear();
|
||||
|
||||
while (_UnRegisterQueue.TryDequeue(out var mod))
|
||||
{
|
||||
var handle = waiting?.Get();
|
||||
handle?.SetMessage($":正在卸载{mod.PackageName}");
|
||||
|
||||
mod.OnDispose();
|
||||
_CacheMods.Add(mod);
|
||||
OnModUnLoad?.Invoke(mod);
|
||||
|
||||
waiting?.Release(handle);
|
||||
}
|
||||
|
||||
foreach (var mod in _CacheMods)
|
||||
{
|
||||
await mod.OnDisposeAsync(_CancellationTokenSource.Token);
|
||||
foreach (var x in OnModUnloadAsync.CastAsFunc())
|
||||
{
|
||||
await x.Invoke(mod);
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var mod in _CacheMods)
|
||||
{
|
||||
mod.OnDisposed();
|
||||
OnModUnLoaded?.Invoke(mod);
|
||||
BIT4Log.Log<ModService>($"卸载Mod:{mod.GetType().FullName}");
|
||||
}
|
||||
|
||||
_CacheMods.Clear();
|
||||
|
||||
while (_RegisterQueue.TryDequeue(out var mod))
|
||||
{
|
||||
var handle = waiting?.Get();
|
||||
|
||||
handle?.SetMessage($"正在加载:{mod.PackageName}");
|
||||
|
||||
_CacheMods.Add(mod);
|
||||
mod.OnInitialize();
|
||||
OnModLoad?.Invoke(mod);
|
||||
BIT4Log.Log<ModService>($"加载Mod:{mod.GetType().FullName}");
|
||||
|
||||
waiting?.Release(handle);
|
||||
}
|
||||
|
||||
foreach (var mod in _CacheMods)
|
||||
{
|
||||
var handle = waiting?.Get();
|
||||
handle?.SetMessage($"正在初始化:{mod.PackageName}");
|
||||
|
||||
await mod.OnInitializedAsync(_CancellationTokenSource.Token);
|
||||
foreach (var x in OnModLoadAsync.CastAsFunc())
|
||||
{
|
||||
await x.Invoke(mod);
|
||||
}
|
||||
|
||||
waiting?.Release(handle);
|
||||
}
|
||||
|
||||
foreach (var mod in _CacheMods)
|
||||
{
|
||||
var handle = waiting?.Get();
|
||||
handle?.SetMessage($":正在完成初始化中{mod.PackageName}");
|
||||
|
||||
mod.OnInitialized();
|
||||
OnModLoaded?.Invoke(mod);
|
||||
|
||||
waiting?.Release(handle);
|
||||
}
|
||||
|
||||
_CacheMods.Clear();
|
||||
|
||||
|
||||
//Thread.Sleep(1000);
|
||||
#if UNITY_64
|
||||
await UniTask.Delay(1000);
|
||||
#else
|
||||
await Task.Delay(1000);
|
||||
#endif
|
||||
IsLocked = false;
|
||||
}
|
||||
|
||||
BIT4Log.Log<ModService>("Mod服务已停止");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
BIT4Log.Warning<ModService>("Mod服务遇到了错误,已停止");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void Dispose()
|
||||
{_IsRunning = false;
|
||||
_CancellationTokenSource.Cancel();
|
||||
try
|
||||
{
|
||||
_Thread.Join(100);
|
||||
_RegisterQueue.Clear();
|
||||
_UnRegisterQueue.Clear();
|
||||
Mods = Array.Empty<IMod>();
|
||||
_InstalledMods.Clear();
|
||||
AppDomain.Unload(_ModDomain);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
|
||||
}
|
||||
public static UniTask Load(Assembly assembly,string folderPath=null)
|
||||
{
|
||||
BIT4Log.Log<ModService>($"加载程序集:{assembly.FullName}");
|
||||
|
||||
try
|
||||
{
|
||||
//_ModDomain.Load(assembly.FullName);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
return UniTask.CompletedTask;
|
||||
}
|
||||
|
||||
var types = new List<Type>();
|
||||
|
||||
try
|
||||
{
|
||||
types.AddRange(assembly.GetTypes());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.Warning<ModService>($"{assembly.FullName}遇到了错误");
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
|
||||
foreach (var type in types)
|
||||
{
|
||||
//if (type.IsAssignableFrom(typeof(IMod)) is false)
|
||||
if(typeof(IMod).IsAssignableFrom(type) is false)
|
||||
{
|
||||
//BIT4Log.Log<ModService>($"跳过类型:{type.FullName}");
|
||||
continue;
|
||||
}
|
||||
var mod = Activator.CreateInstance(type).As<IMod>();
|
||||
DI.Inject(mod);
|
||||
mod.FolderPath =folderPath;
|
||||
if(_InstalledMods.ContainsKey(mod.PackageName))
|
||||
{
|
||||
BIT4Log.Log<ModService>($"Mod已安装,跳过加载:{mod.PackageName}");
|
||||
continue;
|
||||
}
|
||||
BIT4Log.Log<ModService>($"加载Mod:{mod.GetType().FullName},Folder:{folderPath}");
|
||||
|
||||
Install(mod);
|
||||
Load(mod);
|
||||
}
|
||||
|
||||
BIT4Log.Log<ModService>($"<color=green>程序集加载完成:{assembly.FullName}</color>");
|
||||
return UniTask.CompletedTask;
|
||||
}
|
||||
|
||||
public static async UniTask LoadFromPackage(string path)
|
||||
{
|
||||
await UniTask.Yield();
|
||||
if(File.Exists(path) is false) throw new FileNotFoundException(path);
|
||||
var package = JsonConvert.DeserializeObject<ModPackage>(await File.ReadAllTextAsync(path))!;
|
||||
BIT4Log.Log<ModService>($"加载Mod包:{package.PackageName}");
|
||||
if(package.EntryPoint is null) throw new InvalidOperationException("空入口,无法识别类型");
|
||||
path = Path.Combine(Path.GetDirectoryName(path)!, package.EntryPoint);
|
||||
if(File.Exists(path) is false) throw new InvalidOperationException($"未找到入口文件:{path}");
|
||||
|
||||
OnPackageLoad?.Invoke(package);
|
||||
|
||||
foreach (var name in package.Dlls)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
var fileInfo = new FileInfo(path);
|
||||
switch (fileInfo.Extension)
|
||||
{
|
||||
case ".dll":
|
||||
{
|
||||
var assembly = Assembly.LoadFile(fileInfo.FullName);
|
||||
await Load(assembly, fileInfo.DirectoryName);
|
||||
break;
|
||||
}
|
||||
#if UNITY_64
|
||||
case ".cs":
|
||||
{
|
||||
var code = await File.ReadAllTextAsync(fileInfo.FullName);
|
||||
var assembly = BITSharp.Compile(code);
|
||||
await Load(assembly, fileInfo.DirectoryName);
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
OnPackageLoaded?.Invoke(package);
|
||||
}
|
||||
public static void Load(IMod mod)
|
||||
{
|
||||
IsLocked = true;
|
||||
_RegisterQueue.Enqueue(mod);
|
||||
}
|
||||
|
||||
public static void UnLoad(IMod mod)
|
||||
{
|
||||
IsLocked = true;
|
||||
_UnRegisterQueue.Enqueue(mod);
|
||||
}
|
||||
|
||||
public static void Install(IMod mod)
|
||||
{
|
||||
if (_InstalledMods.ContainsKey(mod.PackageName))
|
||||
{
|
||||
throw new ArgumentException("Mod已安装");
|
||||
}
|
||||
_InstalledMods.TryAdd(mod.PackageName,mod);
|
||||
Mods = _InstalledMods.Values.ToArray();
|
||||
OnModInstalled?.Invoke(mod);
|
||||
}
|
||||
public static void UnInstall(IMod mod)
|
||||
{
|
||||
if(_InstalledMods.ContainsKey(mod.PackageName) is false) return;
|
||||
_InstalledMods.TryRemove(mod.PackageName);
|
||||
Mods = _InstalledMods.Values.ToArray();
|
||||
OnModUnInstalled?.Invoke(mod);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3e5da31958eda074e87068926f79dd11
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.Mod
|
||||
{
|
||||
public interface IAssetMod{}
|
||||
public interface IScriptMod{}
|
||||
public interface IPackageMod{}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 55e47ab2418c5894b9c1349e43415cb3
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -1,4 +1,5 @@
|
|||
using System;
|
||||
using System.Net.Http;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
|
@ -50,6 +51,12 @@ namespace BITKit
|
|||
{
|
||||
return self.ToString();
|
||||
}
|
||||
#if NET5_0_OR_GREATER
|
||||
public static implicit operator HttpContent(ContextModel self)
|
||||
{
|
||||
return new StringContent(self, System.Text.Encoding.UTF8, "application/json");
|
||||
}
|
||||
#endif
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
|
@ -57,7 +64,7 @@ namespace BITKit
|
|||
}
|
||||
|
||||
[JsonProperty("status_code")]
|
||||
public int StatusCode;
|
||||
public int StatusCode=200;
|
||||
[JsonProperty("message")]
|
||||
public string Message=string.Empty;
|
||||
[JsonProperty("data")]
|
||||
|
|
|
@ -5,6 +5,7 @@ namespace BITKit
|
|||
public record Package
|
||||
{
|
||||
public string Name=nameof(Package);
|
||||
|
||||
public string DirectoryPath;
|
||||
public string GitUrl;
|
||||
public string Version;
|
||||
|
@ -12,5 +13,6 @@ namespace BITKit
|
|||
public string ProcessName;
|
||||
public string ProductName;
|
||||
public DateTime LastUpdateTime;
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b084884b824dece40b35759eb218d5c4
|
||||
guid: e8845089e2cd9eb44b27dabc6859da55
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
|
@ -0,0 +1,117 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace BITKit.Modification
|
||||
{
|
||||
/// <summary>
|
||||
/// 不兼容的改装
|
||||
/// </summary>
|
||||
public class IncompatibleModifyException : InGameException
|
||||
{
|
||||
public IncompatibleModifyException(IModifyElement[] errorElements) : base()
|
||||
{
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 没有前置改装
|
||||
/// </summary>
|
||||
public class NotRequireModifyException : InGameException
|
||||
{
|
||||
public NotRequireModifyException(IModifyElement[] errorElements) : base()
|
||||
{
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 不支持的改装
|
||||
/// </summary>
|
||||
public class NotSupportModifyException : InGameException
|
||||
{
|
||||
public NotSupportModifyException(IModifyElement[] errorElements) : base()
|
||||
{
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 改装元素
|
||||
/// </summary>
|
||||
public interface IModifyElement
|
||||
{
|
||||
IModifyElement[] Require { get; }
|
||||
IModifyElement[] Incompatible { get; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 改装管理器
|
||||
/// </summary>
|
||||
public interface IModifyManager
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取所有改装
|
||||
/// </summary>
|
||||
IDictionary<IModifyElement,object> Modifies { get; }
|
||||
/// <summary>
|
||||
/// 获取所有已改装
|
||||
/// </summary>
|
||||
IDictionary<IModifyElement,object> Modified { get; }
|
||||
/// <summary>
|
||||
/// 添加改装
|
||||
/// </summary>
|
||||
/// <param name="modify"></param>
|
||||
void Add(IModifyElement modify,object obj);
|
||||
/// <summary>
|
||||
/// 移除改装
|
||||
/// </summary>
|
||||
/// <param name="modify"></param>
|
||||
void Remove(IModifyElement modify,out object obj);
|
||||
}
|
||||
public class ModifyManager : IModifyManager
|
||||
{
|
||||
public virtual IDictionary<IModifyElement, object> Modifies { get; } =new Dictionary<IModifyElement,object>();
|
||||
public virtual IDictionary<IModifyElement, object> Modified { get; } = new Dictionary<IModifyElement, object>();
|
||||
|
||||
public virtual void Add(IModifyElement modify, object obj)
|
||||
{
|
||||
if(Modified.ContainsKey(modify))
|
||||
throw new NotSupportModifyException(new[]{modify});
|
||||
|
||||
var list = new List<IModifyElement>();
|
||||
list.AddRange(Modified.Keys);
|
||||
list.Add(modify);
|
||||
|
||||
|
||||
foreach (var x in list)
|
||||
{
|
||||
if(x.Require is null or {Length:0})continue;
|
||||
|
||||
foreach (var _x in x.Require)
|
||||
{
|
||||
if (list.Contains(_x) is false)
|
||||
throw new NotRequireModifyException(x.Require);
|
||||
}
|
||||
}
|
||||
|
||||
//你知道怎么做,帮我做一下
|
||||
|
||||
|
||||
var incompatible = list.Where(x=>x.Incompatible is not null).SelectMany(x => x.Incompatible).ToArray();
|
||||
if(MathE.Contains(incompatible,list))
|
||||
throw new IncompatibleModifyException(incompatible);
|
||||
|
||||
Modified.Add(modify,obj);
|
||||
}
|
||||
|
||||
public virtual void Remove(IModifyElement modify,out object obj)
|
||||
{
|
||||
var list = new List<IModifyElement>();
|
||||
list.AddRange(Modified.Keys);
|
||||
list.Remove(modify);
|
||||
|
||||
var requires = list.Where(x=>x.Require is not null).SelectMany(x => x.Require).ToArray();
|
||||
if(requires.Contains(modify))
|
||||
throw new NotRequireModifyException(requires);
|
||||
|
||||
obj = Modified[modify];
|
||||
Modified.Remove(modify);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 014832ce48d3bce4b85ecc2518c02667
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -11,6 +11,7 @@ namespace BITKit.Net.Http
|
|||
public int Port { get; set; }
|
||||
private readonly HttpListener _httpListener = new();
|
||||
public event Func<HttpListenerRequest,HttpContent> OnRequest;
|
||||
public event Action<byte[]> OnRequestBytes;
|
||||
private readonly CancellationTokenSource _cancellationTokenSource = new();
|
||||
private CancellationToken _cancellationToken=>_cancellationTokenSource.Token;
|
||||
|
||||
|
@ -69,7 +70,6 @@ namespace BITKit.Net.Http
|
|||
|
||||
var response = context.Response;
|
||||
|
||||
|
||||
var output = response.OutputStream;
|
||||
|
||||
if (request.RawUrl is "/favicon.ico")
|
||||
|
@ -83,11 +83,16 @@ namespace BITKit.Net.Http
|
|||
response.Headers.Add("Access-Control-Allow-Origin", "*"); // 允许任何来源访问,生产环境应更具体设置
|
||||
response.Headers.Add("Access-Control-Allow-Methods", "*"); // 允许的HTTP方法
|
||||
response.Headers.Add("Access-Control-Allow-Headers", "*"); // 允许的标头
|
||||
|
||||
|
||||
var content = OnRequest?.Invoke(request);
|
||||
//添加返回的文本为utf-8
|
||||
response.ContentType = "application/json;charset=utf-8";
|
||||
response.ContentEncoding = System.Text.Encoding.UTF8;
|
||||
|
||||
|
||||
|
||||
var buffer = StringHelper.GetBytes(ContextModel.Error("没有注册请求事件"));
|
||||
|
||||
var content = OnRequest?.Invoke(request);
|
||||
if (content is not null)
|
||||
{
|
||||
#if NET5_0_OR_GREATER
|
||||
|
|
|
@ -3,11 +3,11 @@ using System.Net;
|
|||
|
||||
namespace BITKit.Net.LAN
|
||||
{
|
||||
public interface ILANBroadcaster
|
||||
public interface ILANBroadcaster:IDisposable
|
||||
{
|
||||
int Port { get; set; }
|
||||
byte[] Buffer { get; set; }
|
||||
event Action<EndPoint, string> OnReceive;
|
||||
event Action<EndPoint, byte[]> OnReceive;
|
||||
void StartBroadcast();
|
||||
void StopBroadcast();
|
||||
void StartListen();
|
||||
|
|
|
@ -15,22 +15,26 @@ namespace BITKit.Net.LAN
|
|||
public byte[] Buffer { get; set; } = StringHelper.GetBytes("Hello World");
|
||||
private bool _isBroadcasting;
|
||||
private bool _isListening;
|
||||
private int head;
|
||||
private int revHead;
|
||||
|
||||
private Thread _thread;
|
||||
|
||||
public UdpBasedLanBroadcaster()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public event Action<EndPoint, string> OnReceive;
|
||||
public event Action<EndPoint, byte[]> OnReceive;
|
||||
|
||||
public void StartBroadcast()
|
||||
{
|
||||
_isBroadcasting = true;
|
||||
Thread thread = new(Process)
|
||||
_thread = new(Process)
|
||||
{
|
||||
IsBackground = true
|
||||
};
|
||||
thread.Start();
|
||||
_thread.Start();
|
||||
BIT4Log.Log<ILANBroadcaster>($"开始广播端口{Port}");
|
||||
}
|
||||
|
||||
|
@ -42,23 +46,24 @@ namespace BITKit.Net.LAN
|
|||
|
||||
public void StartListen()
|
||||
{
|
||||
if (_isListening) return;
|
||||
_isListening = true;
|
||||
var thread = new Thread(ReceiveThread)
|
||||
_thread = new Thread(ReceiveThread)
|
||||
{
|
||||
IsBackground = true
|
||||
};
|
||||
thread.Start();
|
||||
_thread.Start();
|
||||
BIT4Log.Log<ILANBroadcaster>($"开始监听端口:{Port}");
|
||||
}
|
||||
|
||||
public void StopListen()
|
||||
{
|
||||
if (_isListening is false) return;
|
||||
_isListening = false;
|
||||
_thread?.Abort();
|
||||
BIT4Log.Log<ILANBroadcaster>($"停止监听端口{Port}");
|
||||
}
|
||||
|
||||
|
||||
private void Process()
|
||||
public void Process()
|
||||
{
|
||||
var udpClient = new UdpClient(new IPEndPoint(IPAddress.Any, 0));
|
||||
|
||||
|
@ -68,9 +73,14 @@ namespace BITKit.Net.LAN
|
|||
//IPEndPoint endpoint = new IPEndPoint(IPAddress.Parse("255.255.255.255"), 8080);
|
||||
try
|
||||
{
|
||||
var tempBuffer = new byte[Buffer.Length + 1];
|
||||
tempBuffer[0] = (byte)head++;
|
||||
Buffer.CopyTo(tempBuffer, 1);
|
||||
udpClient.Send(tempBuffer, tempBuffer.Length, endpoint);
|
||||
Thread.Sleep(1000);
|
||||
while (_isBroadcasting)
|
||||
{
|
||||
udpClient.Send(Buffer, Buffer.Length, endpoint);
|
||||
udpClient.Send(tempBuffer, tempBuffer.Length, endpoint);
|
||||
Thread.Sleep(1000);
|
||||
}
|
||||
}
|
||||
|
@ -87,22 +97,44 @@ namespace BITKit.Net.LAN
|
|||
{
|
||||
var udpClient = new UdpClient(new IPEndPoint(IPAddress.Any, Port));
|
||||
var endpoint = new IPEndPoint(IPAddress.Any, 0);
|
||||
while (_isListening)
|
||||
while (_isListening && BITApp.CancellationToken.IsCancellationRequested is false)
|
||||
{
|
||||
var buf = udpClient.Receive(ref endpoint);
|
||||
var msg = Encoding.Default.GetString(buf);
|
||||
byte[] buf;
|
||||
try
|
||||
{
|
||||
buf = udpClient.Receive(ref endpoint);
|
||||
}
|
||||
catch (ThreadAbortException)
|
||||
{
|
||||
udpClient.Dispose();
|
||||
return;
|
||||
}
|
||||
var packageHead = buf[0];
|
||||
if(packageHead<revHead)
|
||||
continue;
|
||||
revHead = packageHead;
|
||||
buf = buf[1..];
|
||||
if (OnReceive is not null)
|
||||
OnReceive(endpoint, msg);
|
||||
OnReceive(endpoint, buf);
|
||||
else
|
||||
BIT4Log.Log<ILANBroadcaster>($"Receive From {endpoint}:\t{msg}");
|
||||
BIT4Log.Log<ILANBroadcaster>($"Receive From {endpoint}:\t{buf}");
|
||||
Thread.Sleep(500);
|
||||
}
|
||||
udpClient.Dispose();
|
||||
}
|
||||
catch(ThreadAbortException){}
|
||||
catch (Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
StopBroadcast();
|
||||
StopListen();
|
||||
OnReceive = null;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -28,6 +28,7 @@ namespace BITKit
|
|||
AllClientCommand=5,
|
||||
Message=6,
|
||||
Heartbeat=7,
|
||||
Ping=8,
|
||||
}
|
||||
/// <summary>
|
||||
/// 网络提供服务,包括了基础网络服务,e.g
|
||||
|
@ -43,6 +44,7 @@ namespace BITKit
|
|||
/// </summary>
|
||||
public interface INetProvider
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 向服务端发送指令
|
||||
/// </summary>
|
||||
|
@ -138,6 +140,14 @@ namespace BITKit
|
|||
/// </summary>
|
||||
public interface INetServer
|
||||
{
|
||||
/// <summary>
|
||||
/// 源物体,用于通过代理直接访问
|
||||
/// </summary>
|
||||
public object Source => this;
|
||||
/// <summary>
|
||||
/// 手动Tick
|
||||
/// </summary>
|
||||
public bool ManualTick { get; set; }
|
||||
/// <summary>
|
||||
/// 回调:当客户端连接时
|
||||
/// </summary>
|
||||
|
@ -207,6 +217,11 @@ namespace BITKit
|
|||
/// </summary>
|
||||
public interface INetClient
|
||||
{
|
||||
/// <summary>
|
||||
/// 源物体,用于通过代理直接访问
|
||||
/// </summary>
|
||||
public object Source => this;
|
||||
|
||||
//基本客户端回调
|
||||
public event Action OnStartConnect;
|
||||
public event Action OnConnected;
|
||||
|
@ -217,6 +232,10 @@ namespace BITKit
|
|||
/// </summary>
|
||||
bool IsConnected { get; }
|
||||
/// <summary>
|
||||
/// 手动Tick
|
||||
/// </summary>
|
||||
bool ManualTick { get; set; }
|
||||
/// <summary>
|
||||
/// 连接服务端的延迟
|
||||
/// </summary>
|
||||
int Ping { get; }
|
||||
|
|
|
@ -4,11 +4,14 @@ namespace BITKit
|
|||
{
|
||||
public interface ICondition
|
||||
{
|
||||
public bool Allow => OnCheck();
|
||||
public string Reason=> "Not Implemented";
|
||||
bool OnCheck();
|
||||
}
|
||||
[Serializable]
|
||||
public struct AllowCondition : ICondition
|
||||
{
|
||||
|
||||
public bool OnCheck() => true;
|
||||
}
|
||||
}
|
|
@ -37,6 +37,12 @@ namespace BITKit
|
|||
[System.Serializable]
|
||||
public class Optional<T> : IOptional<T>
|
||||
{
|
||||
public Optional(){}
|
||||
public Optional(T value, bool allow=false)
|
||||
{
|
||||
this.allow = allow;
|
||||
this.value = value;
|
||||
}
|
||||
#if NET5_0_OR_GREATER
|
||||
bool allow;
|
||||
T value;
|
||||
|
|
|
@ -11,7 +11,6 @@ namespace BITKit
|
|||
/// </summary>
|
||||
public interface IProperty
|
||||
{
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 属性接口
|
||||
|
@ -71,11 +70,7 @@ namespace BITKit
|
|||
{
|
||||
foreach (var x in factory)
|
||||
{
|
||||
properties.Add(x.GetType()!.FullName, x);
|
||||
foreach (var att in x.GetType().GetCustomAttributes<CustomTypeAttribute>())
|
||||
{
|
||||
properties.Add(att.Type!.FullName, x);
|
||||
}
|
||||
AddPropertyInternal(x);
|
||||
}
|
||||
}
|
||||
Dictionary<string, object> properties=new();
|
||||
|
@ -104,7 +99,8 @@ namespace BITKit
|
|||
}
|
||||
else
|
||||
{
|
||||
properties.Add(typeof(T).FullName, x = addFactory.Invoke());
|
||||
AddPropertyInternal(x =addFactory.Invoke());
|
||||
//properties.Add(typeof(T).FullName, x = addFactory.Invoke());
|
||||
return (T)x;
|
||||
}
|
||||
}
|
||||
|
@ -132,17 +128,24 @@ namespace BITKit
|
|||
}
|
||||
public bool TrySetProperty<T>(T value)
|
||||
{
|
||||
if (properties.TryGetValue(typeof(T).FullName, out var x))
|
||||
bool result = false;
|
||||
foreach (var pair in properties.Where(x=>x.Value is T).ToArray())
|
||||
{
|
||||
properties[typeof(T).FullName] = value;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
properties[pair.Key] = value;
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
// if (properties.TryGetValue(typeof(T).FullName, out var x))
|
||||
// {
|
||||
// properties[typeof(T).FullName] = value;
|
||||
// return true;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// return false;
|
||||
// }
|
||||
}
|
||||
public object[] GetProperties()=>properties.Values.ToArray();
|
||||
public object[] GetProperties()=>properties.Values.Distinct().ToArray();
|
||||
|
||||
public void Read(BinaryReader r)
|
||||
{
|
||||
|
@ -168,9 +171,21 @@ namespace BITKit
|
|||
ClearProperties();
|
||||
foreach (var x in propertable.GetProperties())
|
||||
{
|
||||
properties.Add(x.GetType().FullName, x);
|
||||
AddPropertyInternal(x);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
private void AddPropertyInternal(object value)
|
||||
{
|
||||
if (value is ICloneable cloneable)
|
||||
{
|
||||
value = cloneable.Clone();
|
||||
}
|
||||
properties.Set(value.GetType().FullName, value);
|
||||
foreach (var att in value.GetType().GetCustomAttributes<CustomTypeAttribute>())
|
||||
{
|
||||
properties.Set(att.Type!.FullName, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1e7e446ac0194274b92bb8359fe606cb
|
||||
guid: 0a9ce048cccddfd42972d7502f096e77
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
namespace BITKit
|
||||
{
|
||||
public enum SelectionState
|
||||
|
@ -18,7 +17,9 @@ namespace BITKit
|
|||
}
|
||||
public interface ISelectable
|
||||
{
|
||||
Transform Transform { get; }
|
||||
#if UNITY_64
|
||||
UnityEngine.Transform Transform { get; }
|
||||
#endif
|
||||
void SetSelectionState(SelectionState state);
|
||||
event Action OnNone;
|
||||
event Action OnHover;
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BITKit.Selection
|
||||
{
|
|
@ -1,5 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2dd296d4da4d5fd48adf5c0f97c0b89e
|
||||
guid: 119f6a0b25fc0cc47b6f950cd9902aba
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
|
@ -1,38 +1,228 @@
|
|||
using System;
|
||||
using System.CodeDom.Compiler;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using BITKit.Mod;
|
||||
|
||||
#if UNITY_64
|
||||
using System.Collections;
|
||||
using BITKit.UX;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering;
|
||||
using static BITKit.Mod.DotNetSdkRoslynService;
|
||||
#endif
|
||||
#if UNITY_EDITOR
|
||||
using UnityEditor;
|
||||
#endif
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public class BITSharp
|
||||
{
|
||||
#if UNITY_64
|
||||
[RuntimeInitializeOnLoadMethod]
|
||||
private static void Reload()
|
||||
{
|
||||
ReferencedAssemblies.Clear();
|
||||
Dictionary.Clear();
|
||||
assemblies = null;
|
||||
|
||||
}
|
||||
#endif
|
||||
public static readonly List<string> ReferencedAssemblies = new();
|
||||
private static readonly ConcurrentDictionary<string, Type> Dictionary = new();
|
||||
static Assembly[] assemblies;
|
||||
public static bool TryGetTypeFromFullName(string fullClassName,out Type type)
|
||||
private static Assembly[] assemblies;
|
||||
|
||||
public static bool TryGetTypeFromFullName(string fullClassName, out Type type)
|
||||
{
|
||||
type = GetTypeFromFullName(fullClassName);
|
||||
return type is not null ? true : false;
|
||||
}
|
||||
|
||||
public static Type GetTypeFromFullName(string fullClassName)
|
||||
{
|
||||
return Dictionary.GetOrAdd(fullClassName, SearchType);
|
||||
}
|
||||
static Type SearchType(string fullName)
|
||||
|
||||
private static Type SearchType(string fullName)
|
||||
{
|
||||
assemblies = assemblies??AppDomain.CurrentDomain.GetAssemblies();
|
||||
foreach (var assembly in assemblies)
|
||||
{
|
||||
var type = assembly.GetType(fullName,false);
|
||||
if (type is not null)
|
||||
{
|
||||
return type;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
assemblies ??= AppDomain.CurrentDomain.GetAssemblies();
|
||||
return assemblies.Select(assembly => assembly.GetType(fullName, false)).FirstOrDefault(type => type is not null);
|
||||
}
|
||||
#if UNITY_64
|
||||
|
||||
public static Assembly Compile(params string[] codes)
|
||||
{
|
||||
var outputPath = PathHelper.GetTempFilePath();
|
||||
|
||||
DI.TryGet<IUXWaiting>(out var waiting);
|
||||
|
||||
var handle = waiting?.Get();
|
||||
handle?.SetMessage("正在编译");
|
||||
try
|
||||
{
|
||||
if (Installed is false)
|
||||
{
|
||||
throw new FileNotFoundException($"未从当前路径找到Roslyn:\n{CSCPath}");
|
||||
}
|
||||
|
||||
var argumentBuilder = new StringBuilder();
|
||||
|
||||
var tempList = new List<string> { outputPath };
|
||||
|
||||
foreach (var code in codes)
|
||||
{
|
||||
var temp = PathHelper.GetTempFilePath();
|
||||
|
||||
File.WriteAllText(temp,code);
|
||||
|
||||
argumentBuilder.Append(" ");
|
||||
argumentBuilder.Append(temp);
|
||||
|
||||
tempList.Add(temp);
|
||||
}
|
||||
|
||||
argumentBuilder.Append(" -target:library");
|
||||
|
||||
argumentBuilder.Append(" /unsafe");
|
||||
|
||||
foreach (var x in ReferencedAssemblies)
|
||||
{
|
||||
argumentBuilder.Append(" ");
|
||||
argumentBuilder.Append("-r:");
|
||||
argumentBuilder.Append(x);
|
||||
//argumentBuilder.Append(Path.Combine(dllPath, x));
|
||||
}
|
||||
|
||||
argumentBuilder.Append(" ");
|
||||
argumentBuilder.Append($"-out:{outputPath}");
|
||||
|
||||
BIT4Log.Log<BITSharp>("已创建编译参数:");
|
||||
BIT4Log.Log(argumentBuilder.ToString());
|
||||
|
||||
BIT4Log.Log<BITSharp>($"dotnet {CSCPath} {argumentBuilder}");
|
||||
|
||||
//Original
|
||||
// var StartInfo = new ProcessStartInfo
|
||||
// {
|
||||
// //FileName = MCSPath,
|
||||
// FileName = "dotnet",
|
||||
// Arguments =$"{CSCPath} {argumentBuilder}" ,
|
||||
// UseShellExecute = true,
|
||||
// CreateNoWindow = false,
|
||||
// };
|
||||
|
||||
var StartInfo = new ProcessStartInfo
|
||||
{
|
||||
//FileName = MCSPath,
|
||||
FileName = "dotnet",
|
||||
Arguments =$"{CSCPath} {argumentBuilder}" ,
|
||||
UseShellExecute = false,
|
||||
CreateNoWindow = true,
|
||||
RedirectStandardOutput = true,
|
||||
RedirectStandardError = true,
|
||||
StandardErrorEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
StandardInputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
StandardOutputEncoding = System.Text.Encoding.GetEncoding("gb2312"),
|
||||
};
|
||||
|
||||
|
||||
var process = new Process()
|
||||
{
|
||||
StartInfo = StartInfo,
|
||||
};
|
||||
process.OutputDataReceived += (sender, args) =>
|
||||
{
|
||||
BIT4Log.Log<BITSharp>(args.Data);
|
||||
};
|
||||
process.ErrorDataReceived += (sender, args) =>
|
||||
{
|
||||
BIT4Log.Warning<BITSharp>(args.Data);
|
||||
};
|
||||
|
||||
process.Start();
|
||||
BIT4Log.Log<BITSharp>("已启动");
|
||||
|
||||
process.BeginErrorReadLine();
|
||||
process.BeginOutputReadLine();
|
||||
|
||||
while (process.HasExited is false)
|
||||
{
|
||||
Thread.Sleep(100);
|
||||
if (BITApp.CancellationToken.IsCancellationRequested) throw new OperationCanceledException("程序已退出,取消编译");
|
||||
}
|
||||
|
||||
var bytes = File.ReadAllBytes(outputPath);
|
||||
|
||||
if(process.ExitCode is not 0)
|
||||
{
|
||||
BIT4Log.LogException(new Exception($"编译失败:{process.ExitCode}"));
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (var x in tempList)
|
||||
{
|
||||
File.Delete(x);
|
||||
}
|
||||
}
|
||||
|
||||
waiting?.Release(handle);
|
||||
|
||||
return Assembly.Load(bytes);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
waiting?.Release(handle);
|
||||
|
||||
throw new Exception($"编译失败:{e}");
|
||||
}
|
||||
|
||||
// var codeProvider = new CSharpCodeProvider();
|
||||
// var parameters = new CompilerParameters
|
||||
// {
|
||||
// GenerateInMemory = true,
|
||||
// CompilerOptions = "/unsafe",
|
||||
// OutputAssembly = outputPath,
|
||||
// };
|
||||
// parameters.ReferencedAssemblies.Add("System.dll");
|
||||
// foreach (var x in ReferencedAssemblies)
|
||||
// {
|
||||
// parameters.ReferencedAssemblies.Add(x);
|
||||
// BIT4Log.Log<BITSharp>($"添加引用:");
|
||||
// BIT4Log.Log<BITSharp>(x);
|
||||
// }
|
||||
//
|
||||
// BIT4Log.Log<BITSharp>($"程序集输出路径:{outputPath}");
|
||||
//
|
||||
// var results = codeProvider.CompileAssemblyFromSource(parameters, codes);
|
||||
//
|
||||
// if (results.Errors.Count <= 0)
|
||||
// {
|
||||
// BIT4Log.Log<BITSharp>($"编译成功:{results.CompiledAssembly.FullName}");
|
||||
//
|
||||
// codeProvider.Dispose();
|
||||
// return results.CompiledAssembly;
|
||||
// }
|
||||
//
|
||||
// foreach (CompilerError error in results.Errors)
|
||||
// {
|
||||
// var sb = new StringBuilder();
|
||||
// sb.AppendLine(error.FileName);
|
||||
// sb.AppendLine($"Error ({error.ErrorNumber}): {error.ErrorText}");
|
||||
// sb.AppendLine($"Line: {error.Line}, Column: {error.Column}");
|
||||
// sb.AppendLine($"Is Warning: {error.IsWarning}");
|
||||
// BIT4Log.LogException(new Exception(sb.ToString()));
|
||||
// }
|
||||
//
|
||||
// throw new Exception("编译失败");
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2f4e804e88433c74392144bb5a48db7c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,226 @@
|
|||
#if UNITY_64
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
|
||||
|
||||
using AnotherFileBrowser.Windows;
|
||||
using UnityEngine;
|
||||
|
||||
using Cysharp.Threading.Tasks;
|
||||
|
||||
|
||||
|
||||
namespace BITKit.IO
|
||||
{
|
||||
public interface IApplicationFile
|
||||
{
|
||||
string Extension { get; set; }
|
||||
IStorageFile Current { get; }
|
||||
event Func<(string, byte[])> DataHandle;
|
||||
event Action<IStorageFile, IStorageFile> OnPathChanged;
|
||||
void Save();
|
||||
void SaveAs(string path=null);
|
||||
void Load(IStorageFile file=null);
|
||||
void Reload();
|
||||
void AddListener(string key, Action<byte[]> action);
|
||||
void RemoveListener(string key, Action<byte[]> action);
|
||||
}
|
||||
[Serializable]
|
||||
public sealed class ApplicationFile:IApplicationFile
|
||||
{
|
||||
private const string DefaultPath = nameof(ApplicationFile)+"."+nameof(DefaultPath);
|
||||
|
||||
#if UNITY_64
|
||||
[UnityEngine.RuntimeInitializeOnLoadMethod]
|
||||
private static void Reload()
|
||||
{
|
||||
Current = null;
|
||||
DataHandle = null;
|
||||
_genericEvent.Clear();
|
||||
_OpenFileCancellationTokenSource = new();
|
||||
}
|
||||
#endif
|
||||
public static IStorageFile Current
|
||||
{
|
||||
get => _current;
|
||||
set
|
||||
{
|
||||
OnPathChanged?.Invoke(_current,value);
|
||||
_current = value;
|
||||
}
|
||||
}
|
||||
|
||||
private static IStorageFile _current;
|
||||
public static event Func<(string, byte[])> DataHandle;
|
||||
public static event Action<IStorageFile, IStorageFile> OnPathChanged;
|
||||
private static readonly GenericEvent _genericEvent = new();
|
||||
private static CancellationTokenSource _OpenFileCancellationTokenSource = new();
|
||||
private static string Extension { get; set; } = "zip";
|
||||
|
||||
private static BrowserProperties _browserProperties
|
||||
{
|
||||
get
|
||||
{
|
||||
var bp = new BrowserProperties();
|
||||
#if UNITY_64
|
||||
if (PlayerPrefs.HasKey(DefaultPath))
|
||||
{
|
||||
bp.initialDir = PlayerPrefs.GetString(DefaultPath);
|
||||
}
|
||||
#endif
|
||||
if (string.IsNullOrEmpty(Extension) is false)
|
||||
{
|
||||
bp.filter = $"{Extension} files (*.{Extension})|*.{Extension}";
|
||||
}
|
||||
return bp;
|
||||
}
|
||||
}
|
||||
|
||||
public static void Save()
|
||||
{
|
||||
if (Current is null)
|
||||
{
|
||||
var bp = _browserProperties;
|
||||
|
||||
new Thread(() =>
|
||||
{
|
||||
new FileBrowser().SaveFileBrowser(bp, nameof(ApplicationFile), $".{Extension}", async path =>
|
||||
{
|
||||
await BITApp.SwitchToMainThread();
|
||||
|
||||
Current = new FileProvider(path);
|
||||
|
||||
Save();
|
||||
});
|
||||
}).Start();
|
||||
|
||||
BIT4Log.Log<IApplicationFile>($"无已加载的数据,等待选择保存地址");
|
||||
return;
|
||||
}
|
||||
|
||||
if (DataHandle is null)
|
||||
{
|
||||
BIT4Log.Log<IApplicationFile>("无任何可保存的数据");
|
||||
}
|
||||
|
||||
List<IAsset> assets = new();
|
||||
foreach (var func in DataHandle.CastAsFunc())
|
||||
{
|
||||
(string name,byte[] bytes) value = func.Invoke();
|
||||
var asset = new BITAsset(value.name,value.bytes);
|
||||
assets.Add(asset);
|
||||
}
|
||||
BITAssets.Build(Current.GetPath(),assets.ToArray());
|
||||
|
||||
BIT4Log.Log<IApplicationFile>($"已保存为:{Current.GetPath()}");
|
||||
}
|
||||
|
||||
public static async void SaveAs(string path)
|
||||
{
|
||||
if (path is null)
|
||||
{
|
||||
var bp = _browserProperties;
|
||||
|
||||
new Thread(() =>
|
||||
{
|
||||
new FileBrowser().SaveFileBrowser(bp, nameof(ApplicationFile), $".{Extension}", async path =>
|
||||
{
|
||||
await BITApp.SwitchToMainThread();
|
||||
|
||||
Current = new FileProvider(path);
|
||||
|
||||
SaveAs(path);
|
||||
});
|
||||
}).Start();
|
||||
|
||||
return;
|
||||
}
|
||||
Current = new FileProvider(path);
|
||||
Save();
|
||||
}
|
||||
public void AddListener(string key, Action<byte[]> action)
|
||||
{
|
||||
_genericEvent.AddListener<byte[]>(key,action);
|
||||
}
|
||||
|
||||
public void RemoveListener(string key, Action<byte[]> action)
|
||||
{
|
||||
_genericEvent.RemoveListener<byte[]>(key,action);
|
||||
}
|
||||
|
||||
public static void ReloadFile()
|
||||
{
|
||||
Load(Current);
|
||||
}
|
||||
public static void Load(IStorageFile file=null)
|
||||
{
|
||||
if (file is null)
|
||||
{
|
||||
_OpenFileCancellationTokenSource.Cancel();
|
||||
_OpenFileCancellationTokenSource = new();
|
||||
|
||||
BIT4Log.Log<IApplicationFile>("正在选择文件,跳过该次载入");
|
||||
|
||||
var bp = _browserProperties;
|
||||
new Thread(() =>
|
||||
{
|
||||
new FileBrowser().OpenFileBrowser(bp, Filepath);
|
||||
return;
|
||||
async void Filepath(string path)
|
||||
{
|
||||
await BITApp.SwitchToMainThread();
|
||||
Current = new FileProvider(path);
|
||||
Load(Current);
|
||||
}
|
||||
}).Start();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
Current = file;
|
||||
|
||||
var path = file.GetPath();
|
||||
var header = BITAssets.ReadHeader(path);
|
||||
foreach (var name in header.Files)
|
||||
{
|
||||
var asset = BITAssets.ReadAsset(path, name);
|
||||
|
||||
_genericEvent.Invoke(asset.Name,asset.Buffer);
|
||||
}
|
||||
BIT4Log.Log<IApplicationFile>($"已加载{header.Files.Count}个数据");
|
||||
}
|
||||
string IApplicationFile.Extension
|
||||
{
|
||||
get => Extension;
|
||||
set => Extension = value;
|
||||
}
|
||||
IStorageFile IApplicationFile.Current => Current;
|
||||
|
||||
event Func<(string, byte[])> IApplicationFile.DataHandle
|
||||
{
|
||||
add => DataHandle += value;
|
||||
remove => DataHandle -= value;
|
||||
}
|
||||
event Action<IStorageFile,IStorageFile> IApplicationFile.OnPathChanged
|
||||
{
|
||||
add => OnPathChanged += value;
|
||||
remove=>OnPathChanged -= value;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void IApplicationFile.Save() => Save();
|
||||
|
||||
void IApplicationFile.SaveAs(string path) => SaveAs(path);
|
||||
|
||||
void IApplicationFile.Load(IStorageFile file) => Load(file);
|
||||
void IApplicationFile.Reload()=>ReloadFile();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f898a39f5757fbe4c8c63532611d5542
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -4,11 +4,10 @@ namespace BITKit
|
|||
{
|
||||
public interface ITicker
|
||||
{
|
||||
ulong TickCount { get; }
|
||||
void Add(Action action);
|
||||
void AddAsUpdate(Action<float> action);
|
||||
void AddAsFixedUpdate(Action<float> action);
|
||||
void RemoveAsUpdate(Action<float> action);
|
||||
void RemoveAsFixedUpdate(Action<float> action);
|
||||
void Add(Action<float> action);
|
||||
void Remove(Action<float> action);
|
||||
}
|
||||
public interface IMainTicker : ITicker { }
|
||||
public interface IThreadTicker : ITicker { }
|
||||
|
|
|
@ -1,107 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using Timer = System.Timers.Timer;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public class ThreadHelper : IThreadTicker
|
||||
{
|
||||
internal static void InitAPP()
|
||||
{
|
||||
ThreadHelper helper = new();
|
||||
singleton = helper;
|
||||
DI.Register<ThreadHelper>(helper);
|
||||
DI.Register<IThreadTicker>(helper);
|
||||
}
|
||||
static ThreadHelper singleton;
|
||||
public static void LogCurrentThread()
|
||||
{
|
||||
var currentTheadID = Thread.CurrentThread.ManagedThreadId.ToString();
|
||||
}
|
||||
private readonly List<Action<float>> Updates = new();
|
||||
private readonly List<Action<float>> FixedUpdates = new();
|
||||
private readonly CancellationToken CancellationToken=new();
|
||||
private readonly List<Timer> timers = new();
|
||||
public void AddAsUpdate(Action<float> action)
|
||||
{
|
||||
Updates.Add(action);
|
||||
}
|
||||
public void AddAsFixedUpdate(Action<float> action)
|
||||
{
|
||||
FixedUpdates.Add(action);
|
||||
}
|
||||
public void RemoveAsUpdate(Action<float> action)
|
||||
{
|
||||
Updates.Remove(action);
|
||||
}
|
||||
public void RemoveAsFixedUpdate(Action<float> action)
|
||||
{
|
||||
FixedUpdates.Remove(action);
|
||||
}
|
||||
public void Add(Action action)
|
||||
{
|
||||
try
|
||||
{
|
||||
new Thread(action.Invoke).Start();
|
||||
}
|
||||
catch (System.Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
}
|
||||
|
||||
[ExcuteOnAwake]
|
||||
public static void Start()
|
||||
{
|
||||
var ticker = DI.Get<ThreadHelper>();
|
||||
singleton = ticker;
|
||||
new Thread(singleton.Init).Start();
|
||||
}
|
||||
[ExcuteOnStop]
|
||||
public static void Stop()
|
||||
{
|
||||
foreach (var timer in singleton.timers)
|
||||
{
|
||||
timer.Stop();
|
||||
timer.Dispose();
|
||||
}
|
||||
singleton.Updates.Clear();
|
||||
singleton.FixedUpdates.Clear();
|
||||
}
|
||||
void Init()
|
||||
{
|
||||
CreateTimer(Updates, 1 / 64f);
|
||||
CreateTimer(FixedUpdates, 1 / 32f);
|
||||
}
|
||||
Timer CreateTimer(List<Action<float>> actions, float deltaTime)
|
||||
{
|
||||
Timer timer = new();
|
||||
timer.Interval = TimeSpan.FromSeconds(deltaTime).Milliseconds;
|
||||
timer.Elapsed += (x, y) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
CancellationToken.ThrowIfCancellationRequested();
|
||||
foreach (var action in actions.ToArray())
|
||||
{
|
||||
action.Invoke(deltaTime);
|
||||
}
|
||||
}
|
||||
catch (System.OperationCanceledException)
|
||||
{
|
||||
return;
|
||||
}
|
||||
catch (System.Exception e)
|
||||
{
|
||||
BIT4Log.LogException(e);
|
||||
}
|
||||
};
|
||||
timer.AutoReset = true;
|
||||
timer.Enabled = true;
|
||||
timer.Start();
|
||||
timers.Add(timer);
|
||||
return timer;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,3 +1,6 @@
|
|||
using System;
|
||||
using Unity.Mathematics;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
public enum TransformMode : int
|
||||
|
@ -7,4 +10,13 @@ namespace BITKit
|
|||
Rotate,
|
||||
Scale,
|
||||
}
|
||||
public interface ITransform:IDisposable
|
||||
{
|
||||
float3 LocalPosition { get; set; }
|
||||
float3 Position { get; set; }
|
||||
quaternion LocalRotation { get; set; }
|
||||
quaternion Rotation { get; set; }
|
||||
float3 LocalScale { get; set; }
|
||||
float4x4 Matrix { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f7541124b3e1e214fa3ba67ab31fccae
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,68 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using Unity.Mathematics;
|
||||
|
||||
namespace BITKit.Tween
|
||||
{
|
||||
|
||||
public static class BITween
|
||||
{
|
||||
public class TweenSequence
|
||||
{
|
||||
internal TweenSequence(){}
|
||||
private readonly List<UniTask> tasks = new();
|
||||
public TweenSequence Append(UniTask task)
|
||||
{
|
||||
tasks.Add(task);
|
||||
return this;
|
||||
}
|
||||
|
||||
public async UniTask Play(CancellationToken cancellationToken=default)
|
||||
{
|
||||
foreach (var task in tasks)
|
||||
{
|
||||
await task;
|
||||
if (cancellationToken.IsCancellationRequested) return;
|
||||
}
|
||||
}
|
||||
}
|
||||
public static TweenSequence CreateSequence()
|
||||
{
|
||||
return new TweenSequence();
|
||||
}
|
||||
|
||||
public static async UniTask MoveToForward(
|
||||
Action<float> setter,
|
||||
float from,
|
||||
float to,
|
||||
float duration = 1,
|
||||
CancellationToken cancellationToken = default
|
||||
)
|
||||
{
|
||||
var t = 0f;
|
||||
var delta = 1 / duration;
|
||||
setter(from);
|
||||
//BIT4Log.Log<TweenSequence>($"已创建Tween,from:[{from}]to:[{to}]duration:[{duration}]delta:[{delta}]");
|
||||
while (t < 1 && cancellationToken.IsCancellationRequested is false)
|
||||
{
|
||||
t = math.clamp(t + delta*BITApp.Time.DeltaTime, 0, 1);
|
||||
var next = math.lerp(from, to, t);
|
||||
//BIT4Log.Log<TweenSequence>($"当前进度:[{t}]next:[{next}]");
|
||||
|
||||
#if UNITY_64
|
||||
await UniTask.NextFrame(cancellationToken);
|
||||
await UniTask.SwitchToMainThread(cancellationToken);
|
||||
#else
|
||||
await UniTask.Yield();
|
||||
#endif
|
||||
setter(next);
|
||||
}
|
||||
if (cancellationToken.IsCancellationRequested is false)
|
||||
setter(to);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9f84a6de7ba54554bbbb179c4afac11e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,13 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.UX
|
||||
{
|
||||
|
||||
public interface IUXBarService
|
||||
{
|
||||
void SetOrCreate(int id,string name,float value,object data = null);
|
||||
void Remove(int id);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4a419b02b7a18a449a9598b8788a670f
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,11 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.UX
|
||||
{
|
||||
public interface IUXDialogue
|
||||
{
|
||||
void Show(string content,string title = "Alert",Action confirmAction=null,Action<bool> onChoose=null);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 69687081ecdbf81469da6af131fab9da
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.UX
|
||||
{
|
||||
public interface IUXPopup
|
||||
{
|
||||
void Popup(string content,float duration=3f);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 437d4ac1db96ac14bb41ff06527de651
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace BITKit.UX
|
||||
{
|
||||
public interface IUXWaitingHandle
|
||||
{
|
||||
string Message { get; set; }
|
||||
object Container { get; }
|
||||
public void SetMessage(string message)=>Message=message;
|
||||
}
|
||||
public interface IUXWaiting
|
||||
{
|
||||
IUXWaitingHandle Get();
|
||||
void Release(IUXWaitingHandle handle);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3eb1539e554cd824d96fbdc602b8fd81
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -1,4 +1,6 @@
|
|||
namespace BITKit
|
||||
using System;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
|
||||
public interface IAwake { void OnAwake(); }
|
||||
|
@ -23,7 +25,11 @@
|
|||
public interface IFixedUpdate { void OnFixedUpdate(float deltaTime); }
|
||||
public interface ILateUpdate { void OnLateUpdate(float deltaTime); }
|
||||
public interface IDestroy { void OnDestroyComponent(); }
|
||||
|
||||
[Serializable]
|
||||
public struct EmptyAction : IAction
|
||||
{
|
||||
public void Execute() { }
|
||||
}
|
||||
|
||||
public class BehaviorUpdater
|
||||
{
|
||||
|
|
|
@ -34,6 +34,15 @@ namespace BITKit
|
|||
private readonly Dictionary<string, List<object>> events = new();
|
||||
private readonly Dictionary<string, object> dictionary = new();
|
||||
public const string defaultEventName = nameof(GenericEvent);
|
||||
|
||||
public void Clear()
|
||||
{
|
||||
_directDirection.Clear();
|
||||
events.Clear();
|
||||
dictionary.Clear();
|
||||
}
|
||||
|
||||
|
||||
public void AddListener<T>(Action<T> action) =>
|
||||
AddListener<T>(defaultEventName, action);
|
||||
public void Invoke<T>(T value) =>
|
||||
|
@ -182,5 +191,7 @@ namespace BITKit
|
|||
{
|
||||
return dictionary.TryGetValue(key, out value);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -12,4 +12,5 @@
|
|||
T Get();
|
||||
void Set(T t);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,5 +1,11 @@
|
|||
namespace BITKit
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace BITKit
|
||||
{
|
||||
|
||||
|
||||
public interface IReference
|
||||
{
|
||||
string Get();
|
||||
|
@ -7,6 +13,15 @@
|
|||
string Replace(string value) => Get().Replace("{x}",value);
|
||||
}
|
||||
|
||||
public static class IReferenceExtensions
|
||||
{
|
||||
public static string[] Cast(this IEnumerable<IReference> self)
|
||||
{
|
||||
return self.Select(Get).ToArray();
|
||||
string Get(IReference x) => x.Value;
|
||||
}
|
||||
}
|
||||
|
||||
public interface IReference<T>
|
||||
{
|
||||
T Get();
|
||||
|
|
|
@ -22,6 +22,11 @@ namespace BITKit
|
|||
[CustomType(typeof(IValidHandle))]
|
||||
public sealed class ValidHandle: IValidHandle
|
||||
{
|
||||
public override string ToString()
|
||||
{
|
||||
return $"Allow:{enableHandle}\nElements:{string.Join("\n",objs)}\nDisableElements:{string.Join("\n",disableObjs)}";
|
||||
}
|
||||
|
||||
public ValidHandle() {}
|
||||
public ValidHandle(Action<bool> boolDelegate)
|
||||
{
|
||||
|
@ -36,11 +41,18 @@ namespace BITKit
|
|||
public bool Allow => this;
|
||||
|
||||
private bool enableHandle;
|
||||
private readonly List<object> objs = new List<object>();
|
||||
private readonly List<object> disableObjs = new List<object>();
|
||||
/// <summary>
|
||||
/// ⚠️Dont operate this field directly
|
||||
/// </summary>
|
||||
public readonly List<object> objs = new List<object>();
|
||||
/// <summary>
|
||||
/// ⚠️Dont operate this field directly
|
||||
/// </summary>
|
||||
public readonly List<object> disableObjs = new List<object>();
|
||||
private bool tempEnable;
|
||||
private Action<bool> EventOnEnableChanged;
|
||||
|
||||
|
||||
public void AddElement(object obj)
|
||||
{
|
||||
if (objs.Contains(obj))
|
||||
|
|
|
@ -50,6 +50,17 @@ namespace BITKit
|
|||
key = Generic<T>.GetVariable(key);
|
||||
events.Get(key).Remove(action);
|
||||
}
|
||||
|
||||
public static void Set<T>(string key, Func<T> factory)
|
||||
{
|
||||
key = Generic<T>.GetVariable(key);
|
||||
dictionary.AddOrUpdate(key,factory, AddOrUpdate);
|
||||
return;
|
||||
Func<T> AddOrUpdate(string _key,object current)
|
||||
{
|
||||
return factory;
|
||||
}
|
||||
}
|
||||
public static void Set<T>(string key, T value)
|
||||
{
|
||||
key = Generic<T>.GetVariable(key);
|
||||
|
@ -91,9 +102,12 @@ namespace BITKit
|
|||
key = Generic<T>.GetVariable(key);
|
||||
if (dictionary.TryGetValue(key, out var value))
|
||||
{
|
||||
if (value is T t)
|
||||
switch (value)
|
||||
{
|
||||
return t;
|
||||
case T t:
|
||||
return t;
|
||||
case Func<T> func:
|
||||
return func.Invoke();
|
||||
}
|
||||
}
|
||||
return default;
|
||||
|
|
|
@ -25,10 +25,12 @@ namespace BITKit
|
|||
else if (bool.TryParse(value, out var boolResult))
|
||||
{
|
||||
Data.Set(key, boolResult);
|
||||
Data.Set(key, boolResult ? 1 : 0);
|
||||
}
|
||||
else if (int.TryParse(value, out var intResult))
|
||||
{
|
||||
Data.Set(key, intResult);
|
||||
Data.Set(key, intResult is 1);
|
||||
}
|
||||
else if (float.TryParse(value, out var floatResult))
|
||||
{
|
||||
|
|
|
@ -35,7 +35,7 @@ namespace BITKit
|
|||
public static void EnsureDirectoryCreated(string path)
|
||||
{
|
||||
path = Path.GetDirectoryName(path);
|
||||
if (Directory.Exists(path) is true) return;
|
||||
if (Directory.Exists(path)) return;
|
||||
if (path != null) Directory.CreateDirectory(path);
|
||||
}
|
||||
|
||||
|
@ -44,21 +44,17 @@ namespace BITKit
|
|||
var path = GetPath(paths);
|
||||
var dictionaryPath = Path.GetDirectoryName(path);
|
||||
Directory.CreateDirectory(dictionaryPath);
|
||||
if (File.Exists(path) is false)
|
||||
{
|
||||
using (var fs = File.Create(path))
|
||||
{
|
||||
fs.Close();
|
||||
fs.Dispose();
|
||||
}
|
||||
}
|
||||
if (File.Exists(path)) return path;
|
||||
using var fs = File.Create(path);
|
||||
fs.Close();
|
||||
fs.Dispose();
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
public static string GetTempFilePath(string fileName = null)
|
||||
{
|
||||
var path = GetFilePath("Temps", fileName is null ? Guid.NewGuid().ToString() : fileName);
|
||||
var path = GetFilePath("Temps", fileName ?? Guid.NewGuid().ToString());
|
||||
return path;
|
||||
}
|
||||
|
||||
|
|
|
@ -12,13 +12,14 @@ namespace BITKit
|
|||
{
|
||||
public class ReflectionHelper
|
||||
{
|
||||
public static BindingFlags Flags => BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic;
|
||||
public static InitializationState State = InitializationState.None;
|
||||
private static Type[] types = Type.EmptyTypes;
|
||||
private static IEnumerable<MethodInfo> methods = new List<MethodInfo>();
|
||||
private static IEnumerable<FieldInfo> fields = new List<FieldInfo>();
|
||||
private readonly static Dictionary<Type, MethodInfo[]> methodsCache = new();
|
||||
private readonly static Dictionary<Type, FieldInfo[]> fieldsCache = new();
|
||||
private readonly static Dictionary<Attribute, Attribute[]> attributes = new();
|
||||
private static readonly Dictionary<Type, MethodInfo[]> methodsCache = new();
|
||||
private static readonly Dictionary<Type, FieldInfo[]> fieldsCache = new();
|
||||
private static readonly Dictionary<Attribute, Attribute[]> attributes = new();
|
||||
public static async Task<IEnumerable<MethodInfo>> GetMethods<Att>() where Att : Attribute
|
||||
{
|
||||
await EnsureConfig();
|
||||
|
@ -145,7 +146,7 @@ namespace BITKit
|
|||
|
||||
var loadedAssemblies = BITApp.Assemblies.IsValid()
|
||||
? BITApp.Assemblies
|
||||
: AppDomain.CurrentDomain.GetAssemblies();
|
||||
: GetAllAssemblies();
|
||||
BIT4Log.Log<ReflectionHelper>($"已加载程序集:{loadedAssemblies.Length}个");
|
||||
var result = new List<Type>();
|
||||
for (var i = 0; i < loadedAssemblies.Length; i++)
|
||||
|
@ -226,6 +227,23 @@ namespace BITKit
|
|||
State = InitializationState.Initialized;
|
||||
BIT4Log.Log<ReflectionHelper>("已完成初始化");
|
||||
}
|
||||
|
||||
private static Assembly[] GetAllAssemblies()
|
||||
{
|
||||
return AppDomain.CurrentDomain.GetAssemblies();
|
||||
//return AppDomain.CurrentDomain.GetReferanceAssemblies().ToArray();
|
||||
// var assemblies = new List<Assembly>();
|
||||
// foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
|
||||
// {
|
||||
// assemblies.Add(assembly);
|
||||
// foreach (var assemblyName in assembly.GetReferencedAssemblies())
|
||||
// {
|
||||
// assemblies.Add(Assembly.Load(assemblyName));
|
||||
// }
|
||||
// }
|
||||
// return assemblies.Distinct().ToArray();
|
||||
}
|
||||
|
||||
[ExcuteOnStop]
|
||||
public static void Reload()
|
||||
{
|
||||
|
@ -237,4 +255,36 @@ namespace BITKit
|
|||
methodsCache.Clear();
|
||||
}
|
||||
}
|
||||
public static class Extents
|
||||
{
|
||||
public static List<Assembly> GetReferanceAssemblies(this AppDomain domain)
|
||||
{
|
||||
var list = new List<Assembly>();
|
||||
domain.GetAssemblies().ForEach(i =>
|
||||
{
|
||||
GetReferanceAssemblies(i, list);
|
||||
});
|
||||
return list;
|
||||
}
|
||||
static void GetReferanceAssemblies(Assembly assembly, List<Assembly> list)
|
||||
{
|
||||
assembly.GetReferencedAssemblies().ForEach(i =>
|
||||
{
|
||||
try
|
||||
{
|
||||
var ass = Assembly.Load(i);
|
||||
if (!list.Contains(ass))
|
||||
{
|
||||
list.Add(ass);
|
||||
GetReferanceAssemblies(ass, list);
|
||||
}
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
// ignored
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3541e856e1d96bd4a829e8e12e8cba83
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Crouch Walking
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 35
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 1
|
||||
loopBlendPositionY: 1
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8c822709e3d6d0e46917b66fe5f7e84a
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Falling To Landing
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 12
|
||||
lastFrame: 32
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 0
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 1
|
||||
loopBlendPositionY: 1
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 1
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8dec093fa3fcc1c498d05016f2e0cae2
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Idle Aiming
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 63
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 0
|
||||
loopBlendPositionY: 0
|
||||
loopBlendPositionXZ: 1
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 1
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,934 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ef50c5bc9fd9c9e449e0d50759fd71ec
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors: "Copied Avatar Rig Configuration mis-match. Transform hierarchy
|
||||
does not match:\n\tTransform 'Skeleton' not found in HumanDescription.\n"
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Idle Crouching Aiming
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 63
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 1
|
||||
loopBlendPositionY: 1
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Armature(Clone)
|
||||
parentName:
|
||||
position: {x: 0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0.00000014106499, y: 0, z: -0, w: 1}
|
||||
scale: {x: 0.01, y: 0.01, z: 0.01}
|
||||
- name: FPV_Scale
|
||||
parentName: Armature
|
||||
position: {x: -0.011432648, y: 143.12502, z: -10.964716}
|
||||
rotation: {x: -0.00000033267713, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Armature
|
||||
position: {x: -0, y: 98.10986, z: -1.590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -8.610317, y: -5.3458023, z: -1.147064}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046528567, w: -0.00260748}
|
||||
scale: {x: 1.0000004, y: 0.99999976, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -0.00000036354425, y: 41.33447, z: 0.0000000026775524}
|
||||
rotation: {x: 0.034046065, y: 0.0000018172765, z: 0.000000092945356, w: 0.9994203}
|
||||
scale: {x: 1.0000001, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: -0.000000025482223, y: 41.403934, z: 0.000000009313226}
|
||||
rotation: {x: -0.035700902, y: 0.049955532, z: -0.019575339, w: 0.9979212}
|
||||
scale: {x: 0.99999994, y: 0.9999999, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 0.0000026774453, y: 7.224802, z: -11.806553}
|
||||
rotation: {x: -0.7071068, y: -0.0000000856533, z: -0.000000024982208, w: 0.7071067}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.10026122, y: 6.4234767, z: 1.6843984}
|
||||
rotation: {x: 0.7070657, y: -0.0076321783, z: -0.0076321894, w: 0.70706546}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 8.61032, y: -5.3458176, z: -1.1470647}
|
||||
rotation: {x: 0.002607503, y: 0.0000463004, z: 0.017753739, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1.0000001}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.00004553812, y: -41.33442, z: 0.0000024053734}
|
||||
rotation: {x: 0.03404606, y: 3.7164052e-10, z: 0.000000007455872, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.000075875316, y: -41.40396, z: -0.000004371628}
|
||||
rotation: {x: -0.035700902, y: 0.049957532, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 0.9999998, z: 1.0000001}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.000014939812, y: -7.2247977, z: 11.807003}
|
||||
rotation: {x: -0.7071068, y: 0.000000006193959, z: -0.000000024633206, w: 0.7071067}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.100316234, y: -6.4230614, z: -1.6843897}
|
||||
rotation: {x: 0.7070656, y: -0.007632175, z: -0.007632161, w: 0.70706564}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.9999999}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 5.822937, z: 0.1222955}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 10.340431, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 10.340431, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.095713444, y: 19.149216, z: -0.87277925}
|
||||
rotation: {x: -0.004949423, y: -0.11352192, z: 0.043275394, w: 0.99258024}
|
||||
scale: {x: 0.99999994, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -16.743505, y: -0.000000044703484, z: 0.00000037025166}
|
||||
rotation: {x: 0.12673526, y: 0.03332109, z: 0.6809726, w: 0.72048897}
|
||||
scale: {x: 0.9999996, y: 1, z: 1.0000001}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: 0.0000056624413, y: 28.508066, z: 0.0000023841858}
|
||||
rotation: {x: 0.020536406, y: 0.008321716, z: -0.020624755, w: 0.99954176}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.99999994}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -0.0000011920929, y: 24.036217, z: 0.000011444092}
|
||||
rotation: {x: -0.047397923, y: -0.24003418, z: 0.013464707, w: 0.9695131}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.78154755, y: 9.184426, z: 2.6573224}
|
||||
rotation: {x: -0.00007949769, y: -0.7104818, z: -0.0063056527, w: 0.7036873}
|
||||
scale: {x: 0.99999994, y: 0.99999994, z: 1.0000001}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: -0.0000013113022, y: 4.2097864, z: -0.0000009536743}
|
||||
rotation: {x: 0.030197192, y: -0.0000064074984, z: -0.0000013808893, w: 0.999544}
|
||||
scale: {x: 1.0000002, y: 1.0000001, z: 1.0000001}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -0.0000054836273, y: 2.5139296, z: 0.0000009536743}
|
||||
rotation: {x: 0.039458893, y: 0.000016348586, z: -0.000001325861, w: 0.9992212}
|
||||
scale: {x: 0.9999999, y: 1, z: 0.99999994}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -0.000002503395, y: 2.4609213, z: 0}
|
||||
rotation: {x: -0.0000008717178, y: -0.000015376716, z: 0.0000022801103, w: 1}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 1.2847929, y: 8.609763, z: 0.34354782}
|
||||
rotation: {x: -0.004090886, y: -0.6610824, z: -0.004002649, w: 0.7502916}
|
||||
scale: {x: 1, y: 0.9999999, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: -0.00000047683716, y: 5.1279464, z: 0.000002861023}
|
||||
rotation: {x: 0.02623186, y: 0.00000283122, z: 0.00000015809196, w: 0.99965596}
|
||||
scale: {x: 0.99999994, y: 0.9999999, z: 0.9999998}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -0.0000039339066, y: 2.8284101, z: -0.0000019073486}
|
||||
rotation: {x: 0.03347374, y: 0.0000056578124, z: -0.0000006047673, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: 0.0000026226044, y: 2.3346055, z: 0.000002861023}
|
||||
rotation: {x: -0.0000017061832, y: -0.000009203447, z: 0.000001637731, w: 1}
|
||||
scale: {x: 0.99999994, y: 0.99999994, z: 0.99999994}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.44370508, y: 7.2881813, z: -2.9359035}
|
||||
rotation: {x: -0.020070406, y: -0.55049103, z: -0.008247083, w: 0.83455914}
|
||||
scale: {x: 1, y: 1.0000002, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: -0.0000019073486, y: 3.2272491, z: 0.0000038146973}
|
||||
rotation: {x: 0.028116362, y: 0.000013828273, z: 0.000000615604, w: 0.99960464}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.99999994}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -0, y: 2.0224802, z: 0.0000038146973}
|
||||
rotation: {x: 0.036439095, y: -0.000016598038, z: 0.0000018303774, w: 0.9993359}
|
||||
scale: {x: 1, y: 0.9999999, z: 0.9999998}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -0, y: 1.8519075, z: -0.0000021457672}
|
||||
rotation: {x: 0.0000028070062, y: 0.0000035613773, z: -0.0000003259629, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1.0000001}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.95256805, y: 8.161561, z: -1.2242374}
|
||||
rotation: {x: -0.017655063, y: -0.60270107, z: -0.0040537626, w: 0.7977614}
|
||||
scale: {x: 1.0000001, y: 1.0000004, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: -0.0000023841858, y: 4.363059, z: -0.0000038146973}
|
||||
rotation: {x: 0.023556056, y: 0.0000067055216, z: 0.0000005848705, w: 0.99972254}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: -0.0000009536743, y: 2.7115512, z: 0.0000014305115}
|
||||
rotation: {x: 0.039090935, y: -0.000008391442, z: 0.00000013058947, w: 0.99923563}
|
||||
scale: {x: 0.9999999, y: 0.9999997, z: 0.99999976}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -0.00000047683716, y: 2.0957332, z: -0.0000023841858}
|
||||
rotation: {x: 0.000005085022, y: 0.0000041844323, z: -0.0000005327165, w: 1}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.99999976}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.08050299, y: 2.881691, z: 2.3514419}
|
||||
rotation: {x: 0.17960207, y: 0.8841739, z: 0.42399067, w: -0.07881337}
|
||||
scale: {x: 0.9999999, y: 0.9999998, z: 0.9999998}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: -0.000002861023, y: 2.757821, z: 0.3818295}
|
||||
rotation: {x: 0.12780552, y: -0.000000523975, z: -0.000000322085, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -0.0000009536743, y: 4.4597325, z: -0.68699336}
|
||||
rotation: {x: -0.04542155, y: -0.00000051613006, z: 0.0000011661375, w: 0.9989679}
|
||||
scale: {x: 0.99999976, y: 0.9999999, z: 1.0000001}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: 0.000009536743, y: 2.9458036, z: -0.0000003874302}
|
||||
rotation: {x: 0.0000011348457, y: 0.0000052902324, z: 0.0000005085021, w: 1}
|
||||
scale: {x: 1, y: 1, z: 0.9999999}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 25.10466, z: -1.5329584}
|
||||
rotation: {x: 0.060688432, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.99999994}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 12.747417, z: 0.00000166893}
|
||||
rotation: {x: -0.06068844, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 0.9999998, z: 0.9999998}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -1.3417819e-13, y: -0.7635193, z: 1.2895278}
|
||||
rotation: {x: 0.15949206, y: 0.68888485, z: 0.15949206, w: 0.6888848}
|
||||
scale: {x: 1.0000001, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -3.330326, y: 3.4598236, z: 8.674031}
|
||||
rotation: {x: -3.140185e-16, y: 0.70710677, z: 3.1401849e-16, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 3.3303294, y: 3.4596405, z: 8.674031}
|
||||
rotation: {x: 0.7071068, y: -0.000000053385076, z: 0.70710677, w: 0.00000005338508}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 6.373712, z: 0.00000166893}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.095713586, y: 19.149384, z: -0.8727802}
|
||||
rotation: {x: 0.9925801, y: -0.043275714, z: -0.11352303, w: 0.0049491944}
|
||||
scale: {x: 1.0000136, y: 0.99999994, z: 1.0000007}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 16.743204, y: -0.000229083, z: 0.000027098416}
|
||||
rotation: {x: 0.12673588, y: 0.033322435, z: 0.6809692, w: 0.720492}
|
||||
scale: {x: 1, y: 0.99999994, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0003787279, y: -28.508278, z: -0.000034809113}
|
||||
rotation: {x: 0.020542428, y: 0.0083179455, z: -0.020623716, w: 0.9995417}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.00015759468, y: -24.036303, z: 0.00017547607}
|
||||
rotation: {x: -0.04739711, y: -0.24003564, z: 0.013464554, w: 0.9695128}
|
||||
scale: {x: 1, y: 1.0000001, z: 1.0000001}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.78222656, y: -9.183923, z: -2.6574483}
|
||||
rotation: {x: -0.0000836998, y: -0.7104806, z: -0.0063247033, w: 0.7036883}
|
||||
scale: {x: 0.9999999, y: 0.99999994, z: 1.0000001}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000705719, y: -4.2101455, z: -0.0001373291}
|
||||
rotation: {x: 0.030206744, y: -0.000006735324, z: 0.0000126676005, w: 0.99954367}
|
||||
scale: {x: 1.0000001, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.000035762787, y: -2.5139248, z: -0.000060081482}
|
||||
rotation: {x: 0.039482415, y: 0.00000016722691, z: -0.0000063468906, w: 0.99922025}
|
||||
scale: {x: 0.99999994, y: 0.9999999, z: 0.99999994}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.000024914742, y: -2.4609394, z: 0.000061035156}
|
||||
rotation: {x: 0.000000024214383, y: 0.000000007799825, z: 0.000000016298143,
|
||||
w: 1}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -1.2848606, y: -8.609744, z: -0.343606}
|
||||
rotation: {x: -0.0040825414, y: -0.661081, z: -0.0039978097, w: 0.75029284}
|
||||
scale: {x: 1, y: 0.9999998, z: 0.9999999}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.0000042915344, y: -5.1275806, z: 0.000091552734}
|
||||
rotation: {x: 0.026233675, y: -0.000008106229, z: -0.0000050971266, w: 0.9996559}
|
||||
scale: {x: 0.9999999, y: 0.9999998, z: 0.9999998}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.000014424324, y: -2.828358, z: 0.000015258789}
|
||||
rotation: {x: 0.033475112, y: -0.00000014629966, z: -0.00000044076262, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000009179115, y: -2.3345304, z: 0.000051498413}
|
||||
rotation: {x: 0.000000011175871, y: 0.00000008160713, z: -0.00000001862645,
|
||||
w: 1}
|
||||
scale: {x: 1.0000001, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.44381046, y: -7.2880793, z: 2.9358234}
|
||||
rotation: {x: -0.020054843, y: -0.5504939, z: -0.008241761, w: 0.8345576}
|
||||
scale: {x: 1, y: 1, z: 0.99999994}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00004196167, y: -3.226898, z: 0.00009536743}
|
||||
rotation: {x: 0.02811752, y: -0.0000085234615, z: 0.0000000055879337, w: 0.9996047}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.9999999}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.000022888184, y: -2.0224924, z: 0.000049829483}
|
||||
rotation: {x: 0.03643074, y: -0.000002679542, z: -0.0000070785304, w: 0.99933624}
|
||||
scale: {x: 1, y: 0.9999999, z: 0.9999999}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000058174133, y: -1.8518865, z: 0.000009536743}
|
||||
rotation: {x: 0.00000003352762, y: 0.000000007450581, z: -0.000000031664975,
|
||||
w: 1}
|
||||
scale: {x: 0.99999994, y: 0.9999998, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.95273113, y: -8.161385, z: 1.2241869}
|
||||
rotation: {x: -0.017645737, y: -0.6027, z: -0.004049102, w: 0.79776245}
|
||||
scale: {x: 1, y: 1.0000001, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000071525574, y: -4.3628516, z: 0.00007343292}
|
||||
rotation: {x: 0.023549762, y: -0.0000037848931, z: 0.0000072503426, w: 0.9997227}
|
||||
scale: {x: 0.9999999, y: 1, z: 0.9999999}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000028133392, y: -2.711465, z: 0.0000014305115}
|
||||
rotation: {x: 0.03910562, y: 0.00000012832305, z: -0.000003903522, w: 0.9992351}
|
||||
scale: {x: 0.99999994, y: 0.9999997, z: 0.9999997}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.000006198883, y: -2.09578, z: 0.000047683716}
|
||||
rotation: {x: -0.0000000093132275, y: 0.00000004749746, z: 0.000000020489097,
|
||||
w: 1}
|
||||
scale: {x: 1, y: 1, z: 0.9999998}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.08035421, y: -2.8816614, z: -2.351449}
|
||||
rotation: {x: 0.17960459, y: 0.8841711, z: 0.42399642, w: -0.07880751}
|
||||
scale: {x: 1, y: 1.0000002, z: 0.99999976}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00002002716, y: -2.7577724, z: -0.38184237}
|
||||
rotation: {x: 0.1278042, y: -0.0000002779509, z: -0.0000000037560883, w: 0.9917994}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.99999994}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.000071525574, y: -4.459466, z: 0.6870661}
|
||||
rotation: {x: -0.045416255, y: -0.0000015099881, z: 0.0000072725425, w: 0.9989682}
|
||||
scale: {x: 0.9999999, y: 1, z: 1.0000001}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.000024795532, y: -2.9458046, z: 0.00009016693}
|
||||
rotation: {x: 0.000000009400539, y: 0.0000000022264428, z: 0.000000057742003,
|
||||
w: 1}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.9999998}
|
||||
- name: Armature_FPV_Mesh
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0.0000000011920929, y: 5.6044533e-16, z: -0.0000000035762786}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature_Mesh
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0.0000000011920929, y: 5.6044533e-16, z: -0.0000000035762786}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,934 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 99a9ad68672548c4899e8ebd82a4fb68
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors: "Copied Avatar Rig Configuration mis-match. Transform hierarchy
|
||||
does not match:\n\tTransform 'Skeleton' not found in HumanDescription.\n"
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Idle
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 250
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 1
|
||||
loopBlendOrientation: 1
|
||||
loopBlendPositionY: 1
|
||||
loopBlendPositionXZ: 1
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Armature(Clone)
|
||||
parentName:
|
||||
position: {x: 0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0.00000014106499, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Armature
|
||||
position: {x: 1.1645186e-12, y: 0.98109144, z: -0.015907438}
|
||||
rotation: {x: 0.978073, y: 8.4680066e-14, z: 0.00000042948122, w: -0.20826252}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.99999934}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0.0000000093864765, y: -0.053663183, z: 0.022599267}
|
||||
rotation: {x: 0.97807294, y: 1.86129e-13, z: 0.00000042948153, w: 0.20826262}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.99999917}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: 3.3881318e-21, y: 0.10340417, z: -9.313226e-10}
|
||||
rotation: {x: -0.000000009006635, y: 3.3881318e-21, z: -1.3855316e-20, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -2.8092262e-20, y: 0.10340429, z: -8.3647755e-10}
|
||||
rotation: {x: -0.025828619, y: -1.0346137e-15, z: -1.1743143e-10, w: 0.9996664}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -5.901037e-11, y: 0.25149548, z: -0.0023458712}
|
||||
rotation: {x: 0.08644952, y: 7.1135237e-12, z: 1.1730354e-10, w: 0.99625623}
|
||||
scale: {x: 1, y: 1, z: 0.9999999}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: 2.0744452e-12, y: 0.12748007, z: 0.000009614043}
|
||||
rotation: {x: 0.53555554, y: -0.000000006367661, z: -0.00000010472225, w: 0.8445}
|
||||
scale: {x: 1, y: 0.99999976, z: 0.9999998}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303373, y: 0.0932242, z: -0.0056573083}
|
||||
rotation: {x: 0.57306856, y: 0.4142373, z: 0.5730685, w: 0.41423717}
|
||||
scale: {x: 1, y: 1, z: 0.99999994}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.033303183, y: 0.09321974, z: -0.005644753}
|
||||
rotation: {x: -0.41423735, y: 0.5730685, z: -0.41423714, w: 0.5730685}
|
||||
scale: {x: 1, y: 1, z: 0.99999994}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -2.8937838e-10, y: 0.009858784, z: 0.011281233}
|
||||
rotation: {x: -0.27430332, y: 0.6517344, z: -0.27430326, w: 0.65173435}
|
||||
scale: {x: 1, y: 0.9999997, z: 0.9999999}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: 1.2298918e-18, y: 0.06374747, z: -0.000002818182}
|
||||
rotation: {x: -0.00000024959442, y: 6.723747e-18, z: 1.8290318e-17, w: 1}
|
||||
scale: {x: 1, y: 1.0000001, z: 1.0000001}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009508165, y: 0.19168739, z: 0.0011740681}
|
||||
rotation: {x: -0.066406526, y: -0.09566504, z: 0.73023313, w: 0.6731998}
|
||||
scale: {x: 0.9999999, y: 1.0000002, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.000000026426278, y: 0.16743506, z: 0.0000000061360765}
|
||||
rotation: {x: 0.11317764, y: -0.06605363, z: -0.027942544, w: 0.9909829}
|
||||
scale: {x: 0.9999999, y: 1, z: 1.0000001}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -0.00000007590279, y: 0.28508034, z: -0.0000000037252903}
|
||||
rotation: {x: 0.020536998, y: 0.008321421, z: -0.020624368, w: 0.9995417}
|
||||
scale: {x: 1.0000002, y: 1, z: 1.0000001}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: 0.00000010617077, y: 0.24036263, z: -0.000000029802322}
|
||||
rotation: {x: -0.020851713, y: -0.26435485, z: -0.02734141, w: 0.9638123}
|
||||
scale: {x: 0.99999994, y: 0.99999994, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.0038053095, y: 0.07196298, z: -0.03158768}
|
||||
rotation: {x: -0.0071129017, y: -0.53121513, z: 0.039870095, w: 0.8462684}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.9999999}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: -0, y: 0.03227271, z: -0.000000007450581}
|
||||
rotation: {x: 0.028114427, y: 0.000015676016, z: 0.0000015229447, w: 0.9996047}
|
||||
scale: {x: 0.9999999, y: 1.0000001, z: 0.9999998}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: 0.000000029802322, y: 0.020224608, z: 0.000000018626451}
|
||||
rotation: {x: 0.03644282, y: -0.000015978683, z: -0.000002576963, w: 0.99933577}
|
||||
scale: {x: 1.0000001, y: 0.9999997, z: 0.9999998}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -0.000000014901161, y: 0.018519271, z: 0.000000033527613}
|
||||
rotation: {x: 0.0000055795526, y: 0.00001149997, z: -0.000002024695, w: 1}
|
||||
scale: {x: 1, y: 1.0000002, z: 1.0000001}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.0012026206, y: 0.0816929, z: -0.014997002}
|
||||
rotation: {x: -0.0015896667, y: -0.58403367, z: 0.04306643, w: 0.81058466}
|
||||
scale: {x: 0.9999998, y: 1.0000001, z: 0.99999964}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 0.000000007450581, y: 0.04363054, z: 0.000000029802322}
|
||||
rotation: {x: 0.023555689, y: 0.0000074207783, z: -0.00000043940963, w: 0.9997226}
|
||||
scale: {x: 0.9999999, y: 1.0000002, z: 0.99999994}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: -0.000000037252903, y: 0.027115576, z: -0.000000007450581}
|
||||
rotation: {x: 0.03908431, y: -0.000011609676, z: 0.0000009936628, w: 0.9992359}
|
||||
scale: {x: 0.99999976, y: 0.9999995, z: 0.9999997}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: 0.000000037252903, y: 0.020957466, z: -0.000000022351742}
|
||||
rotation: {x: 0.000008244066, y: 0.00000302866, z: 0.00000045262266, w: 1}
|
||||
scale: {x: 1.0000004, y: 1.0000002, z: 1.0000001}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.0047891885, y: 0.08697535, z: 0.00037493184}
|
||||
rotation: {x: 0.015419321, y: -0.6428018, z: 0.041466735, w: 0.76475394}
|
||||
scale: {x: 0.9999999, y: 1.0000002, z: 0.9999999}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: -0.000000007450581, y: 0.051279563, z: 0.000000074505806}
|
||||
rotation: {x: 0.026234392, y: 0.000007987022, z: -0.00000008754432, w: 0.99965584}
|
||||
scale: {x: 0.9999999, y: 0.9999999, z: 0.9999999}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -0.000000013969839, y: 0.028284332, z: -0.000000029802322}
|
||||
rotation: {x: 0.03347517, y: -0.000009023872, z: 0.0000015484937, w: 0.9994396}
|
||||
scale: {x: 1.0000001, y: 1, z: 0.99999994}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -0.000000009313226, y: 0.023346018, z: -0.000000014901161}
|
||||
rotation: {x: 0.000000037252903, y: 0.000011486352, z: -0.0000019003637, w: 1}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 0.9999999}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.00029172003, y: 0.09298383, z: 0.023553409}
|
||||
rotation: {x: 0.022405917, y: -0.6930621, z: 0.03763936, w: 0.7195459}
|
||||
scale: {x: 1, y: 1.0000001, z: 1.0000001}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 0.000000063329935, y: 0.042097963, z: 0}
|
||||
rotation: {x: 0.03019715, y: 0.00002467632, z: 0.000000199303, w: 0.999544}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: 0.000000040978193, y: 0.025139084, z: -0.000000052154064}
|
||||
rotation: {x: 0.039458778, y: -0.000012829837, z: 0.0000022871232, w: 0.99922127}
|
||||
scale: {x: 0.99999994, y: 0.99999994, z: 0.9999998}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: 0.00000005122274, y: 0.024609555, z: -0.000000014901161}
|
||||
rotation: {x: -0.000002626329, y: -0.000025366317, z: 0.0000037366988, w: 1}
|
||||
scale: {x: 0.99999994, y: 1.0000002, z: 1.0000002}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.0024635196, y: 0.029368907, z: 0.022707902}
|
||||
rotation: {x: 0.09340875, y: 0.8959176, z: 0.3552756, w: -0.24977121}
|
||||
scale: {x: 0.99999976, y: 0.9999999, z: 0.9999996}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: -0.000000059604645, y: 0.027841434, z: -0.000000052154064}
|
||||
rotation: {x: -0.017032752, y: -0.31703165, z: 0.00088356866, w: 0.9482616}
|
||||
scale: {x: 1.0000001, y: 1.0000002, z: 1.0000002}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -0, y: 0.045123443, z: -0.000000029802322}
|
||||
rotation: {x: 0.030440448, y: 0.18602441, z: -0.005766247, w: 0.9820565}
|
||||
scale: {x: 0.99999994, y: 0.99999964, z: 0.9999999}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: 0.000000029802322, y: 0.02945812, z: -0.000000017811544}
|
||||
rotation: {x: 0.0000010788499, y: 0.000006921226, z: 0.000001044944, w: 1}
|
||||
scale: {x: 0.99999976, y: 1, z: 1.0000001}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.00096336816, y: 0.19168933, z: 0.0011712741}
|
||||
rotation: {x: 0.73022896, y: 0.6732043, z: -0.06640747, w: -0.09566473}
|
||||
scale: {x: 1.0000002, y: 1.0000005, z: 1.0000001}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: -0.00000007892959, y: 0.1674321, z: 0.0000000046538844}
|
||||
rotation: {x: -0.11520286, y: -0.021773117, z: -0.017826347, w: 0.9929434}
|
||||
scale: {x: 0.9999999, y: 0.99999994, z: 1.0000001}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000000273576, y: 0.28508297, z: -0.0000000043655746}
|
||||
rotation: {x: -0.006849071, y: 0.65487576, z: -0.028288439, w: 0.75517595}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.9999998}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: -0.000000007450581, y: 0.24036385, z: 0.000000024214387}
|
||||
rotation: {x: 0.033727113, y: -0.27446398, z: -0.0067438586, w: 0.9609821}
|
||||
scale: {x: 0.99999994, y: 1.0000001, z: 1.0000001}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.009288818, y: 0.071965344, z: 0.030435793}
|
||||
rotation: {x: -0.035804547, y: 0.9967338, z: 0.01911601, w: -0.06981688}
|
||||
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: -0.000000014901161, y: 0.03226914, z: 0}
|
||||
rotation: {x: 0.028010868, y: 0.7776782, z: 0.0024390442, w: 0.6280336}
|
||||
scale: {x: 1, y: 0.9999999, z: 0.99999976}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.0000000037252903, y: 0.020225015, z: 0.000000016763806}
|
||||
rotation: {x: 0.026620971, y: -0.2246639, z: 0.02487207, w: 0.973755}
|
||||
scale: {x: 1, y: 0.9999998, z: 0.9999998}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000037252903, y: 0.018518914, z: 0.000000029802322}
|
||||
rotation: {x: 0.96577424, y: 0.000026637046, z: 0.25938419, w: 0.000012248825}
|
||||
scale: {x: 0.9999997, y: 1.0000001, z: 0.99999976}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0014465973, y: 0.08169511, z: 0.014973201}
|
||||
rotation: {x: -0.042631283, y: 0.9469662, z: 0.0068906522, w: -0.31841835}
|
||||
scale: {x: 0.9999999, y: 1, z: 1.0000004}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.000000011175871, y: 0.043628346, z: 0.000000014901161}
|
||||
rotation: {x: 0.023556367, y: 0.3984804, z: -0.00031394872, w: 0.9168742}
|
||||
scale: {x: 0.9999998, y: 0.99999994, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: 0.000000022351742, y: 0.027114734, z: 0.000000026077032}
|
||||
rotation: {x: 0.036826264, y: -0.05484051, z: 0.01309168, w: 0.99772996}
|
||||
scale: {x: 0.9999998, y: 0.99999976, z: 0.99999934}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: -0.000000037252903, y: 0.020957705, z: 0.000000029802322}
|
||||
rotation: {x: 0.9897357, y: 0.00001396277, z: 0.14290999, w: -0.000019649202}
|
||||
scale: {x: 1, y: 0.99999994, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.004766941, y: 0.08696769, z: 0.0004799217}
|
||||
rotation: {x: 0.03928937, y: -0.79642284, z: 0.02052048, w: 0.60311353}
|
||||
scale: {x: 1.0000001, y: 0.99999964, z: 0.99999994}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.0000000055879354, y: 0.05127579, z: 0.000000059604645}
|
||||
rotation: {x: 0.02622759, y: -0.09986447, z: -0.00065767363, w: 0.99465513}
|
||||
scale: {x: 0.9999998, y: 0.99999976, z: 0.99999946}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: -0.0000000055879354, y: 0.028283697, z: 0.000000014901161}
|
||||
rotation: {x: 0.03325419, y: 0.012555632, z: -0.0037568882, w: 0.999361}
|
||||
scale: {x: 0.9999999, y: 0.99999994, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: -0.000000006519258, y: 0.023345374, z: -0.000000052154064}
|
||||
rotation: {x: 0.9987492, y: -0.0000034116672, z: -0.050000317, w: -0.000023523322}
|
||||
scale: {x: 1, y: 1.0000001, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.0044192523, y: 0.092984214, z: -0.023138084}
|
||||
rotation: {x: 0.03653068, y: -0.80071294, z: 0.024313333, w: 0.5974389}
|
||||
scale: {x: 1, y: 0.99999964, z: 1.0000001}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: -0.000000029802322, y: 0.042101376, z: 0.000000029802322}
|
||||
rotation: {x: 0.030095901, y: 0.15779756, z: 0.0025347832, w: 0.9870095}
|
||||
scale: {x: 1, y: 1.0000001, z: 1.0000001}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: 0.00000005401671, y: 0.025139505, z: -0.000000007450581}
|
||||
rotation: {x: 0.038869638, y: -0.06915493, z: 0.0067917323, w: 0.9968253}
|
||||
scale: {x: 1, y: 0.99999994, z: 0.9999999}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.000000013969839, y: 0.024609067, z: -0.000000029802322}
|
||||
rotation: {x: 0.99865097, y: 0.000014065641, z: 0.051925674, w: -0.000023602057}
|
||||
scale: {x: 1.0000002, y: 1.0000004, z: 1.0000002}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.001586467, y: 0.029361457, z: -0.022766732}
|
||||
rotation: {x: -0.34012425, y: -0.8257315, z: 0.13859236, w: 0.42810643}
|
||||
scale: {x: 1.0000002, y: 0.9999997, z: 0.9999999}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: -0.000000044703484, y: 0.027840726, z: -0.000000014901161}
|
||||
rotation: {x: 0.0016264507, y: 0.06934869, z: 0.016992403, w: 0.9974465}
|
||||
scale: {x: 0.99999994, y: 1, z: 0.9999999}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.000000022351742, y: 0.045121126, z: -0.000000059604645}
|
||||
rotation: {x: -0.022282427, y: -0.70061916, z: -0.02152785, w: 0.71286243}
|
||||
scale: {x: 0.99999964, y: 0.9999998, z: 0.99999994}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: -0.000000044703484, y: 0.029457733, z: -0.0000000060535967}
|
||||
rotation: {x: 0.004281985, y: -0.000000043611763, z: 0.9999908, w: 0.00000019488859}
|
||||
scale: {x: 1.0000001, y: 1.0000005, z: 1.0000001}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610339, y: 0.053499777, z: -0.011305839}
|
||||
rotation: {x: -0.20567876, y: 0.0037425205, z: 0.01735476, w: 0.9784585}
|
||||
scale: {x: 1, y: 0.99999994, z: 1.0000001}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: 0.000000008453343, y: 0.41334462, z: -3.1468517e-10}
|
||||
rotation: {x: 0.034046106, y: 0.0000034605282, z: 0.00000016488906, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000058570038, y: 0.4140394, z: 0.0000000036961865}
|
||||
rotation: {x: 0.04520098, y: 0.8433204, z: -0.51710415, w: -0.13917923}
|
||||
scale: {x: 0.9999999, y: 0.9999997, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: -0.0000000023283064, y: 0.13841704, z: 0.0000000018626451}
|
||||
rotation: {x: -0.008749583, y: 0.985239, z: 0.14575031, w: 0.089355476}
|
||||
scale: {x: 1.0000001, y: 0.9999998, z: 0.99999994}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: 1.7462298e-10, y: 0.06641418, z: 0.0000000023283064}
|
||||
rotation: {x: 0.61085683, y: -0.020899585, z: -0.0065935804, w: 0.79143775}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.0861013, y: 0.053480692, z: -0.011297943}
|
||||
rotation: {x: -0.012705498, y: 0.96753687, z: -0.20601824, w: 0.1458337}
|
||||
scale: {x: 1, y: 0.99999994, z: 1.0000001}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: -0.0000000055879354, y: 0.41334432, z: -0.0000000044237822}
|
||||
rotation: {x: -0.010249002, y: -0.82638717, z: 0.03246688, w: 0.56207216}
|
||||
scale: {x: 1.0000001, y: 0.9999999, z: 1.0000001}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: 0.00000001071021, y: 0.41403958, z: 0.0000000013969839}
|
||||
rotation: {x: -0.463813, y: -0.42003682, z: -0.23307812, w: 0.74439317}
|
||||
scale: {x: 0.99999994, y: 0.99999994, z: 1.0000004}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: 0.0000000019603839, y: 0.13842079, z: -0.0000000018626451}
|
||||
rotation: {x: -0.14587179, y: -0.010785824, z: -0.0060450644, w: 0.9892263}
|
||||
scale: {x: 1.0000001, y: 1.0000002, z: 0.99999994}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: -0.0000000088330125, y: 0.06641012, z: 9.313226e-10}
|
||||
rotation: {x: -0.7914422, y: -0.0065935752, z: 0.020907173, w: 0.6108509}
|
||||
scale: {x: 0.9999999, y: 1, z: 0.99999976}
|
||||
- name: FPV_Scale
|
||||
parentName: Armature
|
||||
position: {x: -0.000114326474, y: 1.3719815, z: -0.16542564}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature_Arm_Mesh
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0.000000001200533, y: -0.000000055814613, z: -0.000000010663483}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature_FPV_Mesh
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0.000000001200533, y: -0.000000055814613, z: -0.000000010663483}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Armature_Mesh
|
||||
parentName: Armature(Clone)
|
||||
position: {x: -0.000000001200533, y: -0.000000055814613, z: -0.000000010663483}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1480fffaa81821345b6bd45a88b692d6
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Jump
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 16
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 0
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 0
|
||||
loopBlendPositionY: 0
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 0
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b1ebf70ee3697e245a69a0028d9d0ec7
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Prone Forward
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 70
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 1
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 1
|
||||
loopBlendPositionY: 1
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 0
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -1,923 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2e855780d9d039d4e8d7b5bf0da40c16
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 2
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 1
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 3
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations:
|
||||
- serializedVersion: 16
|
||||
name: Prone Idle
|
||||
takeName: mixamo.com
|
||||
internalID: -203655887218126122
|
||||
firstFrame: 0
|
||||
lastFrame: 148
|
||||
wrapMode: 0
|
||||
orientationOffsetY: 0
|
||||
level: 0
|
||||
cycleOffset: 0
|
||||
loop: 0
|
||||
hasAdditiveReferencePose: 0
|
||||
loopTime: 0
|
||||
loopBlend: 0
|
||||
loopBlendOrientation: 0
|
||||
loopBlendPositionY: 0
|
||||
loopBlendPositionXZ: 0
|
||||
keepOriginalOrientation: 1
|
||||
keepOriginalPositionY: 1
|
||||
keepOriginalPositionXZ: 1
|
||||
heightFromFeet: 0
|
||||
mirror: 0
|
||||
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
|
||||
curves: []
|
||||
events: []
|
||||
transformMask: []
|
||||
maskType: 3
|
||||
maskSource: {instanceID: 0}
|
||||
additiveReferencePoseFrame: 0
|
||||
isReadable: 1
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 1
|
||||
importLights: 1
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 0
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 1
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 0
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human:
|
||||
- boneName: Hips
|
||||
humanName: Hips
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperLeg
|
||||
humanName: RightUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerLeg
|
||||
humanName: RightLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Foot
|
||||
humanName: RightFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Toes
|
||||
humanName: RightToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Spine
|
||||
humanName: Spine
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Chest
|
||||
humanName: Chest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: UpperChest
|
||||
humanName: UpperChest
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Shoulder
|
||||
humanName: RightShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_UpperArm
|
||||
humanName: RightUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_LowerArm
|
||||
humanName: RightLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_Hand
|
||||
humanName: RightHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Neck
|
||||
humanName: Neck
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Head
|
||||
humanName: Head
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Jaw
|
||||
humanName: Jaw
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Shoulder
|
||||
humanName: LeftShoulder
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperArm
|
||||
humanName: LeftUpperArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerArm
|
||||
humanName: LeftLowerArm
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Hand
|
||||
humanName: LeftHand
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_UpperLeg
|
||||
humanName: LeftUpperLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_LowerLeg
|
||||
humanName: LeftLowerLeg
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Foot
|
||||
humanName: LeftFoot
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_Toes
|
||||
humanName: LeftToes
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbProximal
|
||||
humanName: Left Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbIntermediate
|
||||
humanName: Left Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_ThumbDistal
|
||||
humanName: Left Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexProximal
|
||||
humanName: Left Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexIntermediate
|
||||
humanName: Left Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_IndexDistal
|
||||
humanName: Left Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleProximal
|
||||
humanName: Left Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleIntermediate
|
||||
humanName: Left Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_MiddleDistal
|
||||
humanName: Left Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingProximal
|
||||
humanName: Left Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingIntermediate
|
||||
humanName: Left Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_RingDistal
|
||||
humanName: Left Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyProximal
|
||||
humanName: Left Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyIntermediate
|
||||
humanName: Left Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Left_PinkyDistal
|
||||
humanName: Left Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbProximal
|
||||
humanName: Right Thumb Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbIntermediate
|
||||
humanName: Right Thumb Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_ThumbDistal
|
||||
humanName: Right Thumb Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexProximal
|
||||
humanName: Right Index Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexIntermediate
|
||||
humanName: Right Index Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_IndexDistal
|
||||
humanName: Right Index Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleProximal
|
||||
humanName: Right Middle Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleIntermediate
|
||||
humanName: Right Middle Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_MiddleDistal
|
||||
humanName: Right Middle Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingProximal
|
||||
humanName: Right Ring Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingIntermediate
|
||||
humanName: Right Ring Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_RingDistal
|
||||
humanName: Right Ring Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyProximal
|
||||
humanName: Right Little Proximal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyIntermediate
|
||||
humanName: Right Little Intermediate
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
- boneName: Right_PinkyDistal
|
||||
humanName: Right Little Distal
|
||||
limit:
|
||||
min: {x: 0, y: 0, z: 0}
|
||||
max: {x: 0, y: 0, z: 0}
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
length: 0
|
||||
modified: 0
|
||||
skeleton:
|
||||
- name: Mannequin(Clone)
|
||||
parentName:
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Geometry
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Mannequin_Mesh
|
||||
parentName: Geometry
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Skeleton
|
||||
parentName: Mannequin(Clone)
|
||||
position: {x: -0, y: 0, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Hips
|
||||
parentName: Skeleton
|
||||
position: {x: -0, y: 0.9810986, z: -0.01590455}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: -0.08610317, y: -0.053458035, z: -0.011470641}
|
||||
rotation: {x: 0.999839, y: -0.01775374, z: 0.000046300094, w: -0.0026074864}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerLeg
|
||||
parentName: Left_UpperLeg
|
||||
position: {x: -2.9864513e-16, y: 0.4133444, z: -5.4956034e-17}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Foot
|
||||
parentName: Left_LowerLeg
|
||||
position: {x: 0.0000000017320426, y: 0.41403946, z: 7.141509e-16}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Toes
|
||||
parentName: Left_Foot
|
||||
position: {x: 7.105427e-17, y: 0.07224803, z: -0.118065506}
|
||||
rotation: {x: -0.7071068, y: 8.7157646e-33, z: -8.7157646e-33, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ToesEnd
|
||||
parentName: Left_Toes
|
||||
position: {x: -0.0010026174, y: 0.06423476, z: 0.016843978}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperLeg
|
||||
parentName: Hips
|
||||
position: {x: 0.086103186, y: -0.053458147, z: -0.0114706475}
|
||||
rotation: {x: 0.0026075041, y: 0.000046300407, z: 0.01775374, w: 0.999839}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerLeg
|
||||
parentName: Right_UpperLeg
|
||||
position: {x: 0.0000004514609, y: -0.41334414, z: 0.000000025994435}
|
||||
rotation: {x: 0.034046065, y: 2.2687323e-19, z: 7.728622e-21, w: 0.9994203}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Foot
|
||||
parentName: Right_LowerLeg
|
||||
position: {x: -0.0000007472542, y: -0.41403967, z: -0.000000032847502}
|
||||
rotation: {x: -0.035700925, y: 0.049957544, z: -0.019575229, w: 0.9979211}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Toes
|
||||
parentName: Right_Foot
|
||||
position: {x: -0.00000015643121, y: -0.07224799, z: 0.11807}
|
||||
rotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ToesEnd
|
||||
parentName: Right_Toes
|
||||
position: {x: 0.0010031584, y: -0.06423059, z: -0.016843898}
|
||||
rotation: {x: 0.7070656, y: -0.0076321815, z: -0.0076321815, w: 0.7070656}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Spine
|
||||
parentName: Hips
|
||||
position: {x: -0, y: 0.058229383, z: 0.0012229546}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Chest
|
||||
parentName: Spine
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: UpperChest
|
||||
parentName: Chest
|
||||
position: {x: -0, y: 0.1034043, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: -0.0009571358, y: 0.19149224, z: -0.0087277945}
|
||||
rotation: {x: -0.0049494267, y: -0.113521874, z: 0.043275386, w: 0.99258024}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_UpperArm
|
||||
parentName: Left_Shoulder
|
||||
position: {x: -0.16743502, y: -5.684341e-16, z: -2.664535e-17}
|
||||
rotation: {x: 0.12673509, y: 0.03332071, z: 0.6809724, w: 0.72048914}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_LowerArm
|
||||
parentName: Left_UpperArm
|
||||
position: {x: -2.8421706e-16, y: 0.28508067, z: 0}
|
||||
rotation: {x: 0.020536564, y: 0.00832135, z: -0.020624585, w: 0.9995417}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Hand
|
||||
parentName: Left_LowerArm
|
||||
position: {x: -2.4123817e-10, y: 0.24036221, z: -1.4210853e-16}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.007815497, y: 0.0918443, z: 0.02657316}
|
||||
rotation: {x: -0.0000789147, y: -0.7104809, z: -0.006305193, w: 0.70368826}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexIntermediate
|
||||
parentName: Left_IndexProximal
|
||||
position: {x: 9.079803e-16, y: 0.04209777, z: 3.2607592e-16}
|
||||
rotation: {x: 0.030199163, y: 0.00000005960465, z: -0.00000038841978, w: 0.9995439}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistal
|
||||
parentName: Left_IndexIntermediate
|
||||
position: {x: -8.20111e-16, y: 0.02513925, z: -4.317065e-16}
|
||||
rotation: {x: 0.03945603, y: 0.000000016383924, z: 0.0000000332638, w: 0.9992213}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_IndexDistalEnd
|
||||
parentName: Left_IndexDistal
|
||||
position: {x: -1.1581012e-16, y: 0.024609203, z: -6.661337e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.012847862, y: 0.08609763, z: 0.003435423}
|
||||
rotation: {x: -0.004090429, y: -0.6610811, z: -0.004001968, w: 0.7502927}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleIntermediate
|
||||
parentName: Left_MiddleProximal
|
||||
position: {x: 2.7261607e-16, y: 0.051279362, z: 5.988264e-17}
|
||||
rotation: {x: 0.026233751, y: -0.000000029802322, z: -0.0000007133931, w: 0.99965584}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistal
|
||||
parentName: Left_MiddleIntermediate
|
||||
position: {x: -7.199101e-17, y: 0.028284006, z: -4.93648e-17}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_MiddleDistalEnd
|
||||
parentName: Left_MiddleDistal
|
||||
position: {x: -1.7763565e-16, y: 0.023346113, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.004436847, y: 0.07288173, z: -0.029359013}
|
||||
rotation: {x: -0.02007038, y: -0.5504896, z: -0.008246153, w: 0.83456}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyIntermediate
|
||||
parentName: Left_PinkyProximal
|
||||
position: {x: 1.9539922e-16, y: 0.032272622, z: -1.4210853e-16}
|
||||
rotation: {x: 0.028115956, y: -0.00000008940699, z: -0.0000005941839, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistal
|
||||
parentName: Left_PinkyIntermediate
|
||||
position: {x: -3.5527133e-17, y: 0.020224448, z: -7.1054265e-17}
|
||||
rotation: {x: 0.03643686, y: 0.00000014611446, z: 0.00000018696, w: 0.999336}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_PinkyDistalEnd
|
||||
parentName: Left_PinkyDistal
|
||||
position: {x: -1.2434495e-16, y: 0.018519057, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: 0.009525569, y: 0.08161553, z: -0.012242405}
|
||||
rotation: {x: -0.017654313, y: -0.6026994, z: -0.0040520057, w: 0.79776275}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingIntermediate
|
||||
parentName: Left_RingProximal
|
||||
position: {x: 3.3750777e-16, y: 0.043630484, z: -1.4210853e-16}
|
||||
rotation: {x: 0.023556013, y: 0.00000026822087, z: 0.0000007636844, w: 0.99972254}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistal
|
||||
parentName: Left_RingIntermediate
|
||||
position: {x: 1.7763566e-17, y: 0.027115494, z: -1.065814e-16}
|
||||
rotation: {x: 0.03908592, y: -0.000000019744585, z: 0.00000042049942, w: 0.9992359}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_RingDistalEnd
|
||||
parentName: Left_RingDistal
|
||||
position: {x: -7.105426e-17, y: 0.02095726, z: -7.105426e-17}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbProximal
|
||||
parentName: Left_Hand
|
||||
position: {x: -0.00080496486, y: 0.028816883, z: 0.023514476}
|
||||
rotation: {x: 0.1796032, y: 0.8841741, z: 0.4239896, w: -0.07881452}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbIntermediate
|
||||
parentName: Left_ThumbProximal
|
||||
position: {x: 2.4357445e-15, y: 0.027578257, z: 0.0038183592}
|
||||
rotation: {x: 0.1278054, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistal
|
||||
parentName: Left_ThumbIntermediate
|
||||
position: {x: -2.2737365e-15, y: 0.044597257, z: -0.006869915}
|
||||
rotation: {x: -0.045421924, y: -0.00000036741366, z: -0.0000008691409, w: 0.9989679}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_ThumbDistalEnd
|
||||
parentName: Left_ThumbDistal
|
||||
position: {x: -4.2632555e-16, y: 0.029458016, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck
|
||||
parentName: UpperChest
|
||||
position: {x: -0, y: 0.25104657, z: -0.015329581}
|
||||
rotation: {x: 0.060688436, y: -0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Head
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.12747401, z: 0}
|
||||
rotation: {x: -0.060688436, y: 0, z: -0, w: 0.9981568}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Jaw
|
||||
parentName: Head
|
||||
position: {x: -0, y: -0.00763539, z: 0.012895278}
|
||||
rotation: {x: 0.15949209, y: 0.68888485, z: 0.15949209, w: 0.68888485}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Left_Eye
|
||||
parentName: Head
|
||||
position: {x: -0.03330326, y: 0.034598116, z: 0.0867403}
|
||||
rotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Eye
|
||||
parentName: Head
|
||||
position: {x: 0.033303294, y: 0.03459628, z: 0.0867403}
|
||||
rotation: {x: 0.7071068, y: 4.3297806e-17, z: 0.7071068, w: -4.3297806e-17}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Neck_Twist_A
|
||||
parentName: Neck
|
||||
position: {x: -0, y: 0.063737005, z: 0}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Shoulder
|
||||
parentName: UpperChest
|
||||
position: {x: 0.0009571358, y: 0.19149381, z: -0.008727803}
|
||||
rotation: {x: 0.99258024, y: -0.04327539, z: -0.113521874, w: 0.004949396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_UpperArm
|
||||
parentName: Right_Shoulder
|
||||
position: {x: 0.16743432, y: -0.0000022099182, z: 0.00000012213746}
|
||||
rotation: {x: 0.1267345, y: 0.033320885, z: 0.68096745, w: 0.720494}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_LowerArm
|
||||
parentName: Right_UpperArm
|
||||
position: {x: 0.0000037273983, y: -0.285085, z: -0.00000035927226}
|
||||
rotation: {x: 0.020541133, y: 0.008317431, z: -0.020620903, w: 0.99954176}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_Hand
|
||||
parentName: Right_LowerArm
|
||||
position: {x: 0.0000014923929, y: -0.24036367, z: 0.0000017856368}
|
||||
rotation: {x: -0.047397237, y: -0.24003562, z: 0.013464749, w: 0.9695128}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0078223245, y: -0.0918393, z: -0.026574574}
|
||||
rotation: {x: -0.00008773989, y: -0.7104814, z: -0.0063276542, w: 0.7036876}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexIntermediate
|
||||
parentName: Right_IndexProximal
|
||||
position: {x: 0.0000006924457, y: -0.04210151, z: -0.0000013631077}
|
||||
rotation: {x: 0.03020306, y: -0.0000005662439, z: 0.000012195228, w: 0.99954385}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistal
|
||||
parentName: Right_IndexIntermediate
|
||||
position: {x: -0.00000032847043, y: -0.025139209, z: -0.0000005960629}
|
||||
rotation: {x: 0.03948371, y: -0.000000052504312, z: -0.000005515076, w: 0.99922025}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_IndexDistalEnd
|
||||
parentName: Right_IndexDistal
|
||||
position: {x: 0.00000023984484, y: -0.024609355, z: 0.0000006271131}
|
||||
rotation: {x: -5.5511138e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.012848663, y: -0.08609768, z: -0.0034359337}
|
||||
rotation: {x: -0.0040856875, y: -0.6610817, z: -0.0040004994, w: 0.7502922}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleIntermediate
|
||||
parentName: Right_MiddleProximal
|
||||
position: {x: 0.000000014272595, y: -0.051275954, z: 0.0000009747695}
|
||||
rotation: {x: 0.026226329, y: -0.0000007450579, z: -0.0000027469353, w: 0.9996561}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistal
|
||||
parentName: Right_MiddleIntermediate
|
||||
position: {x: 0.00000014287376, y: -0.028283618, z: 0.00000019378916}
|
||||
rotation: {x: 0.03347514, y: -0, z: -0, w: 0.9994396}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_MiddleDistalEnd
|
||||
parentName: Right_MiddleDistal
|
||||
position: {x: 0.000000038619483, y: -0.023345316, z: 0.0000005352584}
|
||||
rotation: {x: 0, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.0044381507, y: -0.07288141, z: 0.029358566}
|
||||
rotation: {x: -0.020058475, y: -0.55049545, z: -0.008249418, w: 0.83455646}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyIntermediate
|
||||
parentName: Right_PinkyProximal
|
||||
position: {x: 0.00000045734515, y: -0.032268908, z: 0.00000088312623}
|
||||
rotation: {x: 0.02811499, y: -0.0000035166731, z: -0.00000016298141, w: 0.9996047}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistal
|
||||
parentName: Right_PinkyIntermediate
|
||||
position: {x: 0.00000023899057, y: -0.02022493, z: 0.00000055474345}
|
||||
rotation: {x: 0.03642403, y: -0.0000024211556, z: -0.000008829222, w: 0.9993365}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_PinkyDistalEnd
|
||||
parentName: Right_PinkyDistal
|
||||
position: {x: 0.000000632002, y: -0.018518865, z: 0.0000001154108}
|
||||
rotation: {x: -1.7347236e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: -0.00952738, y: -0.08161427, z: 0.012242128}
|
||||
rotation: {x: -0.017649079, y: -0.6027014, z: -0.0040535578, w: 0.7977614}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingIntermediate
|
||||
parentName: Right_RingProximal
|
||||
position: {x: 0.0000000695935, y: -0.04362872, z: 0.00000080048335}
|
||||
rotation: {x: 0.023547903, y: 0.0000024139879, z: 0.0000069094813, w: 0.9997228}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistal
|
||||
parentName: Right_RingIntermediate
|
||||
position: {x: -0.000000290747, y: -0.02711462, z: 0.0000000181098}
|
||||
rotation: {x: 0.039100695, y: 0.00000009656897, z: -0.000004755179, w: 0.99923533}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_RingDistalEnd
|
||||
parentName: Right_RingDistal
|
||||
position: {x: 0.00000008856214, y: -0.020957856, z: 0.0000005565459}
|
||||
rotation: {x: 9.02056e-17, y: -0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbProximal
|
||||
parentName: Right_Hand
|
||||
position: {x: 0.00080341793, y: -0.028816395, z: -0.023514695}
|
||||
rotation: {x: 0.17960793, y: 0.8841713, z: 0.42399347, w: -0.07881395}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbIntermediate
|
||||
parentName: Right_ThumbProximal
|
||||
position: {x: 0.00000015009721, y: -0.02757781, z: -0.0038183848}
|
||||
rotation: {x: 0.12780538, y: -0, z: -0, w: 0.9917993}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistal
|
||||
parentName: Right_ThumbIntermediate
|
||||
position: {x: 0.0000007817755, y: -0.044594634, z: 0.0068707783}
|
||||
rotation: {x: -0.04541878, y: -0.000003060937, z: 0.000004811603, w: 0.99896806}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
- name: Right_ThumbDistalEnd
|
||||
parentName: Right_ThumbDistal
|
||||
position: {x: 0.00000020228964, y: -0.029458148, z: 0.0000009551683}
|
||||
rotation: {x: -2.7755574e-17, y: 0, z: -0, w: 1}
|
||||
scale: {x: 1, y: 1, z: 1}
|
||||
armTwist: 1
|
||||
foreArmTwist: 0
|
||||
upperLegTwist: 1
|
||||
legTwist: 0
|
||||
armStretch: 0
|
||||
legStretch: 0
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 1
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 36078ab0369161e49a29d349ae3e0739,
|
||||
type: 3}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 3
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 2
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 0
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue