问题标签 [textures]
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.
xna - 将缓冲区渲染到 XNA 中的 texture2D 对象
在 XNA 中,有没有办法在绘制到纹理对象之后再渲染到屏幕之前渲染 spriteBatch 的内容?
c++ - directx10 中的精灵和纹理过滤
使用精灵时是否可以设置不同的纹理过滤?
opengl - OpenGL/OpenGL ES 中的帧缓冲区、纹理和 glColor 行为
如果这个问题看起来很困惑,我提前道歉。我看到的行为对我来说毫无意义。
我有一个帧缓冲区渲染到纹理。我为这个纹理渲染了不同不透明度的红色、绿色、蓝色的实心矩形。然后我将纹理渲染到屏幕(帧缓冲区 0)。贴在纹理上的帧缓冲区是持久的,在每个渲染循环中,我都会在纹理上绘制更多矩形——最终填满屏幕。
我发现如果glColor()
在将纹理渲染到屏幕之前没有设置为白色 100% 不透明度,则不会渲染特定颜色的矩形。也就是说,如果glColor(1.f, 0.f, 0.f, 1.f)
在渲染纹理之前设置,则只会绘制蓝色矩形。
我不明白为什么当前颜色会对纹理的渲染产生影响(我认为这就像一个 blit)。我尝试了各种texParameter(...)
电话无济于事,但我只是猜测。
谢谢。
iphone - 来自具有透明度的 PNG 的 openGL ES 纹理被渲染为奇怪的伪影,让我抓狂!
我开始开发我的第一个 OpenGL iPhone 应用程序,但我遇到了一个早期的障碍。
我有一个非常简单的小纹理,我想在 2D 游戏中用作精灵,但它在顶部渲染有奇怪的“随机”彩色像素。
http://i40.tinypic.com/2s7c9ro.png <-- 截图在这里
我有点感觉这是 Photoshop 的错,所以如果有人对此有所了解,请告诉我。
如果它不是 Photoshop 那么它一定是我的代码......所以这里是有问题的代码......
}
这种混合功能产生了最好的结果。
请让我知道你认为什么是错的。
非常感谢,这个问题一直让我抓狂。
c# - 剪辑或遮罩 2D 纹理
嘿,我想知道是否有人知道为 gui 或类似系统的菜单使用 2D 纹理进行剪辑。
这是我想产生的示例输出
有一个大小为 500 x 500 的游戏屏幕。后面有一个大小为 1000 x 1000 的屏幕。
当我使用 500 x 500 的父屏幕在 0、0 处绘制纹理时,我希望不显示该组件
但如果我在 500、450 处绘制组件并且纹理宽度和高度为 100,我希望只能看到整个宽度,但只能看到组件高度的一半。
我想知道是否有一种简单的方法可以做到这一点?
编辑:
基本上我在想像Photoshop中的蒙版效果。
这是一张图片
黑色轮廓是绘制纹理的另一半的位置。
opengl - 如何创建分形立方体?
我想在 OpenGL 中渲染体积云。我发现了一篇有趣的论文,它描述了一种渲染体积云的简单技术。(http://www.inframez.com/events_volclouds_slide18.htm)但是我不知道如何创建他们的“分形立方体”(或 perlin-noise 立方体)。
我的问题是:如何创建立方体的 6 个可平铺分形纹理?
编辑:我的目标是制作体积云对象,而不是云天空盒。
opengl - 如何更改 OpenGL 纹理中的单个纹素
我想为给定位置更改 OpenGL 纹理中的一些纹素。任何人都可以帮我解决这个问题吗?
这是我想要的功能,
这将用于维护我的游戏的小地图(如果有人对维护动态地图纹理有更好的想法)。顺便说一句,这必须快速完成。谢谢。
graphics - 具有纹理坐标的示例模型?
我正在编写一个小的 OpenGL 演示,我真的很想展示一些带有纹理的示例模型。问题是我很难找到这样的模型。
有大量各种格式的 3D 模型存储库,但似乎只有一小部分具有纹理坐标。我正在寻找一些众所周知的东西,比如 stanford bunny 或茶壶,带有纹理坐标。
有人知道我在哪里可以找到这些吗?
opengl - OpenGL纹理组合不(总是)工作
如果你看过我最后的几个问题,你现在就会知道我一直在使用 OpenGL 处理地形问题。我尝试使用顶点 alpha 和多个渲染通道将一个纹理混合到另一个纹理中的平铺高度图中失败了……所以现在,我有了另一个计划。
我的 WorldQuad 对象有 'bottom' 和 'top' 变量,两者都是 Texture 类型。这是一个 JOGL 提供的封装 OpenGL 纹理的类;它为我加载它,然后我可以调用 enable() 让它执行 glEnable(GL_TEXTURE_2D),并调用 bind() 让它执行绑定。
它还有一个我自己类型的 alphaMap 变量,它存储了另一个纹理;但是这个是纹理内部格式 GL_ALPHA8 (换句话说,它是一个只有 alpha 值的纹理)。我目前以编程方式生成它以使其像素完美。
然后我使用 OpenGL“纹理组合”(或有时称为纹理喷溅)来根据 alpha 贴图组合底部和顶部纹理。
问题是,它工作得很好!......在我的工作笔记本电脑上。它是带有集成 Intel 芯片(GMA950 或类似芯片)的 IBM Thinkpad T400。但当我回到我的戴尔 Inspiron E1705 时,我发现我的程序只渲染了具有“底部”纹理的四边形。就好像根本没有应用 alpha。我还在两台台式机和另一台笔记本电脑上尝试过。其中一台台式机崩溃了,另一台显示四边形全白(它是旧的 GeForce 芯片,可能不支持 OpenGL 2 或其他东西),另一台笔记本电脑的性能与我的相同;覆盖在底部纹理中的四边形。
我已经尝试将 alpha 映射格式更改为 GL_RGBA,以防我的显卡由于某种原因不喜欢 GL_ALPHA8 纹理。我还验证了所有三个纹理都存在并且可以通过使用每个单独的纹理(包括 alphamap)绘制法线四边形来渲染。我还将 alphamap 输出到一个文件中,所以我基本上仔细检查了它是否存在并且应该可以工作。
下面是我基于所有这些绘制四边形的函数。我添加了评论,希望您能继续关注。请提出任何可能解决问题的建议。我难住了!为什么它可以在一个蹩脚的集成芯片上工作,而不是我的显卡?我错过了什么??
谢谢!!
编辑:好的,显然没有人可以帮助我......我现在回到工作岗位,将我的闪存驱动器插入我的工作计算机,启动 Eclipse 并点击运行按钮......它工作了。然后我把驱动器拿出来,放进我的个人笔记本电脑(我今天带去上班),做了同样的事情,它只是一个红色的斑点。但是在这里,我记录了它。首先,来自 glGetString(GL_EXTENSIONS) 的输出在两台计算机之间存在差异。
接下来,损坏和工作的屏幕截图。同样,这些都是以完全相同的方式拍摄的:打开 Eclipse,按运行,截屏。就是这样。我没有碰我的代码,我的代码只有一个副本,在我在两台计算机之间交换的闪存驱动器上。它们都具有相同版本的 JDK。
现在,两台计算机之间的区别之一是我的工作 PC 运行的是 XP,而我的笔记本电脑运行的是 Windows 7。但这真的会有所作为吗?特别是因为我使用的是 OpenGL 2,我认为两台计算机都会同样支持它。事实上,如果你看看我上面的差异页面,我的个人笔记本电脑支持的扩展比工作笔记本电脑多得多——正如我所预料的那样,因为与英特尔集成相比,它是一个 nvidia 7900gs 卡。所以这似乎倒退了;如果有的话,我希望集成芯片会阻塞纹理组合,但不是我的显卡!
帮助!
opengl-es - 使用 OpenGL ES 的 glTexCoordPointer 问题
我在将纹理映射到三角形条带时遇到了一些问题。我想我仍然没有完全理解纹理坐标。
我有一个 512x512 的纹理,我正在尝试将它的 320x64 部分映射到三角形条带上。
这是我的代码:
当我运行代码时,它会在三角形条带上显示原始纹理的扭曲图像。
有人可以告诉我我做错了什么吗?
谢谢