Unity WebGL使用浏览器打开初试水

之前开发的内容一直都是PC端或者是Android端,很少接触到WebGL的内容。最近研究了一下WebGL。之前接触Unity的Web端的还是WebPlayer。。。本以为WebGL发布出来就直接可以在浏览器运行了,结果,和我想象的完全不一样。直接在浏览器中打开的界面如下:
在这里插入图片描述
大概意思就是我的浏览器不支持运行WebGL内容文件。
通过各种查资料,发现了问题的根源。那就是需要将发布出来的内容放到服务器上,然后再访问就没有问题了(在本地搭建一个IIS就可以)。所以我尝试了一下。但是仍然不行。显示的界面如下:
在这里插入图片描述
他又报错了。这就让我很迷茫。接着百度,几经波折,终于找到了问题所在。
缺少一个Web.config的配置文件,涉及到跨域的问题。需要在发布的文件根目录下放入一个Web.config配置文件。文件的内容如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>  
  <system.webServer>
    <httpProtocol>
      <!-- 允许跨域配置 -->
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="X-Requested-With,Content-Type,Authorization" />
        <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE,OPTIONS" />
        <add name="Access-Control-Allow-Credentials" value="true" />
      </customHeaders>
    </httpProtocol>
        <staticContent>
            <remove fileExtension=".mem" />  
            <remove fileExtension=".data" />  
            <remove fileExtension=".unity3d" />  
            <remove fileExtension=".jsbr" />  
            <remove fileExtension=".membr" />  
            <remove fileExtension=".databr" />  
            <remove fileExtension=".unity3dbr" />  
            <remove fileExtension=".jsgz" />  
            <remove fileExtension=".memgz" />  
            <remove fileExtension=".datagz" />  
            <remove fileExtension=".unity3dgz" />  
            <remove fileExtension=".json" />  
            <remove fileExtension=".unityweb" />  
           
            <mimeMap fileExtension=".mem" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".data" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3d" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".jsbr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".membr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".databr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3dbr" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".jsgz" mimeType="application/x-javascript; charset=UTF-8" />  
            <mimeMap fileExtension=".memgz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".datagz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".unity3dgz" mimeType="application/octet-stream" />  
            <mimeMap fileExtension=".json" mimeType="application/json; charset=UTF-8" />  
            <mimeMap fileExtension=".unityweb" mimeType="application/octet-stream" />  
        </staticContent>
  </system.webServer>
</configuration>

这样我们再通过浏览器访问就会发现一切正常。
在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Unity WebGLUnity 引擎的一个功能,它可以将 Unity 游戏发布为网页应用程序。当我们在使用 Unity WebGL 构建网页游戏时,我们是希望游戏可以适应不同类型和尺寸的浏览器。 在 Unity WebGL 中,实现自适应浏览器的关键是使用适当的布局和缩放策略。首先,我们需要确保游戏能够自动适应不同浏览器窗口的尺寸。我们可以使用 CSS 或 JavaScript 代码来检测浏览器窗口的大小并相应地调整 Unity 游戏的大小。 其次,我们还可以使用 CSS 或 JavaScript 来控制 Unity 游戏的缩放。这样可以确保游戏在不同设备上都能够以正确的比例显示,从而避免因屏幕分辨率不同而导致的图像模糊或变形。 另外,Unity WebGL 还支持在游戏加载之前,显示一个适配的预加载画面。这样可以增加用户体验,同时也给游戏加载所需时间提供了一个反馈。 还有一些其他的技巧可以帮助我们实现 Unity WebGL 的自适应浏览器。例如,使用响应式设计来确保游戏界面在不同屏幕尺寸下的可用性和易用性。此外,使用合适的字体大小和按钮大小也可以提供更好的用户体验。 总的来说,Unity WebGL 可以通过使用适当的布局和缩放策略,以及其他一些技巧,实现游戏在不同浏览器中的自适应。这样,无论用户在使用哪种类型的浏览器,游戏都能够以最佳的方式呈现给他们,提供良好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小温同学的账号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值