画外:放大器;嵌入浏览器的比较(用于游戏)放大器、浏览器、游戏、画外

2023-09-08 10:25:28 作者:丿sa灬羽化恋佳

我们一直在寻找增加体面的浏览器支持,我们的C ++应用程序;这个问题是关于GUI的独立浏览器库,因为我们的项目涉及3D渲染和不太适合普通的图形用户界面。

We've been looking at adding decent browser support to our C++ application; this question is about GUI-independent browser libraries since our project involves 3D rendering and doesn't quite fit a normal GUI.

这两个我到目前为止看到的是锫和的 Awesomium 。似乎都以同样的方式从我的快速调查工作,渲染到屏幕外的缓冲区,你BLT到你自己的窗口/游戏/什么。 Awesomium是专有的,收费是一个公平的数额($ 5K),锫是开源和免费。有没有人比这些(和其他)这样的工具?跨平台是一个好处,但不是100%的必需

The two I've seen so far are Berkelium and Awesomium. Both seem to work in a similar way from my quick investigation, rendering to an offscreen-buffer which you blt into your own window/game/anything. Awesomium is proprietary and costs a fair amount ($5k), Berkelium is open-source and free. Has anyone compared these (and other) such tools? Cross-platform is a benefit but not 100% essential.

推荐答案

免责声明:我创建Awesomium。不过,我会练的最客观的我的回应。

Disclaimer: I created Awesomium. Nevertheless, I will practice the utmost objectivity in my response.

Awesomium确实花费了一点钱,但它绝对是这项工作的最好的工具,我会捍卫我的理由有项目符号列表:

Awesomium does cost a bit of money but it is definitely the best tool for the job, I'll defend my reasons with a bulleted list:

简单,证据充分的API ;我们已经尽了最大努力保持API的直观性和可读性越好。这时候,你的东西嵌入庞大而复杂的整个浏览器的框架非常重要。 (相信我,你不想嵌入的WebKit directly--这就像吞了太阳。)

Simple, well-documented API; we've tried our best to keep the API as intuitive and readable as possible. That's really important when you're embedded something as large and complex as an entire browser framework. (Believe me, you don't want to embed WebKit directly-- that's like swallowing the sun.)

窗口的渲染;库是从一开始就设计标准的窗框架之外被使用。我们使它很容易呈现的WebView到纹理:

Windowless rendering; the library was designed from the outset to be used outside of a standard "windowing framework". We make it really easy to render a WebView to a texture:

void update()
{
    if(webView->isDirty())
        webView->render()->copyTo(texture, width * bpp, bpp, false);
}

实心JavaScript集成;如果你使用Awesomium作为HTML界面渲染的3D游戏,你肯定会想利用我们的JavaScript和其中的优势; - > C ++集成。您可以直接从C ++中,反之亦然,集回调调用JavaScript函数,揭露全局属性,等等。我写了一个大导在这里我的博客。

Solid Javascript integration; if you use Awesomium as an HTML GUI renderer for your 3D game, you'll definitely want to take advantage of our Javascript <-> C++ integration. You can call Javascript functions directly from C++ and vice-versa, set callbacks, expose global properties, and more. I wrote up a big guide on my blog here.

很好的支持;我们使用我们从顶级的商业许可获得资金支持库和发展的资金。如果您需要帮助,请访问 http://support.awesomium.com ,我们会很乐意伸出援助之手。

Well-supported; we use the money we get from our top-tier commercial licenses to fund support and development of the library. If you need help, please visit http://support.awesomium.com and we'll be glad to lend a hand.

该库可免费用于非商业用途,非常实惠的独立开发者。如果你想使用Awesomium在你的下一个项目,是担心价格点,请给我发电子邮件,在adam@khrona.com,我会看看我能不能帮你。 : - )

The library is free for non-commercial use and very affordable for indie developers. If you'd like to use Awesomium in your next project and are worried about the price-point, please email me at adam@khrona.com and I'll see if I can't help you out. :-)

 
精彩推荐
图片推荐