问题标签 [double-buffering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
winapi - How do I implement double buffering in the winapi?
I can't stop the flickering. I got the advice to add dubbel-buffering. How do I do that?
java - 双缓冲方法之间的区别
我正在用 Java 制作我的第一个小程序游戏,阅读了一些教程并找到了不同的双缓冲解决方案。我想知道它们之间有什么区别,任何利弊等。在此先感谢!
第一:
第二个:
assembly - 如何在程序集的图形模式下为我的精灵实现“双缓冲区”?
我已经在 Google 上搜索了几个小时,以了解如何在连续绘制、擦除和重绘我将用于我的游戏的精灵时防止闪烁。我看到的许多网站都告诉我使用双缓冲区,甚至没有告诉我如何使用。-_- 有人可以教我如何在 masm32 汇编中实现双缓冲区吗?您的回答将不胜感激!
编辑:顺便说一句,我正在使用 int 10h,ah = 13h
android - Using personal SurfaceView on LinearLayout
I'm currently developing an Android App, using a personal SurfaceView
and double buffering. However I'm facing a little problem with my code.
In one hand I have an xml view, based on LinearLayout
hierarchy. When I instantiate my activity, I set my contentView
on this xml. The problem is then that my double buffering don't works anymore. Thread is running but nothing is displayed.
In the other hand, I set my contentView
with a new personal SurfaveView
element and display works fine. But of course, I cannot access anymore to the other elements of my LinearLayout
.
Actually, I would like to set my contentView
on my xml view AND keep my display working.
I hope I was clear enough, thank you for your answers!
Here is my activity:
My surface view:
And my xml view:
EDIT:
After further researches and analyses, it appears clearly that:
setContentView(R.layout.main_controller_activity)
: in this case I get all the elements from my activity, but theMCustomDrawableView
display nothing.setContentView(new MCustomDrawableView(getApplicationContext()))
: on that case,MCustomDrawableView
is working well (it displays what I want), but I don't have the othersView
from mymain_controller_activity
In both cases:
- my thread is running and works well.
- my drawing function is called as well, with the
holder.lockCanvas()
andholder.unlockCanvasAndPost(bufferCanvas)
methods.
c++ - 为什么我在控制台中进行双缓冲时会出现随机符号?
我正在尝试在控制台中使用双缓冲。我已经编写了这段代码,它可以编译,但是在创建的控制台中,最下面的几行填充了随机字符。更改CHAR_INFO cur[Width*Height];
为
CHAR_INFO cur[Width*Height+200];
有帮助,但我不明白为什么对 Width*Height 的记忆还不够。
我认为问题是由于没有为它保留一些与 chiBuffer 对应的内存,但我不明白为什么。那么,问题是什么?
python - HWSURFACE 和 DOUBLEBUF 是做什么的?
我在网上看到了HWSURFACE|DOUBLEBUF|RESIZABLE
调整窗口大小的方法。
HWSURFACE
它有效,但我不确定DOUBLEBUF
实际做什么。
我知道它代表硬件表面和双缓冲区,但它们实际上有什么帮助我不知道。
c++ - 使用 C++11 使用 Futures 和 Promises 实现双缓冲
我开始学习多线程,并遇到了在共享资源上同步线程的未来和承诺。因此,我想到了使用 Futures 和 Promises(单个生产者和单个消费者)来实现一个著名的双缓冲问题。我认为的基本方法是:
生产者线程:
消费者线程:
这是代码:
当我执行这段代码时,我遇到了他的巨大问题,我完全不知道
我已经搜索过这个错误,建议在链接和编译时链接 -lpthread 开关。但无法解决问题。
请帮助我,我哪里错了..
java - Java8:双缓冲滞后
我们注意到在 Java 版本 8 u40 之后完成双缓冲所需的时间与之前的版本相比显着增加。它变得如此缓慢(达到一个数量级),以至于我们在 Java 8 中对任何高于 u40 的东西都将其关闭。是的,存在闪烁(当然不理想),但用户体验的步伐不会随着有点闪烁(尽管头痛的机会很可能增加了)。
在目标机器安装了受影响的 java 版本之后,这种明显的延迟就突然出现了。没有代码更改。
这与问题有关:
有没有其他人注意到这个问题?
opengl-es - 在OpenGL中查询屏幕缓冲区的数量
我正在开发一个屏幕图像通常是静态的 OpenGL 应用程序。我可以想到 3 种方法来处理这种情况:
- 无论如何,只需一遍又一遍地渲染整个屏幕
- 要求OpenGL仅在有变化时调用渲染循环
- 仅在图像更改时重绘图像,否则立即退出渲染循环
显然,选项 1 会极大地浪费处理能力(即移动设备上的电池充电),而选项 2 将是最佳解决方案。
选项 2 和选项 3 之间的功耗差异可能非常小(如果我错了,请纠正我),因为对渲染循环的不必要调用和任何相关的设置开销应该很小。事实证明,对于我的多线程渲染管道,选项 3 比选项 2 更容易实现。所以,如果我能让它工作,我想先试一试。
当我尝试通过渲染静态图像一次时,屏幕开始在该图像和黑色之间疯狂地闪烁。我的猜测是这是由于双重(或三重?)缓冲:我的图像只被绘制到一个缓冲区中,但是在每次调用渲染循环时,缓冲区都会翻转,因此图像最终会出现在仅当该缓冲区恰好是活动缓冲区时才筛选。
简单的解决方案:在每个缓冲区中绘制一次静态图像,然后才立即开始退出渲染循环。
为此,我需要知道缓冲区的数量,即我需要绘制图像的次数。有没有办法查询这个号码?或者,如果我的渲染循环变成 NO-OP,我可以以某种方式阻止缓冲区切换吗?
我正在构建此代码的 OpenGL ES 1.0 和 OpenGL ES 2.0 版本,以获得最大的设备支持。
java - 使用 JWindow 进行双缓冲
我正在尝试对透明进行双重缓冲,JWindow
但似乎使用的技术无效(不同的循环值相互绘制)。