示例#1
0
    void ConvertStreamedUMA(string streamed)
    {
        DKUMAData _DKUMAData = _DK_RPG_UMA.gameObject.GetComponent <DKUMAData>();

        //	string newStreamedUMA;

        // find the StreamedUMA
        _StreamedUMA = streamed;

        // Translate compressions
        _StreamedUMA = _StreamedUMA.Replace(@"sID", "slotID");
        _StreamedUMA = _StreamedUMA.Replace(@"oS", "overlayScale");
        _StreamedUMA = _StreamedUMA.Replace(@"cOI", "copyOverlayIndex");
        _StreamedUMA = _StreamedUMA.Replace(@"ODL", "OverlayDataList");
        _StreamedUMA = _StreamedUMA.Replace(@"oID", "overlayID");
        _StreamedUMA = _StreamedUMA.Replace(@"rL", "rectList");

        _StreamedUMA = _StreamedUMA.Replace(@"cL", "colorList");
        _StreamedUMA = _StreamedUMA.Replace(@"cML", "channelMaskList");
        _StreamedUMA = _StreamedUMA.Replace(@"cAML", "channelAdditiveMaskList");
        _StreamedUMA = _StreamedUMA.Replace(@"DKUMADnaHumanoid", "UMADnaHumanoid");
        // About Race
        // is a female
        if (_DKUMAData.myRenderer.name.Contains("Female"))
        {
            _StreamedUMA = _StreamedUMA.Replace(@"" + _DKUMAData.umaRecipe.raceData.raceName + "", "HumanFemale");
            //	Debug.Log ( "Female" );
        }
        else
        {
            _StreamedUMA = _StreamedUMA.Replace(@"" + _DKUMAData.umaRecipe.raceData.raceName + "", "HumanMale");
            //	Debug.Log ( "Male" );
        }
        // Modify DNA names
        _StreamedUMA = _StreamedUMA.Replace(@"N0\", "height\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N10", "legSeparation");
        _StreamedUMA = _StreamedUMA.Replace(@"N11", "upperMuscle");
        _StreamedUMA = _StreamedUMA.Replace(@"N12", "lowerMuscle");
        _StreamedUMA = _StreamedUMA.Replace(@"N13", "upperWeight");
        _StreamedUMA = _StreamedUMA.Replace(@"N14", "lowerWeight");
        _StreamedUMA = _StreamedUMA.Replace(@"N15", "legsSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N16", "belly");
        _StreamedUMA = _StreamedUMA.Replace(@"N17", "waist");
        _StreamedUMA = _StreamedUMA.Replace(@"N18", "gluteusSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N19", "earsSize");

        _StreamedUMA = _StreamedUMA.Replace(@"N1\", "headSize\\");

        _StreamedUMA = _StreamedUMA.Replace(@"N20", "earsPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N21", "earsRotation");
        _StreamedUMA = _StreamedUMA.Replace(@"N22", "noseSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N23", "noseCurve");
        _StreamedUMA = _StreamedUMA.Replace(@"N24", "noseWidth");
        _StreamedUMA = _StreamedUMA.Replace(@"N25", "noseInclination");
        _StreamedUMA = _StreamedUMA.Replace(@"N26", "nosePosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N27", "nosePronounced");
        _StreamedUMA = _StreamedUMA.Replace(@"N28", "noseFlatten");
        _StreamedUMA = _StreamedUMA.Replace(@"N29", "chinSize");

        _StreamedUMA = _StreamedUMA.Replace(@"N2\", "headWidth\\");

        _StreamedUMA = _StreamedUMA.Replace(@"N30", "chinPronounced");
        _StreamedUMA = _StreamedUMA.Replace(@"N31", "chinPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N32", "mandibleSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N33", "jawsSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N34", "jawsPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N35", "cheekSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N36", "cheekPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N37", "lowCheekPronounced");
        _StreamedUMA = _StreamedUMA.Replace(@"N38", "lowCheekPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N39", "foreheadSize");

        _StreamedUMA = _StreamedUMA.Replace(@"N3\", "neckThickness\\");

        _StreamedUMA = _StreamedUMA.Replace(@"N40", "foreheadPosition");
        _StreamedUMA = _StreamedUMA.Replace(@"N41", "lipsSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N42", "mouthSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N43", "eyeRotation");
        _StreamedUMA = _StreamedUMA.Replace(@"N44", "eyeSize");
        _StreamedUMA = _StreamedUMA.Replace(@"N45", "breastSize");
        //		_StreamedUMA = _StreamedUMA.Replace ( "N46" , "" );
        //		_StreamedUMA = _StreamedUMA.Replace ( "N47" , "" );
        //		_StreamedUMA = _StreamedUMA.Replace ( "N48" , "" );
        //		_StreamedUMA = _StreamedUMA.Replace ( "N49" , "" );

        _StreamedUMA = _StreamedUMA.Replace(@"N4\", "armLength\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N5\", "forearmLength\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N6\", "armWidth\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N7\", "forearmWidth\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N8\", "handsSize\\");
        _StreamedUMA = _StreamedUMA.Replace(@"N9\", "feetSize\\");
    }
示例#2
0
    public static void UpdateDNABones(DKUMAData umaData)
    {
        //   var umaDna = umaData.GetDna<DKUMADnaHumanoid>();
        for (int i = 0; i < umaData.umaRecipe.raceData.dnaConverterList.Length; i++)
        {
            if (umaData.umaRecipe.raceData.dnaConverterList[i].GetComponent <DK_DNAConverterBehaviour>() != null)
            {
                DNAConvObj = umaData.umaRecipe.raceData.dnaConverterList[i].gameObject;
            }
        }

        DKRaceData _RaceData = umaData.umaRecipe.raceData;

        if (_RaceData.BoneDataList.Count > 0)
        {
            if (umaData.boneList.Count == 0)
            {
                umaData.UpdateBoneData();
            }
            else
            {
                if (_RaceData)
                {
                    for (int i = 0; i < _RaceData.BoneDataList.Count; i++)
                    {
                        DKRaceData.BoneData _BoneData = _RaceData.BoneDataList[i];
                        if (_BoneData.Active)
                        {
                            if (_BoneData.UseClamps)
                            {
                                if (_BoneData.Clamp1.Index == 1)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x, _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 2)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 3)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                         * _BoneData.Clamp1.WXYZ1.z
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 4)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                         * _BoneData.Clamp1.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 5)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                         * _BoneData.Clamp1.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                         * _BoneData.Clamp1.WXYZ2.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 6)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                         * _BoneData.Clamp1.WXYZ1.z
                                                         - ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                         * _BoneData.Clamp1.WXYZ2.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 7)
                                {
                                    clamp1 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 8)
                                {
                                    clamp1 = Mathf.Clamp(-((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 9)
                                {
                                    clamp1 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                         * _BoneData.Clamp1.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 10)
                                {
                                    clamp1 = Mathf.Clamp(_BoneData.Clamp1.XYZ.x
                                                         - ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                         * _BoneData.Clamp1.WXYZ1.x
                                                         , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 1)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x, _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 2)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 3)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv2.Index].Value) - _BoneData.Clamp2.WXYZ1.y)
                                                         * _BoneData.Clamp2.WXYZ1.z
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 4)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv2.Index].Value) - _BoneData.Clamp2.WXYZ1.y)
                                                         * _BoneData.Clamp2.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv3.Index].Value) - _BoneData.Clamp2.WXYZ2.w)
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 5)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv2.Index].Value) - _BoneData.Clamp2.WXYZ1.y)
                                                         * _BoneData.Clamp2.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv3.Index].Value) - _BoneData.Clamp2.WXYZ2.w)
                                                         * _BoneData.Clamp2.WXYZ2.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 6)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv2.Index].Value) - _BoneData.Clamp2.WXYZ1.y)
                                                         * _BoneData.Clamp2.WXYZ1.z
                                                         - ((umaData.DNAList2[_BoneData.Clamp2.Conv3.Index].Value) - _BoneData.Clamp2.WXYZ2.w)
                                                         * _BoneData.Clamp2.WXYZ2.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 7)
                                {
                                    clamp2 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 8)
                                {
                                    clamp2 = Mathf.Clamp(-((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 9)
                                {
                                    clamp2 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv2.Index].Value) - _BoneData.Clamp2.WXYZ1.y)
                                                         * _BoneData.Clamp2.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp2.Conv3.Index].Value) - _BoneData.Clamp2.WXYZ2.w)
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp2.Index == 10)
                                {
                                    clamp2 = Mathf.Clamp(_BoneData.Clamp2.XYZ.x
                                                         - ((umaData.DNAList2[_BoneData.Clamp2.Conv1.Index].Value) - _BoneData.Clamp2.WXYZ1.w)
                                                         * _BoneData.Clamp2.WXYZ1.x
                                                         , _BoneData.Clamp2.XYZ.y, _BoneData.Clamp2.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 1)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x, _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 2)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 3)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv2.Index].Value) - _BoneData.Clamp3.WXYZ1.y)
                                                         * _BoneData.Clamp3.WXYZ1.z
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 4)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv2.Index].Value) - _BoneData.Clamp3.WXYZ1.y)
                                                         * _BoneData.Clamp3.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv3.Index].Value) - _BoneData.Clamp3.WXYZ2.w)
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                //0	Mathf.Clamp(1 + (umaDna.lowerWeight - 0.5f) * 0.15f + (umaDna.lowerMuscle - 0.5f) * 0.95f - (umaDna.legsSize - 0.5f), 0.65f, 1.45f),

                                if (_BoneData.Clamp3.Index == 5)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv2.Index].Value) - _BoneData.Clamp3.WXYZ1.y)
                                                         * _BoneData.Clamp3.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv3.Index].Value) - _BoneData.Clamp3.WXYZ2.w)
                                                         * _BoneData.Clamp3.WXYZ2.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 6)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv2.Index].Value) - _BoneData.Clamp3.WXYZ1.y)
                                                         * _BoneData.Clamp3.WXYZ1.z
                                                         - ((umaData.DNAList2[_BoneData.Clamp3.Conv3.Index].Value) - _BoneData.Clamp3.WXYZ2.w)
                                                         * _BoneData.Clamp3.WXYZ2.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 7)
                                {
                                    clamp3 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 8)
                                {
                                    clamp3 = Mathf.Clamp(-((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 9)
                                {
                                    clamp3 = Mathf.Clamp(((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv2.Index].Value) - _BoneData.Clamp3.WXYZ1.y)
                                                         * _BoneData.Clamp3.WXYZ1.z
                                                         + ((umaData.DNAList2[_BoneData.Clamp3.Conv3.Index].Value) - _BoneData.Clamp3.WXYZ2.w)
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                if (_BoneData.Clamp3.Index == 10)
                                {
                                    clamp3 = Mathf.Clamp(_BoneData.Clamp3.XYZ.x
                                                         - ((umaData.DNAList2[_BoneData.Clamp3.Conv1.Index].Value) - _BoneData.Clamp3.WXYZ1.w)
                                                         * _BoneData.Clamp3.WXYZ1.x
                                                         , _BoneData.Clamp3.XYZ.y, _BoneData.Clamp3.XYZ.z);
                                }
                                // Apply
                                if (_BoneData.Clamp1.Type == 1)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localScale = new Vector3(clamp1, clamp2, clamp3);
                                }
                                if (_BoneData.Clamp1.Type == 2)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localEulerAngles = new Vector3(clamp1, clamp2, clamp3);
                                }
                                if (_BoneData.Clamp1.Type == 3)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localPosition = umaData.boneList[_RaceData.BoneDataList[i].Name].actualBonePosition + new Vector3(clamp1, clamp2, clamp3);
                                }
                                if (_BoneData.Clamp1.Type == 4)
                                {
                                    umaData.ChangeBoneScale(_RaceData.BoneDataList[i].Name, new Vector3(clamp1, clamp2, clamp3));
                                }
                                if (_BoneData.Clamp1.Type == 5)
                                {
                                    umaData.ChangeBoneMoveRelative(_RaceData.BoneDataList[i].Name, new Vector3(clamp1, clamp2, clamp3));
                                }
                                if (_BoneData.Clamp1.Type == 6)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localPosition = umaData.boneList[_RaceData.BoneDataList[i].LinkedTo].actualBonePosition + new Vector3(clamp1, clamp2, clamp3);
                                }
                            }
                            else
                            {
                                if (_BoneData.Clamp1.Index == 1)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x, _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 2)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 3)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                           * _BoneData.Clamp1.WXYZ1.z
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 4)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                           * _BoneData.Clamp1.WXYZ1.z
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 5)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                           * _BoneData.Clamp1.WXYZ1.z
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                           * _BoneData.Clamp1.WXYZ2.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 6)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                           * _BoneData.Clamp1.WXYZ1.z
                                                           - ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                           * _BoneData.Clamp1.WXYZ2.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 7)
                                {
                                    _Vector3 = new Vector3((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 8)
                                {
                                    _Vector3 = new Vector3(-((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 9)
                                {
                                    _Vector3 = new Vector3(((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv2.Index].Value) - _BoneData.Clamp1.WXYZ1.y)
                                                           * _BoneData.Clamp1.WXYZ1.z
                                                           + ((umaData.DNAList2[_BoneData.Clamp1.Conv3.Index].Value) - _BoneData.Clamp1.WXYZ2.w)
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                if (_BoneData.Clamp1.Index == 10)
                                {
                                    _Vector3 = new Vector3(_BoneData.Clamp1.XYZ.x
                                                           - ((umaData.DNAList2[_BoneData.Clamp1.Conv1.Index].Value) - _BoneData.Clamp1.WXYZ1.w)
                                                           * _BoneData.Clamp1.WXYZ1.x
                                                           , _BoneData.Clamp1.XYZ.y, _BoneData.Clamp1.XYZ.z);
                                }
                                // Apply
                                if (_BoneData.Clamp1.Type == 1)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localScale = _Vector3;
                                }
                                if (_BoneData.Clamp1.Type == 2)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localEulerAngles = _Vector3 /* new Vector3( clamp1, clamp2, clamp3 ) */;
                                }
                                if (_BoneData.Clamp1.Type == 3)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localPosition = umaData.boneList[_RaceData.BoneDataList[i].Name].actualBonePosition + _Vector3;
                                }
                                if (_BoneData.Clamp1.Type == 4)
                                {
                                    umaData.ChangeBoneScale(_RaceData.BoneDataList[i].Name, _Vector3);
                                }
                                if (_BoneData.Clamp1.Type == 5)
                                {
                                    umaData.ChangeBoneMoveRelative(_RaceData.BoneDataList[i].Name, new Vector3(clamp1, clamp2, clamp3));
                                }
                                if (_BoneData.Clamp1.Type == 6)
                                {
                                    umaData.boneList[_RaceData.BoneDataList[i].Name].boneTransform.localPosition = umaData.boneList[_RaceData.BoneDataList[i].LinkedTo].actualBonePosition + _Vector3;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
示例#3
0
 public void Prepare(DKUMAData _umaData, DK_RPG_SelfGenerator _umaGenerator)
 {
     umaData         = _umaData;
     umaGenerator    = _umaGenerator;
     _DKumaGenerator = GameObject.Find("DKUMAGenerator").GetComponent <DKUMAGenerator>();
 }
 public void ApplyDna(DKUMAData data)
 {
     ApplyDnaAction(data);
 }