【问题标题】:Java/C# inside Web Application/ReactWeb 应用程序/React 中的 Java/C#
【发布时间】:2021-06-23 04:08:46
【问题描述】:

我正在为网络开发一款 2D 游戏。为此,我打算使用“画布”并从那里渲染我的游戏。为了获得更好的性能,我想使用 Java 或 C# 等语言。经过研究,我发现这可以通过 WebAssembly 实现。所以,我的问题是:如何创建一个 webassembly 文件(使用 C# 或 java)以及如何将它返回的 html 添加到 React 页面。

【问题讨论】:

    标签: java c# html canvas webassembly


    【解决方案1】:

    Webassembly 在渲染方面不一定比 JS 快,因为 Webassembly 不能直接访问 DOM。相反,您必须创建从 javascript 到 WebAssembly 代码的“绑定”。

    因此,您可以将 Webassembly 连接到 canvas 的方法是使用 Webassembly 将写入的 ArrayBuffer,然后 javascript 会读取数据并将其放入画布中。
    但渲染仍将通过 javascript 线程完成。除非您使用ArrayBuffer 的相同实例来传递数据,否则我认为它不会更快。

    Example of rendering to canvas from WebAssembly

    我知道你可以使用Blazor,这个 C# 框架允许你在浏览器中执行 C# 代码(它将整个 .NET 运行时发送到客户端),并编译为 WebAssembly

    【讨论】:

      猜你喜欢
      • 2015-01-08
      • 1970-01-01
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      • 2010-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多