cre*_*low 5 c++ django qt sdl sdl-2
我目前正在开发SDL 2应用程序(C ++),但有一个问题。顾名思义,我正在尝试将SDL用作网络应用程序。我想知道实现此目标的最佳方法是什么。我对此进行了一些研究,采用的方法可能是:
显然,必须有其他方法来执行此操作,但是我最主要的担心是SDL 2需要某种形式的窗口(SDL_Window)和渲染器(SDL_Renderer),我的选择是否可以帮助我克服障碍?还是我必须直接将SDL 2编码到python中,并尝试将其与Django(或其他形式的Web应用程序API)一起使用,以根据需要进行操作?
PS:除了SDL / Opengl(如果我必须这样做)之外,我不想进入任何其他API。我想知道是否可以在Web应用程序上使用SDL。
可以使用Emscripten
我已经成功地将许多 SDL2+OpenGL 项目编译为 JS
首先阅读此页面:http : //kripken.github.io/emscripten-site/docs/porting/multimedia_and_graphics/OpenGL-support.html
默认的 SDL 版本是1.2. 要使用 SDL2,您必须像这样明确地告诉编译器:
-s USE_SDL=2 -s USE_SDL_IMAGE=2 -s SDL2_IMAGE_FORMATS="['png']"
Run Code Online (Sandbox Code Playgroud)
如果您必须使用 OpenGL 3 功能(和/或比 1.0 更新的 GLSL),也请使用此参数(需要 WebGL 2):
-s USE_WEBGL2=1
Run Code Online (Sandbox Code Playgroud)
在代码中,您必须while(!quit){ ... }用emscripten_set_main_loop调用替换主循环。
小智 -5
在 Web 浏览器中运行 C++ 应用程序通常是不可能的。有支持它的插件和浏览器(如Google 的 Native Client),但功能仍然非常有限。它仍然取决于运行它的机器的硬件以及它使用的浏览器。因此,SDL 绝对不能在 Web 应用程序中使用,也不应该以这种方式使用。您可以查看基于 OpenGL ES 的WebGL ,这是一个标准并且大多数浏览器都支持。
| 归档时间: |
|
| 查看次数: |
3053 次 |
| 最近记录: |