Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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
C# 正在寻找使用C在屏幕上绘制Cairo上下文的最快方法#_C#_Opengl_Sdl_Cairo - Fatal编程技术网

C# 正在寻找使用C在屏幕上绘制Cairo上下文的最快方法#

C# 正在寻找使用C在屏幕上绘制Cairo上下文的最快方法#,c#,opengl,sdl,cairo,C#,Opengl,Sdl,Cairo,我正在设计一个C#框架,用它来制作基于向量的游戏。目前,我正在使用和创建一个Cairo上下文,用于绘制SDL曲面,然后将该曲面绘制到屏幕上。源代码是可用的 起初我认为它工作得非常好,以相当快的速度渲染了大量的东西。。。但后来我试图以1080p全屏运行它,它突然慢了下来 我读了很多关于它的书,在某个地方我看到有人说,也许使用OpenGL进行渲染会比使用SDL提高2D绘图的性能。。。是这样吗?值得吗?或者我还缺少其他选择吗 在我看来,在屏幕上绘制一些形状是如此的困难,这简直是疯了,尤其是看到开罗的其

我正在设计一个C#框架,用它来制作基于向量的游戏。目前,我正在使用和创建一个Cairo上下文,用于绘制SDL曲面,然后将该曲面绘制到屏幕上。源代码是可用的

起初我认为它工作得非常好,以相当快的速度渲染了大量的东西。。。但后来我试图以1080p全屏运行它,它突然慢了下来

我读了很多关于它的书,在某个地方我看到有人说,也许使用OpenGL进行渲染会比使用SDL提高2D绘图的性能。。。是这样吗?值得吗?或者我还缺少其他选择吗


在我看来,在屏幕上绘制一些形状是如此的困难,这简直是疯了,尤其是看到开罗的其他地方看起来是多么的棒。

我不知道开罗的具体情况,特别是因为它是它的mono变体,但当开发一个看似简单的引擎来渲染网格集时,使用,与Tao类似的WPF渲染工具包,我注意到,当我渲染样本和小网格时,效果很好,但当我尝试以更高的分辨率渲染更大的区域时,性能很差

我认为这一切都可以归结为这样一个事实,即这些工具包非常适合您的日常渲染和小项目,但当您希望开发游戏或即使在高分辨率下也能表现出色的东西时,OpenGL和DirectX背后的优化和调整是无与伦比的,而且它们的表现几乎总是优于小鱼


就我个人而言,当我转向使用DirectX时,在渲染与Helix 3D完全相同的网格集时,我获得了近乎完美的性能。因此,使用更大的框架是有一定的优点的。这可能是值得的。

我不知道Cairo的具体情况,特别是因为它是它的mono变体,但当不久前使用类似于Tao的WPF渲染工具包开发一个看似简单的引擎来渲染网格集时,我注意到当我渲染样本和小网格时,它工作得很好,但当我试图以更高的分辨率渲染更大的区域时,性能却很差

我认为这一切都可以归结为这样一个事实,即这些工具包非常适合您的日常渲染和小项目,但当您希望开发游戏或即使在高分辨率下也能表现出色的东西时,OpenGL和DirectX背后的优化和调整是无与伦比的,而且它们的表现几乎总是优于小鱼

就我个人而言,当我转向使用DirectX时,在渲染与Helix 3D完全相同的网格集时,我获得了近乎完美的性能。因此,使用更大的框架是有一定的优点的。这可能是值得的