问题标签 [tearing]

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.

0 投票
1 回答
357 浏览

java - 即使我加倍缓冲,JPanel 也会撕裂?

编辑:这是一个 SSCCE 来证明我的问题。

我有一个 JPanel 修改了 paintComponent 方法。在这种方法中,我根据玩家位置将相关图块从二维数组绘制到屏幕上。我将所有图块绘制到 BufferedImage 上,然后在绘制方法结束时将其应用到屏幕上。理论上这不应该造成撕裂,因为我是双重缓冲?这是适当的代码,图像只是一个带有屏幕尺寸的 BufferedImage:

我认为撕裂可能是由于玩家的位置在绘制方法的持续时间内发生变化导致瓷砖不匹配,玩家走得越快效果越明显。但是,我在一开始就获得了玩家位置并将其存储在两个 long 中,我的印象是 long 是通过值而不是引用传递的,因此在方法运行时玩家位置应该是恒定的。

我很高兴提供更多代码:),并提前致谢。

0 投票
1 回答
353 浏览

c# - XNA weird terrain tearing

Let me post the images first...

Solid shot where tearing occurs enter image description here

And wireframe shot of that place enter image description here

I am mostly using mostly using Riemers tutorial while the render code is..

Main render

Terrain.Render()

I was stuck with this problem for pretty long now (not knowing if it is caused by my coding skills, xna or some g-card configuration...) so i wonder if someone have some ideas what might cause it?

0 投票
0 回答
527 浏览

ios - OpenGL ES iOS 撕裂/闪烁

我环顾四周,没有针对此类问题的修复程序适用于我的特定 OpenGL 应用程序。问题是我正在渲染的模型上出现某种类型的伪影/撕裂/闪烁。该模型由彼此相邻的小方块组成,并且在这些小方块之间显示闪烁,即使它们并排,也可以瞥见背景。问题未在 iOS 模拟器上显示,而仅在设备上显示(我使用 iPhone 5 和 iPad 第 4 代)。我已经尝试了两种方式的 kEAGLDrawablePropertyRetainedBacking 设置,但没有运气。有任何想法吗?

0 投票
1 回答
148 浏览

screen - 如何修复 cocos3d 中的屏幕撕裂?

当我将相机靠近场景中的某些物体时,图像会像下面所示那样撕裂。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

我正在使用 OpenGLES 2.0

是一个显示问题的视频。

这是重现问题的测试项目,它只是带有 Temple.pod 文件的 cocos3d 模板

似乎只有在视野为 85º 或更宽时才会发生这种情况。

0 投票
1 回答
549 浏览

vb.net - 拖动时图片框/面板撕裂 vb.net

我正在尝试制作 VB.net 程序,并且 UI 就像普通桌面一样。我在图片框中有图像作为桌面快捷方式。因此用户可以在表单中拖动它们。顺便说一句,我不熟练才开始做这样的事情。我可以用鼠标事件移动图片框很好但是拖动时图片框中的图片会撕裂。我有一张大背景图片,我想这是问题所在,但我需要帮助摆脱撕裂。继承人代码thx。我也尝试过作为一个小组并得到相同的结果。编辑:关于拖动的图片是png,50x50,透明BG。

结束类

0 投票
0 回答
566 浏览

c++ - GDI 中的屏幕撕裂

我有一个 C/C++ MFC 应用程序,其中从左到右的移动图像显示StretchDIBits在窗口中。屏幕撕裂发生在窗口中。

请理解我不是在谈论闪烁,而是屏幕撕裂,因为闪烁更像是整个屏幕闪烁,而屏幕撕裂会导致图像的某些散射部分在图像向右或向左移动时不同步,因此移动的垂直线暂时看起来断线很短的一段时间。

起初,我认为StretchDIBits是原因,但将其更改为 SetDIBitsToDevice 根本没有帮助。所以我怀疑它是 GDI 并且谷歌搜索支持我的怀疑

