【问题标题】:Server side javascript with WebGL?带有WebGL的服务器端javascript?
【发布时间】:2013-10-07 20:26:41
【问题描述】:

我正在考虑学习 WebGL,首先想到的是 JavaScript 是客户端;使用什么方法(如果有的话)让服务器端 JavaScript 专门与 WebGL 相关?

【问题讨论】:

  • 您打算如何在服务器端使用 WebGL(图形库)?
  • 如果您的意思是像在 webGL 中完成的多人游戏的服务器端,那么 Node.js 可能就是您需要的东西。
  • Learning WebGL 是您应该开始的地方。而且 WebGL 仅用于显示内容,一开始在服务器端并没有多大用处。

标签: javascript webgl server-side


【解决方案1】:

我也是 WebGL 的新手,但我仍然觉得这是一个非常高级的问题。我认为这是一个高级问题,因为存在的答案范围可以满足您的要求,并且当前存在与专有 WebGL 相关的问题。

如果您对 WebGL 进行过任何研究,您会立即看到对服务器端代码的需求,因为 WEbGL API 代码在浏览器中执行,因此任何知情人士都可以免费使用。对于习惯于发布已编译代码的游戏开发人员来说,这不是典型的情况。

通过使用服务器端控件,开发人员可以隐藏大量的 WebGL 转换、着色器和矩阵,并且仍然在客户端代码中保持一定程度的信息隐藏。但是,如果没有有效的互联网连接,游戏将永远无法运行。

由于 WebGL 仍然相对较新,而 IE 不支持它,预计情况会有所改变。 M$ 可能决定他们想要构建自己的 Web API,例如最终成为 ASP.NET 库的 WebGL。当前为您所面临的问题构建解决方案所需的所有复杂性都浓缩为一个 3 按钮向导。

话虽如此,我认为您的问题的答案在于某些未来技术的命运。对于更大的目标,很可能会有大量的来回沟通;像 HTTP 这样的协议可能不会削减它。 WebSockets 或其他类似技术可能值得研究。如果您尝试将 Canvas 用于较小的事情,那么了解构建动态 JavaScript 可能就足够了。

这些答案的问题在于,OpenGL 本身就是一个 API,并且具有特定的操作顺序,并且不会更改。这意味着这种构建 WebGL 应用程序的方法非常有限。由于更改 GL 对象可能需要整个 Canvas 重新启动、页面刷新或新页面请求。这可能会导致效果不理想。现在我会说目标很低,但可以肯定的是,WebGL 会改变我们 Web 开发人员所知道的 www。

【讨论】:

  • WebGL 在 IE11 (Windows 8.1) 中,顺便说一句。
【解决方案2】:

我不确定你在找什么,可能不是这个... :)

但是……

如果您想要为不支持 WebGL 的浏览器提供服务器端回退,例如生成固定帧作为某些 3D 场景的 png 图像,那么您可以用 C 或 C++ 编写您的 3D veiwer,在针对您的目标时为 OpenGL ES 构建它服务器端回退,并使用 Emscripten 定位支持 WebGL 的浏览器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-14
    • 2012-08-05
    • 2019-03-28
    • 1970-01-01
    • 2016-05-17
    • 2018-05-17
    • 2019-11-25
    相关资源
    最近更新 更多