Beispiel #1
0
        public void Execute(ref T2PPhysObjectList phys_list)
        {
            phys_list.MakeChain("右乳1");
            phys_list.MakeChain("左乳1");

            SetParameter(phys_list.GetBodyListByName(".乳."));
            SetParameterEnd(phys_list.GetBodyListByName(".乳先"));
            SetParameter(phys_list.GetJointListByName(".乳."));
            phys_list.GetBodyByName("右乳1").rigidbody_type = 0; // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左乳1").rigidbody_type = 0; // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
        }
Beispiel #2
0
        public void Execute(ref T2PPhysObjectList phys_list)
        {
            phys_list.MakeChain("中髪後1");
            phys_list.MakeChain("左髪横1");
            phys_list.MakeChain("右髪横1");
            phys_list.MakeChain("左髪後1");
            phys_list.MakeChain("右髪後1");
            phys_list.MakeChain("左髪前1");
            phys_list.MakeChain("右髪前1");

            SetParameter(phys_list.GetBodyListByName(".髪.*"));
            SetParameterEnd(phys_list.GetBodyListByName(".髪.*先"));
            SetParameter(phys_list.GetJointListByName(".髪.*"));

            phys_list.GetBodyByName("中髪後1").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("中髪後2").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetJointByName("中髪後2-中髪後3").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("中髪後2-中髪後3").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("中髪後3-中髪後4").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("中髪後3-中髪後4").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetBodyByName("左髪横1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪横2").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪横3").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従

            phys_list.GetBodyByName("右髪横1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪横2").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪横3").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従

            phys_list.GetBodyByName("左髪後1").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪後2").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetJointByName("左髪後2-左髪後3").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左髪後2-左髪後3").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左髪後3-左髪後4").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左髪後3-左髪後4").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetBodyByName("右髪後1").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪後2").rigidbody_type          = 0;                                 // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetJointByName("右髪後2-右髪後3").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右髪後2-右髪後3").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右髪後3-右髪後4").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右髪後3-右髪後4").constrain_rot_2.x = (float)((30.0 / 180.0) * Math.PI); // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetBodyByName("左髪前1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪前2").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪前3").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左髪前先").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従

            phys_list.GetBodyByName("右髪前1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪前2").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪前3").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("右髪前先").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
        }
Beispiel #3
0
        public void Execute(ref T2PPhysObjectList phys_list)
        {
            phys_list.MakeBodyFromBone("下半身");

            phys_list.MakeBodyFromBone("上半身");
            phys_list.GetBodyByName("上半身").shape_type = 1;    // 形状:タイプ(0:球、1:箱、2:カプセル) // 00 // 球
            phys_list.GetBodyByName("上半身").shape_w    = 1.0f; // 形状:半径(幅) // CD CC CC 3F // 1.6
            phys_list.GetBodyByName("上半身").shape_h   *= 0.5f;
            phys_list.GetBodyByName("上半身").shape_d    = 0.5f; // 形状:奥行 // CD CC CC 3D // 0.1

            phys_list.MakeBodyFromBone("上半身2");
            phys_list.GetBodyByName("上半身2").shape_type = 1;    // 形状:タイプ(0:球、1:箱、2:カプセル) // 00 // 球
            phys_list.GetBodyByName("上半身2").shape_w    = 1.0f; // 形状:半径(幅) // CD CC CC 3F // 1.6
            phys_list.GetBodyByName("上半身2").shape_h   *= 0.5f;
            phys_list.GetBodyByName("上半身2").shape_d    = 0.5f; // 形状:奥行 // CD CC CC 3D // 0.1

            phys_list.MakeBodyFromBone("上半身3");
            phys_list.GetBodyByName("上半身3").shape_type = 1;    // 形状:タイプ(0:球、1:箱、2:カプセル) // 00 // 球
            phys_list.GetBodyByName("上半身3").shape_w    = 1.0f; // 形状:半径(幅) // CD CC CC 3F // 1.6
            phys_list.GetBodyByName("上半身3").shape_h   *= 0.5f;
            phys_list.GetBodyByName("上半身3").shape_d    = 0.5f; // 形状:奥行 // CD CC CC 3D // 0.1

            phys_list.MakeBodyFromBone("頭");

            phys_list.MakeBodyFromBone("左肩");

            phys_list.MakeBodyFromBone("左腕");

            phys_list.MakeBodyFromBone("左ひじ");

            phys_list.MakeBodyFromBone("右肩");

            phys_list.MakeBodyFromBone("右腕");

            phys_list.MakeBodyFromBone("右ひじ");

            phys_list.MakeBodyFromBone("左足");
            phys_list.GetBodyByName("左足").shape_w = 0.75f; // 形状:半径(幅) // CD CC CC 3F // 1.6

            phys_list.MakeBodyFromBone("左ひざ");

            phys_list.MakeBodyFromBone("右足");
            phys_list.GetBodyByName("右足").shape_w = 0.75f; // 形状:半径(幅) // CD CC CC 3F // 1.6

            phys_list.MakeBodyFromBone("右ひざ");
        }
