facebook twitter hatena line email

「Unity/WebGL/apache」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==Uncaught SyntaxError: Invalid or unexpected token等エラーがでる場合== 以下詳細 <pre> Uncaught SyntaxError: Invalid or unexpected token sample1.loader.js:1...」)
 
 
(同じ利用者による、間の4版が非表示)
行11: 行11:
  
 
minimumで出力したindex.htmlです。
 
minimumで出力したindex.htmlです。
```
+
<pre>
 
<!DOCTYPE html>
 
<!DOCTYPE html>
 
<html lang="en-us">
 
<html lang="en-us">
行29: 行29:
 
         streamingAssetsUrl: "StreamingAssets",
 
         streamingAssetsUrl: "StreamingAssets",
 
         companyName: "DefaultCompany",
 
         companyName: "DefaultCompany",
         productName: "unsi",
+
         productName: "testapp",
 
         productVersion: "1.0",
 
         productVersion: "1.0",
 
       });
 
       });
行35: 行35:
 
   </body>
 
   </body>
 
</html>
 
</html>
 +
</pre>
  
```
 
 
ウェブサーバーではttp://hoge.com/sample1/index.htmlとなるので、
 
ウェブサーバーではttp://hoge.com/sample1/index.htmlとなるので、
  
  
 
index.htmlのsrcとかに/sample1/を追加したが・・・上記のように同じエラーがでる。
 
index.htmlのsrcとかに/sample1/を追加したが・・・上記のように同じエラーがでる。
```
+
<pre>
 
<!DOCTYPE html>
 
<!DOCTYPE html>
 
<html lang="en-us">
 
<html lang="en-us">
行59: 行59:
 
         streamingAssetsUrl: "StreamingAssets",
 
         streamingAssetsUrl: "StreamingAssets",
 
         companyName: "DefaultCompany",
 
         companyName: "DefaultCompany",
         productName: "unsi",
+
         productName: "testapp",
 
         productVersion: "1.0",
 
         productVersion: "1.0",
 
       });
 
       });
行66: 行66:
 
</html>
 
</html>
  
```
+
</pre>
  
 
https://docs.unity3d.com/2020.1/Documentation/Manual/webgl-server-configuration-code-samples.html?_ga=2.258867658.1744347718.1605948322-176549160.1595780906
 
https://docs.unity3d.com/2020.1/Documentation/Manual/webgl-server-configuration-code-samples.html?_ga=2.258867658.1744347718.1605948322-176549160.1595780906
行72: 行72:
  
 
unity2020.1系だと、このエラーが出るようで、unity2019系にするとどうなるか試してみると良いかも。
 
unity2020.1系だと、このエラーが出るようで、unity2019系にするとどうなるか試してみると良いかも。
 +
 +
==unity2020系動作part1==
 +
unity2020系でも、Project Settings/Player/WebGL/"Publishing Settings"の"Compression Format"をDisabledへすると、動作した。
 +
 +
==unity2020系動作part2==
 +
unity2020系でも、Project Settings/Player/WebGL/"Publishing Settings"のDecompression FallbackをOnにすると、動作した。
 +
 +
出力されるindex.htmlは、↓のような感じ
 +
<pre>
 +
<!DOCTYPE html>
 +
<html lang="en-us">
 +
  <head>
 +
    <meta charset="utf-8">
 +
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 +
    <title>Unity WebGL Player | typetoon</title>
 +
  </head>
 +
  <body style="text-align: center">
 +
    <canvas id="unity-canvas" width=960 height=600 style="width: 960px; height: 600px; background: #231F20"></canvas>
 +
    <script src="Build/web_project.loader.js"></script>
 +
    <script>
 +
      createUnityInstance(document.querySelector("#unity-canvas"), {
 +
        dataUrl: "Build/web_project.data.unityweb",
 +
        frameworkUrl: "Build/web_project.framework.js.unityweb",
 +
        codeUrl: "Build/web_project.wasm.unityweb",
 +
        streamingAssetsUrl: "StreamingAssets",
 +
        companyName: "DefaultCompany",
 +
        productName: "testapp",
 +
        productVersion: "1.0",
 +
        // matchWebGLToCanvasSize: false, // Uncomment this to separately control WebGL canvas render size and DOM element size.
 +
        // devicePixelRatio: 1, // Uncomment this to override low DPI rendering on high DPI displays.
 +
      });
 +
    </script>
 +
  </body>
 +
