public void loadPose(String path) { IPlatformManager pm = Live2DFramework.getPlatformManager(); if (debugMode) { pm.log("Load Pose : " + path); } pose = L2DPose.load(pm.loadBytes(path)); }
/* * 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 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); }
public void loadPose(String path) { IPlatformManager pm = Live2DFramework.getPlatformManager(); if (debugMode) pm.log("Load Pose : " + path); pose = L2DPose.load(pm.loadBytes(path)); }
/* * 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)); }