Beispiel #4
0
        public void Execute(ref T2PPhysObjectList phys_list)
        {
            phys_list.MakeChain("右乳1");
            phys_list.MakeChain("左乳1");

            SetParameter(phys_list.GetBodyListByName(".乳."));
            SetParameterEnd(phys_list.GetBodyListByName(".乳先"));
            SetParameter(phys_list.GetJointListByName(".乳."));
            phys_list.GetBodyByName("右乳1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従
            phys_list.GetBodyByName("左乳1").rigidbody_type = 0;                                          // 諸データ:タイプ(0:Bone追従、1:物理演算、2:物理演算(Bone位置合せ)) // 00 // Bone追従

            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_1.x = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_2.x = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_1.y = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_2.y = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_1.z = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳1-右乳2").constrain_rot_2.z = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_1.x = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_2.x = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_1.y = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_2.y = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_1.z = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳1-左乳2").constrain_rot_2.z = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_1.x = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_2.x = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_1.y = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_2.y = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_1.z = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("右乳2-右乳3").constrain_rot_2.z = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_1.x = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_2.x = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_1.y = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_2.y = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_1.z = (float)((-10.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("左乳2-左乳3").constrain_rot_2.z = (float)((10.0 / 180.0) * Math.PI);  // 制限:回転2(rad(x), rad(y), rad(z))
        }
Beispiel #5
0
        public void Execute(ref T2PPhysObjectList phys_list)
        {
            phys_list.MakeChain("左ス後1");
            phys_list.MakeChain("右ス後1");
            phys_list.MakeChain("右ス横1");
            phys_list.MakeChain("右ス前1");
            phys_list.MakeChain("左ス前1");
            phys_list.MakeChain("左ス横1");

            SetParameter(phys_list.GetBodyListByName(".ス.."));
            SetParameterSide(phys_list.GetBodyListByName(".ス横."));
            SetParameterEnd(phys_list.GetBodyListByName(".ス.先"));
            SetParameterSideEnd(phys_list.GetBodyListByName(".ス横先"));
            SetParameter(phys_list.GetJointListByName(".ス.."));

            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_1.x = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_2.x = (float)((60.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_1.z = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").constrain_rot_2.z = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").spring_rot.x      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス後1").spring_rot.z      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_1.x = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_2.x = (float)((60.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_1.z = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").constrain_rot_2.z = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").spring_rot.x      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス後1").spring_rot.z      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_2.x = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_1.z = (float)((-15.0 / 180.0) * Math.PI);  // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").constrain_rot_2.z = (float)((60.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").spring_rot.x      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス横1").spring_rot.z      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_1.x = (float)((-120.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_2.x = (float)((20.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_1.z = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").constrain_rot_2.z = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").spring_rot.x      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-右ス前1").spring_rot.z      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_1.x = (float)((-120.0 / 180.0) * Math.PI); // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_2.x = (float)((20.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_1.z = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").constrain_rot_2.z = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").spring_rot.x      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス前1").spring_rot.z      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_1.x = (float)((-5.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_2.x = (float)((5.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_1.y = (float)((-0.0 / 180.0) * Math.PI);   // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_2.y = (float)((0.0 / 180.0) * Math.PI);    // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_1.z = (float)((-60.0 / 180.0) * Math.PI);  // 制限:回転1(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").constrain_rot_2.z = (float)((15.0 / 180.0) * Math.PI);   // 制限:回転2(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").spring_rot.x      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").spring_rot.y      = 0.0f;                                // ばね:回転(rad(x), rad(y), rad(z))
            phys_list.GetJointByName("下半身-左ス横1").spring_rot.z      = 50.0f;                               // ばね:回転(rad(x), rad(y), rad(z))

            phys_list.MakeJointFromTwoBones("左ス前2", "右ス前2");
            phys_list.MakeJointFromTwoBones("右ス前2", "右ス横2");
            phys_list.MakeJointFromTwoBones("右ス横2", "右ス後2");
            phys_list.MakeJointFromTwoBones("右ス後2", "左ス後2");
            phys_list.MakeJointFromTwoBones("左ス後2", "左ス横2");
            phys_list.MakeJointFromTwoBones("左ス横2", "左ス前2");
            phys_list.MakeJointFromTwoBones("左ス前3", "右ス前3");
            phys_list.MakeJointFromTwoBones("右ス前3", "右ス横3");
            phys_list.MakeJointFromTwoBones("右ス横3", "右ス後3");
            phys_list.MakeJointFromTwoBones("右ス後3", "左ス後3");
            phys_list.MakeJointFromTwoBones("左ス後3", "左ス横3");
            phys_list.MakeJointFromTwoBones("左ス横3", "左ス前3");
        }