问题标签 [unity-webgl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1748 浏览

c# - 在 UntyWebGl 中保存帧

我正在尝试保存我的 Unity 项目的框架以自动生成预览 Gif。我在我的脚本中调用该方法,如下所示:

如果我在 Unity 中这样做,它工作得很好。但是当我将我的项目构建为 WebGL 时,它不再这样做了。为什么?或者有人知道另一种保存框架的方法吗?

0 投票
1 回答
3943 浏览

unity3d - Unity WebGL 多人网络

我正试图让我去年写的 c# 中的旧 Unity 游戏代码起死回生。它是一款多人游戏,使用 uLink、uLobby、uZone 作为网络部分。

我今天刚读到浏览器将不再支持 WebPlayer 的震惊,我必须移动我的所有代码才能使用 WebGL(直到今天我才听说过 WebGL)。

有没有像 uLink 这样的包我可以用于网络而不是自己编写所有的 WebGL 网络代码(服务器和客户端)?(似乎 uLink 正在消失)。

抱歉,自从我刚开始研究 WebGL 以来,我的问题不清楚,但是我找不到任何我现在可以使用的将 WebGL 与 Unity 结合使用的网络包,这样我就可以保留我所有的 RPC 代码等,或者我不知道是什么其他网络功能现在已经存在(我已经一年多没有编写统一代码了)。

如果我的问题不清楚或太模糊,请告诉我什么不清楚或模糊。

谢谢

0 投票
1 回答
247 浏览

unity3d - 如何使用没有 360 度内容的 Cardboard vr 视图

我一直在寻找一种方法来构建我的统一谷歌网络纸板游戏,我遇到了这个谷歌 vr 视图。但这仅适用于 360 度内容,带有 360 度全景资产吗?

我也尝试为 webgl 构建项目,但它不起作用(我认为它与 cardboard SDK 存在一些兼容性问题)。

还有其他方法吗?我想将我的虚拟现实游戏加载到一个网站上并且能够同时看到它:有纸板和没有纸板。谢谢

在此处输入图像描述

0 投票
2 回答
2077 浏览

c# - Unity3D - 让用户为 webgl 加载图像

奇怪的是,我的代码没有将用户图像从本地硬盘加载到名为“planeLogo”的游戏对象。具有 ImageUploaderCaptureClick() 函数的文件名为 ImageUploader1.jslib,位于 plugins/WebGl 文件夹中。

这是脚本

这就是我处理这些事件的方式。

在此处输入图像描述

我已经尝试了我所知道的一切,并且该项目在 Unity 中继续工作,但当它被编译为 html(webgl) 时却没有。

0 投票
1 回答
1626 浏览

c# - 在 Unity3d 中构建 WebGL 的 Https 客户端

我需要用于 WebGL 构建的 https 客户端。

万维网太可怕了。首先,它不支持keep-alive连接,加上它有https的问题。

UnityWebRequest不支持 keep-alive。

Unity 团队有一个WebSockets插件,但它最后一次更新是在一年前。

对于其他平台,我编写了基于原始套接字 (C# TcpClient) 的自定义解决方案,但WebGL build 不支持UnityEngine.Network命名空间。

有什么建议么?

0 投票
1 回答
505 浏览

unity3d - WebGL textmesh 字符未在浏览器上显示

0 投票
1 回答
520 浏览

javascript - 是否可以使用 Marshalling 将 JavaScript 回调方法设置为 C# 方法?

我正在使用 C# 在 Unity 中进行编码并为 WebGL 进行开发。我需要使用浏览器 JavaScript,因此编写了一个 .jslib,我使用 Marshalling 调用 C# 中的方法。

我是否可以将 JavaScript 回调设置为 C# Action、Func 或 Event Handler,如下所示:

我已经尝试了每一个,但似乎没有正确地做到这一点。我知道 C++ 可以调用 C# 函数,但是 JavaScript 必须以不同的方式进行通信。

尝试:

无论我尝试什么,我都会收到一个 TypeError 说明我传递给 JavaScript 的对象不是函数。我试过了:

  • 使用动作和事件委托
  • 使用 ref、IntPtr 和两者都不使用

任何人都知道这是否可能?就像我说的,我之前在 C++ .dll 中成功调用了 C# 方法,因此认为可以从 .jslib 中调用。

0 投票
1 回答
4686 浏览

html - Unity WebGL - 防止从吃光所有鼠标/键盘输入?(HTML 输入字段)

统一 5.4

构建一个 Unity WebGL 应用程序(不是游戏),在 Unity 方面处理所有 3D 内容,并且所有 UI 都是使用 HTML/CSS/JS 构建的。默认情况下,WebGLInput.captureAllKeyboardInput 设置为 true,这会导致任何需要键盘(文本)输入的输入字段被破坏,因为任何键盘控件都会自动被 Unity 吃掉,而不是进入输入字段。正在做

修复了输入字段的问题,但导致统一忽略所有键盘输入,即使在元素被聚焦之后,但是添加

对其进行了修复,以便 HTML 输入字段上的键盘输入在聚焦时可以工作,Unity WebGL 应用程序中的键盘控件在聚焦时也可以工作。(这是所有文档:https ://docs.unity3d.com/ScriptReference/WebGLInput-captureAllKeyboardInput.html )。所以这一切都很好。

但是,Unity WebGL 应用程序仍然会导致某些使用鼠标(而非键盘)控件的输入字段出现问题。也就是说,我在 input type="range" 字段(HTML5 滑块)和 input type="number 上注意到了它(使用键盘输入数字有效,但鼠标上下点击无效)。

有什么解决方法可以解决这个问题吗?我基本上需要防止 Unity WebGL 画布不会自动获取所有鼠标输入,除非首先单击/聚焦元素(就像键盘控件的工作方式一样)。在 Unity 方面有什么需要改变来解决这个问题吗?还是我需要编写一些自定义 JavaScript 来处理所有输入并确定它是用于 Unity 场景还是用于 HTML UI?

0 投票
1 回答
1684 浏览

unity5 - 在运行时将外部 OGG 文件加载到 Unity WebGL 构建中

我正在尝试在运行时在 WebGL 构建中将一些 OGG 格式的声音加载到我的游戏中。我使用 WWW 类来获取扩展名为“.ogg”的文件,然后调用www.audioClip以获取下载的文件。这适用于其他平台,但在 WebGL 中失败。

Unity 抛出此错误消息:“不支持此平台上的 'ogg' 流式传输”。奇怪,因为我没有尝试流式传输它,并且我尝试显式调用GetAudioClip(false, false, AudioType.OGGVORBIS)并得到相同的结果。

我尝试将我的 OGG 文件转换为 AAC(带有 M4A 和 MP4 扩展名)并加载它www.audioClip(错误,它无法从 URL 确定文件类型)和www.GetAudioClip(false, false, AudioType.MPEG)(没有错误但也没有声音)。我在网上看到的最接近解决方案的方法是改用 MP3,但出于许可原因,我不想这样做。

Unity 中的 WebGL 是否仅限于应用程序中构建的音频资产?

0 投票
1 回答
795 浏览

unity3d - Unity WebGL Google Analytics 失败命中

我目前在使用 GA 和 Unity WebGL 时遇到了一些麻烦。每次我尝试提交和事件时,我都会在 JS 控制台中不断收到错误“Google Analytics hit request failed with error”,但没有消息,但正在记录第一个用户的事件。

当我查看实时提要时,它似乎也只注册了第一个用户。当我将游戏构建到 iOS 时,它似乎按预期工作。

提前致谢。