问题标签 [msaa]
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.
directx-11 - 启用 msaa x4 时如何对 SRV 进行采样?DirectX11
我正在从 Introduction_to_3D_Game_Programming_with_Directx_11 学习 dx11。没有 msaa 一切正常。当我启用它时,我的 .fx 和 C++ 代码将无法正常工作。是否有人也经历过这种情况以及如何处理这种情况?
代码前:
因为我无法将使用 msaa 创建的纹理绑定到纹理 2D,所以我每次都打开 msaa。
代码后:
但是 texColor 不是我想要的正确像素。如何使用 msaa 对 SRV 进行采样?如何将没有 msaa 的 UAV 转换为带 msaa 的 SRV?
以及如何使用相应的 hlsl 代码在 C++ 游戏代码中启用和禁用 msaa?我必须为彼此保留不同的 hlsl 吗?
c# - 无法在 MonoGame 中启用 MSAA
我想在运行时启用/禁用 MSAA,为了做到这一点,我有这个功能:
在我称之为之前,一切都很正常:场景中的对象是用像素化边缘渲染的。一旦我调用了传递函数true
,模型就会消失,剩下的就是我清除的 CornflowerBlue 背景GraphicsDevice
。
但是在我调用ChangeMsaaSetting(false)
对象之后再次开始渲染。
MultiSampleCount
我做了一些实验,如果设置为大于 1 的整数,似乎对象会消失。奇异样本是无用的,所以我需要在那里有一个更大的值。难道我做错了什么?
opengl-es - 将非多重采样的 FBO 复制到多重采样的 FBO
我一直在尝试在我们使用 GLES 3 的应用程序中实现渲染到纹理的方法,并且我已经让它工作了,但我对帧速率下降有点失望。
到目前为止,我们一直在直接渲染到主 FBO,它是使用 EGL_SAMPLES=8 创建的多重采样 FBO。
我想要的基本上是能够在我仍在绘制的同时获取已经绘制的像素。所以我认为应该使用渲染到纹理的方法。然后我会随时阅读屏幕外 FBO 纹理的一部分,当我完成对它的渲染时,我会将整个内容传送到主 FBO。
深入研究这一点,我发现我必须实现一个具有多重采样 FBO 和非多重采样纹理 FBO 的系统,其中我必须解决多重采样的 FBO。然后只需将已解析到主 FBO 即可。
这一切都有效,但问题是通过使用上述系统和非多重采样主 FBO (EGL_SAMPLES=0),与仅使用带有 EGL_SAMPLES= 的主 FBO 时获得的帧速率相比,我得到了相当大的帧速率下降8.
深入研究这一点,我发现人们在线报告以及此处的帖子https://community.arm.com/thread/6925说最快的多重采样方法是使用 EGL_SAMPLES。事实上,这也是我们的目标板 jetson tk1 上的样子。
这最终将我引向了这个问题,并为冗长的介绍道歉:
有什么方法可以设计它以使用非多重采样的屏幕外 fbo 进行最终被传送到使用 EGL_SAMPLES 的主多重采样 FBO 的所有渲染?
android - 虚幻 4.14 中的 MSAA 是否损坏?
我正在尝试在 Galaxy S6 上使用 GearVR 中带有 MSAA 的新前向渲染。但是绝对没有抗锯齿。完全没有。
在网上和编辑器中搜索了很多时间后,我发现了以下变量,这些变量可能与打开 MSAA 有关:
1. 窗口 > 开发者工具 > 设备配置文件 > Android:
- r.MSAACount
- r.MSAACompositingSampleCount
- r.DefaultFeature.Antialiasing
- r.MobileOnChipMSAA
- r.MobileMSAA
- r.MobileContentScaleFactor
如果我从 UEd 的设备配置文件编辑器中更改它们,上述所有内容似乎都没有什么不同。
2. 编辑>项目设置>引擎>渲染>默认设置>抗锯齿方法: . 将其设置为 MSAA 没有任何作用。
3. 我还尝试从 DefaultEngine.ini 中设置所有以前的变量,但什么也没有。
一定有什么我忽略了。如果有人有任何想法,我将不胜感激。
browser - MS Coded UI Test 如何与浏览器通信?通过 MSAA?
简单的问题:MS Coded Test UI 如何与浏览器通信?
- 我猜测试通过 MSAA 层与浏览器通信,该层可以访问网页的控件。真的?
- 但它是如何实现的,浏览器究竟是如何做到“点击元素”的呢?(我只有使用 selenium 和 webdriver 的经验,它们单击到图形层。)
- 跨浏览器的情况如何(仅 IE 和 Firefox?[来源 2])
- 哪些测试工具还集成了 MSAA?我知道 Flash 页面的 TestComplete ( https://support.smartbear.com/testcomplete/docs/app-testing/web/flash-flex/approaches/choosing.html ... HP UFT?)
来源(https://www.google.cz/search?q=software+testing+with+visual+studio+2010+levinson+pdf& *,第 136 页):Visuol Studio 中的自动化是通过三种技术实现的:MSAA、UIA 和即 DOM。MSAA 较旧,但仍用于 Web 自动化。
关于 Web 测试和 MSAA 也讨论了这个来源(http://weblab.isti.cnr.it/w3c/talks/2008/wsb08inclusion/k1-gibson.pdf)
我简直无法想象它是如何工作的(即使我看到了代码)。请尽可能简单地回答。
opengl - 在 CPU 中对单个 MSAA 样本进行后处理
我对我的 OpenGL 围绕我的网格的边缘轮廓进行亚像素采样感兴趣,以用于计算机视觉任务。我正在考虑使用 MSAA 来有效地做到这一点(但该应用程序不适用于抗锯齿)。我发现多重采样的问题是,为了从 GPU 读取样本,我只能将帧缓冲区 blit 到非多重采样的帧缓冲区中,因此我无法恢复单个样本信息。我的问题是:
- 有没有办法实现存储每个样本(GL_SAMPLE_SHADING)计算结果的片段着色器,以便我可以将这些样本读回CPU?我曾想过使用 glSampleID 将输出索引到不同的输出缓冲区,但不知道这是否可能。也许像用于 OIT 的链表结构这样的方法(即http://on-demand.gputechconf.com/gtc/2014/presentations/S4385-order-independent-transparency-opengl.pdf)?但是,它们在 GPU 上执行所有计算,所以我不确定是否可以以任何方式从 CPU 读取链表数据。
也许 MSAA 是错误的方法,还有其他方法可以这样做。我想我最后的手段是对渲染 x 次进行超级采样,从而恢复单个样本,但这似乎是一个非常低效的解决方案。
c# - AccessibleObjectFromPoint 正在返回客户端对象而不是复选框
我正在使用 Visual Studio 2017。我在解决方案中添加了两个项目。一个项目是在 C# 中使用 WPF。另一个是在带有 ATL 的 VC++ 中。在 C# 中,我调用了 VC++ 项目中的一个函数,该函数设置了低级鼠标钩子。低级鼠标 proc 中的部分代码如下:
当我通过单击 MS Word 2013 中查看选项卡下的复选框进行测试时,我将获得 WM_LBUTTONDOWN 和 WM_LBUTTONUP 消息的客户端角色。但我应该将角色作为复选框。我检查了 Windows 10 SDK 附带的 Inspect.exe。Inspect.exe 将角色正确显示为复选框。Inspect.exe 有两个选项 - 一个查看 UI 自动化属性,另一个查看 MSAA 属性。我正在查看 MSAA 属性。如何获得正确的角色?deos Inspect.exe 使用什么方法?
c++ - glReadPixels() 不返回抗锯齿图片
当我将场景渲染到屏幕上时,场景使用_MultiSampling Anti-Aliasing 8x;
它没关系。
但是我想通过 读取像素缓冲区glReadPixels()
,我有一个 Aliased-Image 与 Aliased 线。它不使用 8x MSAA。
代码:
如何使用 MSAA 转换(过滤器)访问像素缓冲区?
glReadPixels
没有特殊参数。
旁注:我想使用 Opengl 1
重要提示:我使用 Qt 5.9 的 QOpenGLWidget 类
c++ - OpenGL故障;抗锯齿 MSAA 8x 后白线中的黑色像素
当我使用 Anti-Aliasing MSAA 8x 时,我的 Qt/OpenGL 应用程序出现故障。这是有故障的屏幕截图:白线中的黑色像素。它看起来质地不好,但我不知道如何修复它
这是屏幕截图:
这是代码:
背景图像.h:
背景图像.cpp:
渲染.cpp:
opengl - DirectX 9 与 OpenGL 中多重采样的不同结果
首先,一些背景:
我为游戏编写的 3D 引擎允许我在 DirectX 9 和 OpenGL 之间切换,这要归功于中间 API 层。
两者都允许用户启用多重采样(通过 GL_ARB_multisample 用于 OpenGL,D3DMULTISAMPLE_x_SAMPLES 用于 DirectX)。为游戏窗口缓冲区启用了多重采样。
我的角色模型使用带有纹理图集的大纹理,因此我在此处禁用了 mipmapping 以避免纹理渗色。
我遇到以下结果:
我应该在禁用 DirectX 或 OpenGL 的多重采样时得到相同的结果。
正如我应该的那样,在为两者启用多重采样时,我正确地对多边形进行了边缘平滑。
然而,在 OpenGL 中,多重采样似乎也具有类似于纹理过滤的效果,可能是在纹理中的不同点对每个像素进行多重采样,因为结果与 mipmap 可以达到的效果相当,没有纹理渗出 - 显然, 伟大的。然而,另一方面,DirectX 似乎没有提供这种好处,因为纹理映射的结果没有抗锯齿,并且与禁用多重采样时相同。
我非常想知道是否有什么我可以做的,以便在 DirectX 中获得与在 OpenGL 中相同的结果。也许我不知道好的关键字,但我无法找到与多重采样的这个特定方面相关的文档。