我看到这篇文章来解决这个问题,但我认为直接使用 DirectX 会更干净。

所以在这一点上,我正在考虑使用 DirectX 或 OpenGL 来防止这种撕裂,但不确定这种方法是否有效,或者是否有更好的方法。所以我的问题是

  • 使用 OpenGL 或 DirectX 会解决这个问题吗?
  • 有没有比使用 OpenGL 和 DirectX 更好的方法?

任何线索将不胜感激。

为了节省时间,请不要建议不要使用 MFC,因为这是要求之一。

0 投票
1 回答
3613 浏览

ubuntu - 帧缓冲区输出图形撕裂,FBIO_WAITFORVSYNC 和 FBIOPAN_DISPLAY 失败

问题是关于 linux framebuffer,图形正在撕裂。

最近我为 SDI 显卡的输出桌面工作,然后我想到了使用帧缓冲区。没关系,它输出成功,但它有一个大问题,图形撕裂。我想使用 FBIO_WAITFORVSYNC 和 FBIOPAN_DISPLAY 来解决它,但它们都返回-1。ioctl(fd, FBIO_WAITFORVSYNC, 0) errno: 25 (不适合设备的 ioctl) ioctl(fb, FBIOPAN_DISPLAY, &vi) ,errno: 22 (无效参数)

我使用的操作系统是 Ubuntu 12.04,安装 fbset 后,我​​发现两个 ioctl 命令都包含在 fb.h 中。现在的问题是如何让 FBIO_WAITFORVSYNC 和 FBIOPAN_DISPLAY 正常工作。有什么建议吗?

0 投票
1 回答
91 浏览

html - 某些浏览器中的边界半径内部撕裂

希望有人以前见过这个。我只从两个用户那里听说过这个错误,他们都在为他们的工作站使用平板电脑(我可以得到细节,如果重要的话)(我知道......)。当他们查看网站时,如果按钮具有边框半径,他们会看到...

http://www.tiikoni.com/tis/view/?id=69f1996

(我原本想发布实际图像,这样它就不会过期,但我需要更多的声誉 - 如果您在链接过期后访问此页面,基本上,它会显示一个带圆角的绿色按钮和一个对称的白色“撕裂” " 穿过物体,在中心相遇——想想里面有白色 X 的绿色按钮)

他们报告说在 Internet Explorer(完全更新)和 Firefox 中看到了这一点。

关于造成这种情况的任何想法?

0 投票
2 回答
1639 浏览

c++ - 全屏原生分辨率的 OpenGL 撕裂

我有一个带有 win32 api 的 OpenGL 应用程序,没有 glut 等……我遇到了全屏屏幕撕裂的问题。基本上,我已将WS_POPUP显示器的窗口样式和分辨率设置为窗口大小。我在 AMD radeon HD 7770 上运行,我看到可怕的撕裂!当我使用WS_POPUPWINDOWstyle 而不是 时WS_POPUP,撕裂消失了,但是我的场景周围有不需要的边框。我注意到的另一件事是事实,当分辨率不是本机时,撕裂消失了。所以当我my_screen_resolution + 1作为尺寸参数传递时,撕裂就消失了。

我能做些什么来摆脱撕裂,而不必在非原生分辨率上运行?

编辑:(提示:这不是垂直同步)

0 投票
1 回答
894 浏览

video - 真棒窗口管理器有水平撕裂?

所以我遇到了很棒的问题(运行 Debian,但没关系,因为它在我所有的硬件上都这样做)。视频沿中间(vlc 和 mplayer 和图腾)产生涟漪,无论使用什么应用程序都会滚动。从来没有真正关心过,直到我在我的桌面上切换到真棒,这个问题在多个大显示器上更烦人 100 倍。顺便说一句,运行 nvidia,在我的英特尔 4000 图形笔记本电脑上做同样的事情,谢谢!

更新:我的 ~/.xinitrc 末尾的 compton 为遇到此问题的任何人解决了此问题。也很抱歉在错误的网站上提问