Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Graphics 如何显示游戏引擎的输出?_Graphics_Directx_Sdl_D - Fatal编程技术网

Graphics 如何显示游戏引擎的输出?

Graphics 如何显示游戏引擎的输出?,graphics,directx,sdl,d,Graphics,Directx,Sdl,D,我为复古风格的2D游戏引擎设计了大部分逻辑,但我不知道如何显示其输出 基本上,它生成一个低分辨率位图,其逻辑与大多数系统类似(使用精灵、调色板等)。因为我还没有学习DirectX或类似的工具,所以我没有hdea,我应该如何显示它的输出并定期更新它(绑定到VSync?)。我正在用D,但是如果你知道C或C++,那也很好。 编辑:好的,我正在重写它以与SDL一起工作。我应该如何制作输出格式?使用数据创建数组?只需搜索SDL、SFML或Allegro之类的库, 我从未尝试过D,但我曾经听说有人将它与SD

我为复古风格的2D游戏引擎设计了大部分逻辑,但我不知道如何显示其输出

基本上,它生成一个低分辨率位图,其逻辑与大多数系统类似(使用精灵、调色板等)。因为我还没有学习DirectX或类似的工具,所以我没有hdea,我应该如何显示它的输出并定期更新它(绑定到VSync?)。我正在用D,但是如果你知道C或C++,那也很好。
编辑:好的,我正在重写它以与SDL一起工作。我应该如何制作输出格式?使用数据创建数组?

只需搜索SDL、SFML或Allegro之类的库, 我从未尝试过D,但我曾经听说有人将它与SDL一起使用


编辑:检查D中的开源游戏只需搜索SDL、SFML或Allegro之类的库, 我从未尝试过D,但我曾经听说有人将它与SDL一起使用


编辑:检查D中的开源游戏查看SDL2。它是跨平台游戏的事实标准(目前主要由Valve开发)。如果以后要使用OpenGL或D3D,它也可以用作基础。请注意,OpenGL在D社区中更受欢迎和支持

要将位图实际放到屏幕上,只需使用SDL或OpenGL/D3D将其复制到屏幕上,将其复制到纹理中,并在两个三角形上显示该纹理。但我认为在你的情况下,简单的SDL应该足够了

(不过,您可能需要缩放位图以匹配窗口/屏幕大小)

D有一个()项目,其中包括绑定到、各种SDL扩展(SDL-TTF、SDL混合器、SDL图像等,包括在SDL绑定中)、字体、3D模型格式等。绑定的设计与原始C/C++库完全相同,这可能不如纯D风格的包装器好,但这意味着这些库的C/C++教程仍然可以使用

我还做了一点关于用SDL/Derelict/GFM制作游戏的东西(GFM是一个更具D风格的库),但是由于GFM现在是一个正在进行的工作,所以教程可能已经有点过时了。另一方面,被遗弃者已经稳定并维持了10多年

  • SDL2教程(C++,但由于Delelt的设计而使用D):和
编辑:添加更多链接
EDIT2:关于实际显示输出的注意事项查看SDL2。它是跨平台游戏的事实标准(目前主要由Valve开发)。如果以后要使用OpenGL或D3D,它也可以用作基础。请注意,OpenGL在D社区中更受欢迎和支持

要将位图实际放到屏幕上,只需使用SDL或OpenGL/D3D将其复制到屏幕上,将其复制到纹理中,并在两个三角形上显示该纹理。但我认为在你的情况下,简单的SDL应该足够了

(不过,您可能需要缩放位图以匹配窗口/屏幕大小)

D有一个()项目,其中包括绑定到、各种SDL扩展(SDL-TTF、SDL混合器、SDL图像等,包括在SDL绑定中)、字体、3D模型格式等。绑定的设计与原始C/C++库完全相同,这可能不如纯D风格的包装器好,但这意味着这些库的C/C++教程仍然可以使用

我还做了一点关于用SDL/Derelict/GFM制作游戏的东西(GFM是一个更具D风格的库),但是由于GFM现在是一个正在进行的工作,所以教程可能已经有点过时了。另一方面,被遗弃者已经稳定并维持了10多年

  • SDL2教程(C++,但由于Delelt的设计而使用D):和
编辑:添加更多链接
EDIT2:关于实际显示输出的注意事项

生成的位图是否捕获整个屏幕?您可以使用一个显示库,在常规计时器上显示它。我的simpledisplay.d具有实现此功能的功能,但如何实现可能并不明显。我会研究SFML、Allegro或SDL来帮助您开始显示图形。生成的位图是否捕获整个屏幕?您可以使用一个显示库,在常规计时器上显示它。我的simpledisplay.d有这样的功能,但如何实现可能并不明显。我会研究SFML、Allegro或SDL来帮助您开始显示图形。这是非常非常古老的。从D1时代就开始了,真的很老了。从D1时代就开始了。