Example #1
0
        public void loadPose(String path)
        {
            IPlatformManager pm = Live2DFramework.getPlatformManager();

            if (debugMode)
            {
                pm.log("Load Pose : " + path);
            }
            pose = L2DPose.load(pm.loadBytes(path));
        }
Example #2
0
        /*
         * JSONファイルから読み込む
         * 仕様についてはマニュアル参照。JSONスキーマの形式の仕様がある。
         * @param buf
         * @return
         */
        public static L2DPose load(char[] buf)
        {
            L2DPose ret = new L2DPose();

            Value json = Json.parseFromBytes(buf);

            // フェード時間の指定。Viewer2.1.8より指定可能。
            if (json.getMap(null).ContainsKey("fade_in"))
            {
                ret.fadeInMS = json.get("fade_in").toInt();
            }

            // パーツ切り替え一覧
            List <Value> poseListInfo = json.get("parts_visible").getVector(null);
            int          poseNum      = poseListInfo.Count;

            for (int i_pose = 0; i_pose < poseNum; i_pose++)
            {
                Value poseInfo = poseListInfo[i_pose];

                // IDリストの設定
                List <Value>    idListInfo = poseInfo.get("group").getVector(null);
                int             idNum      = idListInfo.Count;
                L2DPartsParam[] partsGroup = new L2DPartsParam[idNum];
                for (int i_group = 0; i_group < idNum; i_group++)
                {
                    Value         partsInfo = idListInfo[i_group];
                    L2DPartsParam parts     = new L2DPartsParam(partsInfo.get("id").toString());
                    partsGroup[i_group] = parts;

                    // リンクするパーツの設定
                    if (!partsInfo.getMap(null).ContainsKey("link"))
                    {
                        continue;                                             // リンクが無いときもある
                    }
                    List <Value> linkListInfo = partsInfo.get("link").getVector(null);
                    int          linkNum      = linkListInfo.Count;
                    parts.link = new List <L2DPartsParam>();
                    for (int i_link = 0; i_link < linkNum; i_link++)
                    {
                        //					string linkID = idListInfo.get(i_group).tostring();//parts ID
                        L2DPartsParam linkParts = new L2DPartsParam(linkListInfo[i_link].toString());
                        parts.link.Add(linkParts);
                    }
                }
                ret.addPartsGroup(partsGroup);
            }
            return(ret);
        }
Example #3
0
        public static L2DPose load(char[] buf)
        {
            L2DPose ret = new L2DPose();

            Value json = Json.parseFromBytes(buf);


            List <Value> poseListInfo = json.get("parts_visible").getVector(null);
            int          poseNum      = poseListInfo.Count;

            for (int i_pose = 0; i_pose < poseNum; i_pose++)
            {
                Value poseInfo = poseListInfo[i_pose];


                List <Value>    idListInfo = poseInfo.get("group").getVector(null);
                int             idNum      = idListInfo.Count;
                L2DPartsParam[] partsGroup = new L2DPartsParam[idNum];
                for (int i_group = 0; i_group < idNum; i_group++)
                {
                    Value         partsInfo = idListInfo[i_group];
                    L2DPartsParam parts     = new L2DPartsParam(partsInfo.get("id").toString());
                    partsGroup[i_group] = parts;


                    if (!partsInfo.getMap(null).ContainsKey("link"))
                    {
                        continue;
                    }
                    List <Value> linkListInfo = partsInfo.get("link").getVector(null);
                    int          linkNum      = linkListInfo.Count;
                    parts.link = new List <L2DPartsParam>();
                    for (int i_link = 0; i_link < linkNum; i_link++)
                    {
                        //					string linkID = idListInfo.get(i_group).tostring();//parts ID
                        L2DPartsParam linkParts = new L2DPartsParam(linkListInfo[i_link].toString());
                        parts.link.Add(linkParts);
                    }
                }
                ret.addPartsGroup(partsGroup);
            }
            return(ret);
        }
Example #4
0
 public void loadPose(String path)
 {
     IPlatformManager pm = Live2DFramework.getPlatformManager();
     if (debugMode) pm.log("Load Pose : " + path);
     pose = L2DPose.load(pm.loadBytes(path));
 }
Example #5
0
        /*
         * JSONファイルから読み込む
         * 仕様についてはマニュアル参照。JSONスキーマの形式の仕様がある。
         * @param buf
         * @return
         */
        public static L2DPose load(char[] buf)
        {
            L2DPose ret = new L2DPose();

            Value json = Json.parseFromBytes(buf);

            // フェード時間の指定。Viewer2.1.8より指定可能。
            if (json.getMap(null).ContainsKey("fade_in"))
            {
               ret.fadeInMS = json.get("fade_in").toInt();
            }

            // パーツ切り替え一覧
            List<Value> poseListInfo = json.get("parts_visible").getVector(null);
            int poseNum = poseListInfo.Count;

            for (int i_pose = 0; i_pose < poseNum; i_pose++)
            {
                Value poseInfo = poseListInfo[i_pose];

                // IDリストの設定
                List<Value> idListInfo = poseInfo.get("group").getVector(null);
                int idNum = idListInfo.Count;
                L2DPartsParam[] partsGroup = new L2DPartsParam[idNum];
                for (int i_group = 0; i_group < idNum; i_group++)
                {
                    Value partsInfo = idListInfo[i_group];
                    L2DPartsParam parts = new L2DPartsParam(partsInfo.get("id").toString());
                    partsGroup[i_group] = parts;

                    // リンクするパーツの設定
                    if (!partsInfo.getMap(null).ContainsKey("link")) continue;// リンクが無いときもある
                    List<Value> linkListInfo = partsInfo.get("link").getVector(null);
                    int linkNum = linkListInfo.Count;
                    parts.link = new List<L2DPartsParam>();
                    for (int i_link = 0; i_link < linkNum; i_link++)
                    {
                        //					string linkID = idListInfo.get(i_group).tostring();//parts ID
                        L2DPartsParam linkParts = new L2DPartsParam(linkListInfo[i_link].toString());
                        parts.link.Add(linkParts);
                    }
                }
                ret.addPartsGroup(partsGroup);
            }
            return ret;
        }
 public static L2DPose load(char[] buf)
 {
     L2DPose pose = new L2DPose();
     List<Value> list = Json.parseFromBytes(buf).get("parts_visible").getVector(null);
     int count = list.Count;
     for (int i = 0; i < count; i++)
     {
         Value value3 = list[i];
         List<Value> list2 = value3.get("group").getVector(null);
         int num3 = list2.Count;
         L2DPartsParam[] partsGroup = new L2DPartsParam[num3];
         for (int j = 0; j < num3; j++)
         {
             Value value4 = list2[j];
             L2DPartsParam param = new L2DPartsParam(value4.get("id").toString());
             partsGroup[j] = param;
             if (value4.getMap(null).ContainsKey("link"))
             {
                 List<Value> list3 = value4.get("link").getVector(null);
                 int num5 = list3.Count;
                 param.link = new List<L2DPartsParam>();
                 for (int k = 0; k < num5; k++)
                 {
                     L2DPartsParam item = new L2DPartsParam(list3[k].toString());
                     param.link.Add(item);
                 }
             }
         }
         pose.addPartsGroup(partsGroup);
     }
     return pose;
 }
 public void loadPose(string path)
 {
     IPlatformManager manager = Live2DFramework.getPlatformManager();
     if (this.debugMode)
     {
         manager.log("Load Pose : " + path);
     }
     this.pose = L2DPose.load(manager.loadBytes(path));
 }