gpt4 book ai didi

c++ - Opengl 中的纹理采样

转载 作者:行者123 更新时间:2023-11-30 02:13:29 25 4
gpt4 key购买 nike

我需要从纹理中获取特定坐标处的颜色。我有两种方法可以做到这一点,通过获取和查看原始 png 数据,或者通过对我生成的 opengl 纹理进行采样。是否可以对 opengl 纹理进行采样以获得给定 UV 或 XY 坐标处的颜色(RGBA)?如果是,怎么办?

最佳答案

在我的脑海中,你的选择是

  1. 使用 glGetTexImage() 获取整个纹理并检查您感兴趣的纹素。
  2. 绘制您感兴趣的纹素(例如,通过渲染 GL_POINTS 原语),然后使用 glReadPixels 从帧缓冲区中获取您渲染它的像素。
  3. 将纹理图像的拷贝放在手边,不要使用 OpenGL。

选项 1 和 2 的效率极低(尽管您可以通过使用像素缓冲区对象并异步执行复制来稍微加快 2)。所以我最喜欢的 FAR 是选项 3。

编辑:如果您有 GL_APPLE_client_storage 扩展(即,您使用的是 Mac 或 iPhone),那么选项 4 远远胜出。

关于c++ - Opengl 中的纹理采样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/181731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com