- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这里的目的不是渲染,而是 gpgpu;它用于图像模糊:
给定图像,我需要使用固定的给定可分离内核对其进行模糊处理(参见例如 Separable 2D Blur Kernel )。
对于 GPU 处理,一个很好的流行方法是 first filter the lines, then filter the columns; and using the vertex shader and the fragment shader to do so (*)
但是,如果我有一个固定大小的内核,我想我可以使用一个快速计算的接近我想要的级别的mipmap,然后对其进行上采样(as was suggested here) .
因此,问题是:opengl 创建的 mipmap 会比我使用 (*) 的方法创建的 mipmap 更快吗?
换句话说:mipmap 创建是在 GPU 本身上优化的吗?它会永远胜过(速度方面)用户创建的 glsl 代码吗?还是取决于显卡?
编辑:
感谢您的回复(Kahler、Jean-Simon Brochu)。但是,我仍然没有看到任何资源明确说明 gpu 生成的 mipmap 是否比任何用户创建的 mipmap 更快,因为特定的 mipmap-generation-gpu-hardware ...
最佳答案
OpenGL 并不关心函数是如何实现的。
OpenGL是一套规范,其中有glGenerateMipmap
.
任何人都可以编写软件渲染器或开发符合规范的视频卡。如果它通过测试,它就是~OpenGL认证~
这意味着没有强制要求在 CPU 或 GPU 或任何地方执行任何功能,它们只需要产生 OpenGL 预期的结果。
现在是实际方面:
现在,您可以假设 mipmap 生成是由视频卡完成的,因为主要供应商采用了这种方法。
如果您真的想知道,则必须专门检查您正在编程的视频卡。
至于性能,假设您无法击败视频卡。
即使你想出一些在一些高科技 CPU 中执行的高度优化的代码,你也必须将你生成的 mipmap 上传到 GPU,并且单独的这个操作可能需要更多的时间,然后让在您上传全分辨率纹理后,GPU 会完成这项工作。
而且,如果您将 mipmaping 编程为着色器,仍然不太可能击败硬编码(甚至可能是硬连线)内置函数。 (以及单独的代码,不包括它可以更好地安排、分开处理等的事实)
This site explains the glGenerateMipmap history better =))
关于opengl - opengl 中的 mipmap 生成 - 是硬件加速吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017317/
对于 Metal ,如果对主纹理进行 mipmap 处理,是否还需要对多采样纹理进行 mipmap 处理?我阅读了苹果文档,但没有得到任何相关信息。 最佳答案 Mipmapping 适用于您将从中
是否有可能以某种方式为 mipmap 图标制作别名?例如,我们有一个名为 icon_app 的图标,但在我们的库中我们使用了 ic_launcher(应该是这样)。因此,对于可绘制对象,您可以使用 v
我正在制作一个基于 Maximum Mipmap structure 的高度图光线追踪器. 长话短说,我使用“最大过滤器”手动创建了一个带有 mipmap 级别的纹理。在 Debug模式下,程序运行良
我对使用这行代码自动生成的 mipmap 获得的质量不完全满意: glTexParameterf(GL10.GL_TEXTURE_2D, GL11.GL_GENERATE_MIPMAP, GL10.G
我有一个 3D 纹理。每个纹素在 alpha channel 上包含一个透明度值。 我需要以这样一种方式生成我的 mipmap,它始终采用具有最大 alpha 值的纹素值。 换句话说,如果有 4 个纹
原帖: https://computergraphics.stackexchange.com/questions/4793/how-can-i-generate-mipmaps-manually 这是
您现在可能知道,当您使用 IDE 创建 Assets 时,android studio 1.1 在 mipmap-xxx 文件夹而不是 drawable-xxx 文件夹中创建新的图像 Assets 。
我目前正在使用自动 mipmap 生成(C# + OpenTK): GL.GenerateMipmap(GenerateMipmapTarget.Texture2D); 我使用的纹理被平铺成 16px
mipmap 是否仅用于应用程序 luancher 图标,例如,如果我将图像用于按钮,该图像是否也应该转到 mipmap 目录或 drawble 文件夹? 换句话说:mipmap 是否替换了 draw
这个问题在这里已经有了答案: Mipmap drawables for icons (12 个回答) 关闭7年前。 我正在使用 Android Studio 1.1 Preview 1。我注意到,当我
我在我的 Visual Studio 中包含了演示项目。但它在以下陈述中向我展示了错误。我也将图像和过去复制到 mipmap 中。拜托,任何人都可以检查出什么错误并指导我。提前谢谢你。 Bitma
我已经在 Android Studio 上创建了 Android 项目。但是没有放置app图标的mipmap文件夹。 这是否意味着我必须创建 mipmap 文件夹?还是项目设置有问题? 最佳答案 如果
我是 'wpf' 的新手,我遇到了以下问题:在我的项目中,我尝试使用小分辨率 .png 作为模型的纹理。当我在 Blender(我构建立方体的地方)中禁用 mipmapping 时,结果正是我想要的:
我正在尝试更改我的应用程序的图标。我添加了一个新的“Image Asset”,它生成不同的图标大小并将它们放在 mipmaps 文件夹中。 (mipmap-hdpi、mipmap-mdpi、...)。
我已经使用 webgl 做了很多工作,但现在它是第一次使用 dart,我遇到了一个奇怪的错误。我创建一个像这样的默认纹理: GlTexture() { mTexture = gl.crea
同时调用时 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_
同时调用时 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_
mipmap 的唯一真正优势是实时所需的过滤要求较低,因为它已经部分提前完成了吗? 您不能通过线性或各向异性过滤以及更多的处理能力获得相同的结果吗? 最佳答案 不是“一点点”更多的处理能力,而是更多的
我正在向您咨询是否有一个简洁的 numpy 解决方案可以使用双线性过滤来缩小 2D numpy 数组(这是一个图像)的大小? 更具体地说,我的数组的形状为 (width, height, 4)(如 r
我的 mipmapping 工作正常。但出于某种原因,在我应用纹理后,应用程序中的所有其他对象都呈现出纹理的平均颜色。甚至平视显示器。有什么我需要考虑的吗?这是代码: GLuint LoadTextu
我是一名优秀的程序员,十分优秀!