Files
niko 8fc35183db a
2026-04-11 22:19:20 +02:00

428 lines
13 KiB
C#

using System;
using Cpp2IlInjected;
using UnityEngine;
namespace RootMotion.FinalIK
{
// Token: 0x0200005F RID: 95
[Token(Token = "0x200004F")]
public class FBBIKHeadEffector : MonoBehaviour
{
// Token: 0x06000290 RID: 656 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000251")]
[Address(RVA = "0x25E8540", Offset = "0x25E7340", VA = "0x1825E8540")]
private void Start()
{
}
// Token: 0x06000291 RID: 657 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000252")]
[Address(RVA = "0x25E73D0", Offset = "0x25E61D0", VA = "0x1825E73D0")]
private void OnStoreDefaultLocalState()
{
}
// Token: 0x06000292 RID: 658 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000253")]
[Address(RVA = "0x25E62E0", Offset = "0x25E50E0", VA = "0x1825E62E0")]
private void OnFixTransforms()
{
}
// Token: 0x06000293 RID: 659 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000254")]
[Address(RVA = "0x25E6AC0", Offset = "0x25E58C0", VA = "0x1825E6AC0")]
private void OnPreRead()
{
}
// Token: 0x06000294 RID: 660 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000255")]
[Address(RVA = "0x25E8130", Offset = "0x25E6F30", VA = "0x1825E8130")]
private void SpineBend()
{
}
// Token: 0x06000295 RID: 661 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000256")]
[Address(RVA = "0x25E48A0", Offset = "0x25E36A0", VA = "0x1825E48A0")]
private void CCDPass()
{
}
// Token: 0x06000296 RID: 662 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000257")]
[Address(RVA = "0x25E50E0", Offset = "0x25E3EE0", VA = "0x1825E50E0")]
private void Iterate(int iteration)
{
}
// Token: 0x06000297 RID: 663 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000258")]
[Address(RVA = "0x25E6880", Offset = "0x25E5680", VA = "0x1825E6880")]
private void OnPostUpdate()
{
}
// Token: 0x06000298 RID: 664 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x6000259")]
[Address(RVA = "0x25E4D70", Offset = "0x25E3B70", VA = "0x1825E4D70")]
private void ChestDirection()
{
}
// Token: 0x06000299 RID: 665 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600025A")]
[Address(RVA = "0x25E7A50", Offset = "0x25E6850", VA = "0x1825E7A50")]
private void PostStretching()
{
}
// Token: 0x0600029A RID: 666 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600025B")]
[Address(RVA = "0x25E5E50", Offset = "0x25E4C50", VA = "0x1825E5E50")]
private void LerpSolverPosition(IKEffector effector, Vector3 position, float weight, Vector3 offset)
{
}
// Token: 0x0600029B RID: 667 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600025C")]
[Address(RVA = "0x25E7F30", Offset = "0x25E6D30", VA = "0x1825E7F30")]
private void Solve(ref Vector3 pos1, ref Vector3 pos2, float nominalDistance)
{
}
// Token: 0x0600029C RID: 668 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600025D")]
[Address(RVA = "0x25E5FD0", Offset = "0x25E4DD0", VA = "0x1825E5FD0")]
private void OnDestroy()
{
}
// Token: 0x0600029D RID: 669 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600025E")]
[Address(RVA = "0x25E8910", Offset = "0x25E7710", VA = "0x1825E8910")]
public FBBIKHeadEffector()
{
}
// Token: 0x04000223 RID: 547
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x40001A5")]
[Tooltip("Reference to the FBBIK component.")]
public FullBodyBipedIK ik;
// Token: 0x04000224 RID: 548
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x40001A6")]
[LargeHeader("Position")]
[Tooltip("Master weight for positioning the head.")]
[Range(0f, 1f)]
public float positionWeight;
// Token: 0x04000225 RID: 549
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x40001A7")]
[Tooltip("The weight of moving the body along with the head")]
[Range(0f, 1f)]
public float bodyWeight;
// Token: 0x04000226 RID: 550
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x40001A8")]
[Tooltip("The weight of moving the thighs along with the head")]
[Range(0f, 1f)]
public float thighWeight;
// Token: 0x04000227 RID: 551
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x40001A9")]
[Tooltip("If false, hands will not pull the head away if they are too far. Disabling this will improve performance significantly.")]
public bool handsPullBody;
// Token: 0x04000228 RID: 552
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x40001AA")]
[LargeHeader("Rotation")]
[Tooltip("The weight of rotating the head bone after solving")]
[Range(0f, 1f)]
public float rotationWeight;
// Token: 0x04000229 RID: 553
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x40001AB")]
[Tooltip("Clamping the rotation of the body")]
[Range(0f, 1f)]
public float bodyClampWeight;
// Token: 0x0400022A RID: 554
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x40001AC")]
[Tooltip("Clamping the rotation of the head")]
[Range(0f, 1f)]
public float headClampWeight;
// Token: 0x0400022B RID: 555
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x40001AD")]
[Tooltip("The master weight of bending/twisting the spine to the rotation of the head effector. This is similar to CCD, but uses the rotation of the head effector not the position.")]
[Range(0f, 1f)]
public float bendWeight;
// Token: 0x0400022C RID: 556
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x40001AE")]
[Tooltip("The bones to use for bending.")]
public FBBIKHeadEffector.BendBone[] bendBones;
// Token: 0x0400022D RID: 557
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x40001AF")]
[LargeHeader("CCD")]
[Tooltip("Optional. The master weight of the CCD (Cyclic Coordinate Descent) IK effect that bends the spine towards the head effector before FBBIK solves.")]
[Range(0f, 1f)]
public float CCDWeight;
// Token: 0x0400022E RID: 558
[FieldOffset(Offset = "0x4C")]
[Token(Token = "0x40001B0")]
[Tooltip("The weight of rolling the bones in towards the target")]
[Range(0f, 1f)]
public float roll;
// Token: 0x0400022F RID: 559
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x40001B1")]
[Tooltip("Smoothing the CCD effect.")]
[Range(0f, 1000f)]
public float damper;
// Token: 0x04000230 RID: 560
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x40001B2")]
[Tooltip("Bones to use for the CCD pass. Assign spine and/or neck bones.")]
public Transform[] CCDBones;
// Token: 0x04000231 RID: 561
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x40001B3")]
[LargeHeader("Stretching")]
[Tooltip("Stretching the spine/neck to help reach the target. This is useful for making sure the head stays locked relative to the VR headset. NB! Stretching is done after FBBIK has solved so if you have the hand effectors pinned and spine bones included in the 'Stretch Bones', the hands might become offset from their target positions.")]
[Range(0f, 1f)]
public float postStretchWeight;
// Token: 0x04000232 RID: 562
[FieldOffset(Offset = "0x64")]
[Token(Token = "0x40001B4")]
[Tooltip("Stretch magnitude limit.")]
public float maxStretch;
// Token: 0x04000233 RID: 563
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x40001B5")]
[Tooltip("If > 0, dampers the stretching effect.")]
public float stretchDamper;
// Token: 0x04000234 RID: 564
[FieldOffset(Offset = "0x6C")]
[Token(Token = "0x40001B6")]
[Tooltip("If true, will fix head position to this Transform no matter what. Good for making sure the head will not budge away from the VR headset")]
public bool fixHead;
// Token: 0x04000235 RID: 565
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x40001B7")]
[Tooltip("Bones to use for stretching. The more bones you add, the less noticable the effect.")]
public Transform[] stretchBones;
// Token: 0x04000236 RID: 566
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x40001B8")]
[LargeHeader("Chest Direction")]
public Vector3 chestDirection;
// Token: 0x04000237 RID: 567
[FieldOffset(Offset = "0x84")]
[Token(Token = "0x40001B9")]
[Range(0f, 1f)]
public float chestDirectionWeight;
// Token: 0x04000238 RID: 568
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x40001BA")]
public Transform[] chestBones;
// Token: 0x04000239 RID: 569
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x40001BB")]
public IKSolver.UpdateDelegate OnPostHeadEffectorFK;
// Token: 0x0400023A RID: 570
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x40001BC")]
private Vector3 offset;
// Token: 0x0400023B RID: 571
[FieldOffset(Offset = "0xA4")]
[Token(Token = "0x40001BD")]
private Vector3 headToBody;
// Token: 0x0400023C RID: 572
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x40001BE")]
private Vector3 shoulderCenterToHead;
// Token: 0x0400023D RID: 573
[FieldOffset(Offset = "0xBC")]
[Token(Token = "0x40001BF")]
private Vector3 headToLeftThigh;
// Token: 0x0400023E RID: 574
[FieldOffset(Offset = "0xC8")]
[Token(Token = "0x40001C0")]
private Vector3 headToRightThigh;
// Token: 0x0400023F RID: 575
[FieldOffset(Offset = "0xD4")]
[Token(Token = "0x40001C1")]
private Vector3 leftShoulderPos;
// Token: 0x04000240 RID: 576
[FieldOffset(Offset = "0xE0")]
[Token(Token = "0x40001C2")]
private Vector3 rightShoulderPos;
// Token: 0x04000241 RID: 577
[FieldOffset(Offset = "0xEC")]
[Token(Token = "0x40001C3")]
private float shoulderDist;
// Token: 0x04000242 RID: 578
[FieldOffset(Offset = "0xF0")]
[Token(Token = "0x40001C4")]
private float leftShoulderDist;
// Token: 0x04000243 RID: 579
[FieldOffset(Offset = "0xF4")]
[Token(Token = "0x40001C5")]
private float rightShoulderDist;
// Token: 0x04000244 RID: 580
[FieldOffset(Offset = "0xF8")]
[Token(Token = "0x40001C6")]
private Quaternion chestRotation;
// Token: 0x04000245 RID: 581
[FieldOffset(Offset = "0x108")]
[Token(Token = "0x40001C7")]
private Quaternion headRotationRelativeToRoot;
// Token: 0x04000246 RID: 582
[FieldOffset(Offset = "0x118")]
[Token(Token = "0x40001C8")]
private Quaternion[] ccdDefaultLocalRotations;
// Token: 0x04000247 RID: 583
[FieldOffset(Offset = "0x120")]
[Token(Token = "0x40001C9")]
private Vector3 headLocalPosition;
// Token: 0x04000248 RID: 584
[FieldOffset(Offset = "0x12C")]
[Token(Token = "0x40001CA")]
private Quaternion headLocalRotation;
// Token: 0x04000249 RID: 585
[FieldOffset(Offset = "0x140")]
[Token(Token = "0x40001CB")]
private Vector3[] stretchLocalPositions;
// Token: 0x0400024A RID: 586
[FieldOffset(Offset = "0x148")]
[Token(Token = "0x40001CC")]
private Quaternion[] stretchLocalRotations;
// Token: 0x0400024B RID: 587
[FieldOffset(Offset = "0x150")]
[Token(Token = "0x40001CD")]
private Vector3[] chestLocalPositions;
// Token: 0x0400024C RID: 588
[FieldOffset(Offset = "0x158")]
[Token(Token = "0x40001CE")]
private Quaternion[] chestLocalRotations;
// Token: 0x0400024D RID: 589
[FieldOffset(Offset = "0x160")]
[Token(Token = "0x40001CF")]
private int bendBonesCount;
// Token: 0x0400024E RID: 590
[FieldOffset(Offset = "0x164")]
[Token(Token = "0x40001D0")]
private int ccdBonesCount;
// Token: 0x0400024F RID: 591
[FieldOffset(Offset = "0x168")]
[Token(Token = "0x40001D1")]
private int stretchBonesCount;
// Token: 0x04000250 RID: 592
[FieldOffset(Offset = "0x16C")]
[Token(Token = "0x40001D2")]
private int chestBonesCount;
// Token: 0x02000060 RID: 96
[Token(Token = "0x20000DE")]
[Serializable]
public class BendBone
{
// Token: 0x0600029E RID: 670 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600067C")]
[Address(RVA = "0x25DD960", Offset = "0x25DC760", VA = "0x1825DD960")]
public BendBone()
{
}
// Token: 0x0600029F RID: 671 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600067D")]
[Address(RVA = "0x25DD8D0", Offset = "0x25DC6D0", VA = "0x1825DD8D0")]
public BendBone(Transform transform, float weight)
{
}
// Token: 0x060002A0 RID: 672 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600067E")]
[Address(RVA = "0x25DD890", Offset = "0x25DC690", VA = "0x1825DD890")]
public void StoreDefaultLocalState()
{
}
// Token: 0x060002A1 RID: 673 RVA: 0x00002053 File Offset: 0x00000253
[Token(Token = "0x600067F")]
[Address(RVA = "0x25DD850", Offset = "0x25DC650", VA = "0x1825DD850")]
public void FixTransforms()
{
}
// Token: 0x04000251 RID: 593
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400064B")]
[Tooltip("Assign spine and/or neck bones.")]
public Transform transform;
// Token: 0x04000252 RID: 594
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400064C")]
[Tooltip("The weight of rotating this bone.")]
[Range(0f, 1f)]
public float weight;
// Token: 0x04000253 RID: 595
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400064D")]
private Quaternion defaultLocalRotation;
}
}
}