加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

unity中xml读取

发布时间:2020-12-16 06:23:56 所属栏目:百科 来源:网络整理
导读:void Start () { path="file://"+Application.dataPath+"/StreamingAssets/XML/waiGuan.xml"; //thead="//WaiguanList/obj"; StartCoroutine(loadXml(path)); } IEnumerator loadXml(string loadPath) { WWW www=new WWW(loadPath); yield return www; if(ww

void Start () {

path="file://"+Application.dataPath+"/StreamingAssets/XML/waiGuan.xml";
//thead="//WaiguanList/obj";
StartCoroutine(loadXml(path));

}

IEnumerator loadXml(string loadPath)
{
WWW www=new WWW(loadPath);
yield return www;
if(www.isDone)
{
xmlGet=www.text;
// Debug.Log(xmlGet);
//isLoad=true;
if(xmlGet.Length>0)
{
//string objFolder="file://"+Application.dataPath+"/Resources/";
//ParseInfoXML(xmlGet,thead,"wai",objFolder);
ParseInfoXml(xmlGet);
}
}
}

private void ParseInfoXml(string data) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(data); XmlElement RootEle = xmlDoc.DocumentElement; DataManager.BasicInfo = RootEle.ChildNodes; allCount=DataManager.BasicInfo.Count; MakeObj(); } private void MakeObj() { //int i = 0; foreach(XmlNode node in DataManager.BasicInfo) { string path = ((XmlElement)node).SelectSingleNode("path").InnerText; string guanName = ((XmlElement)node).SelectSingleNode("guanName").InnerText; string prefabName = ((XmlElement)node).SelectSingleNode("prefName").InnerText; string ObjName = ((XmlElement)node).SelectSingleNode("objName").InnerText; XmlElement pos = ((XmlElement)node).SelectSingleNode("position") as XmlElement; float px = float.Parse(pos.GetAttribute("x")); float py = float.Parse(pos.GetAttribute("y")); float pz = float.Parse(pos.GetAttribute("z")); XmlElement rot = ((XmlElement)node).SelectSingleNode("rotation") as XmlElement; float rx = float.Parse(rot.GetAttribute("x")); float ry = float.Parse(rot.GetAttribute("y")); float rz = float.Parse(rot.GetAttribute("z")); XmlElement scale = ((XmlElement)node).SelectSingleNode("scale") as XmlElement; float sx = float.Parse(scale.GetAttribute("x")); float sy = float.Parse(scale.GetAttribute("y")); float sz = float.Parse(scale.GetAttribute("z")); bool hasIntro =false; XmlNode Intro = ((XmlElement)node).SelectSingleNode("intro"); if(Intro == null) { hasIntro = false; }else { hasIntro = true; } if(guanName.Equals(changGuanName)) { StartCoroutine(downLoadAssetBundle(path,prefabName,ObjName,new Vector3(px,py,pz),new Vector3(rx,ry,rz),new Vector3(sx,sy,sz),hasIntro)); } } }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读