2016-08-27 7 views
0

Я интегрировал SCORM 1.2 с моей игрой, которая выводит результат WebGL, если мы играем в WebGL прямо в браузере, работаем отлично и не работаем в LMS. Обнаружено, что сценарий игры, включенный в игру, вызывает проблему, когда я отключил ее и загрузил сборку в LMS, ее загрузку (невозможно продолжить игру, поскольку скрипт отключен)Unity WebGL build с SCORM 1.2 не работает в LMS

В этом скрипте я используя функцию GAF, данные XML-данных из файла, помещенного в папку StreamingAssets, не используя какой-либо WWW-класс.

пакета SCORM активов, включенный в игре, https://www.assetstore.unity3d.com/en/#!/content/53523

Понятия не имеет, какую функцию, ограничивающую игру от бега, не могли бы вы взглянуть на это и пришлите мне обратную связь.

Сообщение об ошибке См. Приложение. enter image description here

+0

HI, кажется ошибка доступа к файлам из папки потоковых активов, ее не работает при загрузке в сервере LMS, как я могу это исправить. – ben

+0

Привет, Доступ к папке Path StreamingAssets через WWW-класс – ben

ответ

0

StreamingAssets доступ папка путь с помощью WWW класса https://docs.unity3d.com/ScriptReference/Application-streamingAssetsPath.html

public string filePath = Application.streamingAssetsPath + "/UserDetails.xml"; 
 
     public string result = ""; 
 
    
 
    void Awake() 
 
    { 
 
    filePath = Application.streamingAssetsPath + "/UserDetails.xml"; 
 
    } 
 
    
 
    void Start() 
 
    { 
 
    StartCoroutine(userDetailsXmlPath()); 
 
    } 
 
    
 
     IEnumerator userDetailsXmlPath() 
 
     { 
 
      print (filePath); 
 
     
 
      if (filePath.Contains ("://") || filePath.Contains (":///")) { 
 
       WWW www = new WWW (filePath); 
 
       yield return www; 
 
       result = www.text; 
 
     
 
       print (result); 
 
       FetchUserDetails(); 
 
      } else { 
 
       result = File.ReadAllText (filePath); 
 
     
 
       print (result); 
 
       FetchUserDetails(); 
 
      } 
 
     } 
 
     
 
     public void FetchUserDetails() 
 
     { 
 
      XmlDocument userXml1 = new XmlDocument(); 
 
     
 
      userXml1.LoadXml(result); 
 
     
 
     
 
      XmlNodeList userList = userXml1.GetElementsByTagName ("user"); 
 
     
 
      foreach(XmlNode userValue in userList) 
 
      { 
 
       XmlNodeList userContent = userValue.ChildNodes; 
 
       objUser = new Dictionary<string, string>(); 
 
     
 
       foreach(XmlNode value in userContent) 
 
       { 
 
        objUser.Add (value.Name, value.InnerText); 
 
       } 
 
     
 
       userFullDetails.Add (objUser); 
 
     
 
       userCountInXml = userList.Count; 
 
     
 
       userId = new string[userList.Count]; 
 
       questionSetOfUser = new string[userList.Count]; 
 
      } 
 
     
 
      AssignUserXmlValuesToArray(); 
 
     }