</html>
 +
</pre>
 +
 +
参考:https://baba-s.hatenablog.com/entry/2021/01/05/090000

2022年2月20日 (日) 02:36時点における最新版

Uncaught SyntaxError: Invalid or unexpected token等エラーがでる場合

以下詳細

Uncaught SyntaxError: Invalid or unexpected token
sample1.loader.js:1 Uncaught ReferenceError: unityFramework is not defined
    at HTMLScriptElement.n.onload (sample1.loader.js:1)
sample1.loader.js:1 [UnityCache] 
'http://hoge.com/sample1/Build/sample1.data.br' 
successfully downloaded and stored in the indexedDB cache

minimumで出力したindex.htmlです。

<!DOCTYPE html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Unity WebGL Player | unsi</title>
  </head>
  <body style="text-align: center">
    <canvas id="unity-canvas" style="width: 626px; height: 250px; background: #231F20"></canvas>
    <script src="Build/webgl_sample1.loader.js"></script>
    <script>
      createUnityInstance(document.querySelector("#unity-canvas"), {
        dataUrl: "Build/webgl_sample1.data.br",
        frameworkUrl: "Build/webgl_sample1.framework.js.br",
        codeUrl: "Build/webgl_sample1.wasm.br",
        streamingAssetsUrl: "StreamingAssets",
        companyName: "DefaultCompany",
        productName: "testapp",
        productVersion: "1.0",
      });
    </script>
  </body>
</html>

ウェブサーバーではttp://hoge.com/sample1/index.htmlとなるので、


index.htmlのsrcとかに/sample1/を追加したが・・・上記のように同じエラーがでる。

<!DOCTYPE html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Unity WebGL Player | unsi</title>
  </head>
  <body style="text-align: center">
    <canvas id="unity-canvas" style="width: 626px; height: 250px; background: #231F20"></canvas>
    <script src="/sample1/Build/webgl_sample1.loader.js"></script>
    <script>
      createUnityInstance(document.querySelector("#unity-canvas"), {
        dataUrl: "/sample1/Build/webgl_sample1.data.br",
        frameworkUrl: "/sample1/Build/webgl_sample1.framework.js.br",
        codeUrl: "/sample1/Build/webgl_sample1.wasm.br",
        streamingAssetsUrl: "StreamingAssets",
        companyName: "DefaultCompany",
        productName: "testapp",
        productVersion: "1.0",
      });
    </script>
  </body>
</html>

https://docs.unity3d.com/2020.1/Documentation/Manual/webgl-server-configuration-code-samples.html?_ga=2.258867658.1744347718.1605948322-176549160.1595780906 apacheだと参照先の.htaccessをBuildのdirの下に於けば良いと合ったが、今度はbrファイルにアクセスできなくなった。

unity2020.1系だと、このエラーが出るようで、unity2019系にするとどうなるか試してみると良いかも。

unity2020系動作part1

unity2020系でも、Project Settings/Player/WebGL/"Publishing Settings"の"Compression Format"をDisabledへすると、動作した。

unity2020系動作part2

unity2020系でも、Project Settings/Player/WebGL/"Publishing Settings"のDecompression FallbackをOnにすると、動作した。

出力されるindex.htmlは、↓のような感じ

<!DOCTYPE html>
<html lang="en-us">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Unity WebGL Player | typetoon</title>
  </head>
  <body style="text-align: center">
    <canvas id="unity-canvas" width=960 height=600 style="width: 960px; height: 600px; background: #231F20"></canvas>
    <script src="Build/web_project.loader.js"></script>
    <script>
      createUnityInstance(document.querySelector("#unity-canvas"), {
        dataUrl: "Build/web_project.data.unityweb",
        frameworkUrl: "Build/web_project.framework.js.unityweb",
        codeUrl: "Build/web_project.wasm.unityweb",
        streamingAssetsUrl: "StreamingAssets",
        companyName: "DefaultCompany",
        productName: "testapp",
        productVersion: "1.0",
        // matchWebGLToCanvasSize: false, // Uncomment this to separately control WebGL canvas render size and DOM element size.
        // devicePixelRatio: 1, // Uncomment this to override low DPI rendering on high DPI displays.
      });
    </script>
  </body>
</html>

参考:https://baba-s.hatenablog.com/entry/2021/01/05/090000