double-buffering相关内容

GDI+闪烁

所以我想做一个便宜的Gyazo(截图工具) 问题是光标坐标闪烁,我如何防止这种情况?我已经尝试过WM_ERASEBKGND,但没有任何帮助。 我的代码还有没有其他错误?有什么不好的做法/技巧吗? #include #include #include #pragma comment (lib, "Gdiplus.li ..
发布时间:2022-08-17 15:02:56 C/C++开发

什么可能导致双缓冲杀死我的应用程序?

我有一些使用 GDI+ 在屏幕上绘制的自定义(winforms)组件. 为了防止重绘时闪烁,我决定启用双缓冲,所以我在构造函数中添加了一行: public ColourWheel(){初始化组件();this.DoubleBuffered = true;} 在这个组件(ColourWheel)上效果很好.当我将同一行添加到其他两个(结构相似)组件中的任何一个的构造函数中时,我得到了一些奇 ..
发布时间:2022-01-21 10:45:34 C#/.NET

如何避免此 NullPointerException

我正在开发一款小型街机视频游戏,我希望使用双缓冲来改进动画效果.我有一个类应该绘制空白图像,另一个类应该绘制一条简单的线条.但是,我在应该绘制线条的线上不断收到 NullPointerException class Render extends JPanel {公共 int dbWidth = 500, dbHeight = 400;公共图像 dbImage = null;公共图形数据库;公共无 ..

HTML5/Canvas 是否支持双缓冲?

我想做的是在缓冲区上绘制我的图形,然后能够将其按原样复制到画布上,这样我就可以制作动画并避免闪烁.但是我找不到这个选项.有人知道我该怎么做吗? 解决方案 以下有用链接除了显示使用双缓冲的示例和优势之外,还显示了使用 html5 canvas 元素的其他几个性能提示.它包括指向 jsPerf 测试的链接,这些测试将跨浏览器的测试结果聚合到 Browserscope 数据库中.这可确保验证性能 ..
发布时间:2021-12-21 08:06:26 前端开发

JavaFX 画布双缓冲

我正在使用 JavaFX 在 Java 中复制经典游戏 Pong.我使用 java.util.Timer、java.util.TimerTask 作为游戏循环和 JavaFX 的 Canvas 进行渲染.有没有办法向画布添加双缓冲,使动画不闪烁?或者我应该以不同的方式处理这个问题?波纹管是代码.我删除了其中一些我认为不相关的部分,因为代码大约有 200 行长. Canvas canvas = n ..
发布时间:2021-11-26 13:54:28 Java开发

JavaFX 画布双缓冲

我正在使用 JavaFX 在 Java 中复制经典游戏 Pong.我使用 java.util.Timer、java.util.TimerTask 作为游戏循环和 JavaFX 的 Canvas 进行渲染.有没有办法向画布添加双缓冲,使动画不闪烁?或者我应该以不同的方式处理这个问题?波纹管是代码.我删除了其中一些我认为不相关的部分,因为代码大约有 200 行长. Canvas canvas = n ..
发布时间:2021-11-24 22:41:10 Java开发

使用双缓冲 Java Applet 停止小程序闪烁

很抱歉一直问关于我的程序的问题,但我想我快到了,我正在自学 Java,所以请耐心等待.我正在创建一个小程序,当狗对象靠近绵羊时,它会以随机方向在屏幕上移动绵羊对象.让绵羊向随机方向移动需要一些工作,在你们这里​​的帮助下,它现在可以工作(有点)但是我现在要做的是阻止它在我将对象拖过屏幕时闪烁.我读过双缓冲,我可以让它适用于在主类的paint方法中绘制的项目,但不能让它为我的羊和狗对象工作,这些对象 ..
发布时间:2021-11-16 22:40:00 Java开发

如何在打开的菜单下绘制图像

我正在为JPanel中的BufferedImage实现自己的双缓冲,这样我就可以在BufferedImage中显示鼠标位置,而无需在mousemovement上重新绘制每个对象.当父JFrame中的JMenu打开时,BufferedImage会在JMenu顶部重新绘制. 此类并不完整,仅具有必要的方法, public class Foo extends JPanel imple ..
发布时间:2020-06-12 19:18:31 Java开发

启用桌面合成时是否需要双缓冲?

启用桌面合成后是否仍需要双缓冲? 在Microsoft的应用程序兼容性指南: 图形设备接口(GDI) 在Windows Vista和Windows Server 2008之前,窗口句柄(HWND) 被直接绘制到屏幕, 具有一定的优势,但是 限制了Windows的显示方式以及 管理顶级窗口的方式。在Windows Vista和Windows Server 2008中,所 ..
发布时间:2020-06-04 19:09:59 其他开发

JavaFX Canvas Double Buffering

我正在使用JavaFX在Java中复制经典游戏Pong。我使用java.util.Timer,java.util.TimerTask进行游戏循环,使用JavaFX的Canvas进行渲染。有没有办法为Canvas添加双缓冲,以便动画不会闪烁?或者我应该采用不同的方法吗?贝娄是代码。我删除了它的一些部分,我认为这些部分无关紧要,因为代码长约200行。 Canvas canvas = new画布 ..
发布时间:2019-01-18 10:40:16 Java开发

Java swing双缓冲

我刚开始使用双缓冲,一切正常,直到我想在屏幕上添加一个JScrollPane,以便我以后可以做一些相机移动。一切都很好(我的精灵)除了JScrollPane的ScrollBars之外。我希望它们能够显示出来! 然而,如果我调整窗口大小,滚动条会闪烁,所以我知道它们在那里!如果我足够快,我甚至可以使用它们。他们怎么没有出现在渲染? :( 以下是问题的SSCCE: public c ..
发布时间:2019-01-07 16:37:18 Java开发

双缓冲JFrame

我正在阅读很多关于Double Buffering的内容,因为我正在开发2D游戏。我遇到了许多不同的实现策略,但我不确定Double Buffering如何适合我创建游戏窗口的方式。例如,我遇到的一篇文章(http://content.gpwiki.org/index.php/Java:Tutorials:Double_Buffering)建议使用单独的绘图方法;但是,我怀疑如果您正在绘制形状,而 ..
发布时间:2018-12-22 19:48:50 Java开发

如何避免这种NullPointerException

我正在开发一款小型街机视频游戏,我正在寻找双重缓冲来改善动画效果。我有一个类应该绘制空白图像,另一个类应该绘制一个简单的线。但是,我一直在应该绘制线的行上得到NullPointerException class Render extends JPanel { public int dbWidth = 500,dbHeight = 400; public Image dbImage = ..

HTML canvas双缓冲帧率问题

我有一个全屏幕画布上绘制了3张图片。当我调整窗口大小时,这些图像改变位置;但是,它似乎是非常毛刺,在Firefox中更是如此。 我一直在读,双缓冲应该解决这个问题,但我想知道如果我将双缓冲,当下一个位置未知。也就是说,我不能确定在未来应该缓冲什么,那么这是怎么可能的? 这里是一个似乎可行的源,但我不充分理解Fedor正在试图解释的概念。 HTML5 / Canvas支持双重缓冲? ..
发布时间:2016-11-13 04:08:32 前端开发

HTML5 / Canvas支持双缓冲吗?

我想要做的是在缓冲区上绘制我的图形,然后可以将其复制到画布上,这样我就可以做动画,避免闪烁。但我找不到这个选项。 解决方案 一个非常简单的方法是在同一个屏幕位置有两个canvas元素并设置您需要显示的缓冲区的可见性。 一些代码: CSS: canvas {border:2px solid#000; position:absolute; top:0; left:0; ..
发布时间:2016-11-12 23:03:32 前端开发

WS_EX_COMPOSITED - 高CPU

我在我的应用程序中使用WS_EX_COMPOSITED样式,但它运行CPU到100%,有办法停止我的应用程序绘图一段时间,并恢复只有当我需要? 有些人建议使用睡眠,但是在WndProc什么时候睡觉? 提前感谢。 解决方案 不要使用 Sleep 。这是几乎没有问题的解决方案。 真的, WS_EX_COMPOSITED 可以占用CPU,经验。 Vista和更高的性能影响要小得多。 ..
发布时间:2016-10-30 15:48:26 C/C++开发

WinAPI双缓冲

默认的winAPI应用程序没有双缓冲。相反,它做一个非常非常好的工作,确保只有需要绘制的东西被绘制,并给它一个无缝的外观。但是,当调整窗口大小时,整个事件需要重绘,这会导致控件之间,选项卡上的背景,以及有时候选项卡的白色闪烁。 所以我的问题是,在我的应用程序中支持双缓存的最简单的方法是什么? 解决方案 你可以做一个非常直接的在位替换在您现有的代码。 请务必使用一个可以转换为 ..
发布时间:2016-10-24 16:39:31 C/C++开发