电脑图像

计算机图形学研究人员和程序员的问答

2
六角形像素阵列可以更有效地存储图像吗?
大多数计算机监视器和电视具有以正方形(或接近正方形)的格子排列的像素矩形阵列。对于相同数量的像素,六边形格子会带来更好的图像质量吗?换句话说,相同数量的内存是否可以存储更多细节? 我有一种直观的感觉,即对于相同数量的带有六边形格子的像素,应该(至少稍微)有更多细节,因为(对于固定区域图像)到最近的像素中心的平均距离将比四边形格子的平均距离小。 。我想更具体地定义差异。 即使答案是“是”,我也不希望显示器制造商突然开始制造六角形排列的像素。但是,我问这个问题是因为我想知道将图像存储为像素的六边形格子是否会获得任何收益,即使将它们转换为像素的正方形格子以进行显示也是如此。
11 pixels  memory 

3
如何将点集中在曲率较高的区域?
如何在隐式表面上分布点,以将其更密集地集中在曲率较高的区域? 我考虑过根据曲率随机添加点并拒绝不需要的点,但是我想知道是否有更好的方法可以在相似曲率的区域上提供更均匀的分布,同时仍然提供较高曲率下所需的更高密度。曲率区域。 我正在专门研究将这些点用于曲面的三角测量,并且我不想创建更多的三角形,而不是需要相对平坦的零件。 这将应用于具有已知导数的形状,因此可以计算给定点的曲率。 这不必是实时方法。

2
是否可以通过模版测试找出有多少碎片?
我有一个OpenGL应用程序,该应用程序广泛使用模板测试来渲染不规则形状(有点像简单的2-D CSG)。如果我能找到通过模板测试并实际渲染的片段数量,这将有助于简化某些计算。具体来说,它可以让我免费确定渲染形状的面积,而不必稍后使用蒙特卡洛模拟对其进行近似。 我知道从几何着色器发出的图元也有类似的概念,称为变换反馈。我想知道片段和模板测试是否存在类似的概念。

1
修改纹理(在其上绘画)是否被视为“状态变化”?
图形中的约定是,执行较少的状态更改比执行较多的状态更改(切换着色器,绑定缓冲区,绑定纹理等)更好。对于纹理,使用单个地图集(用于渲染精灵/文本)渲染许多多边形要比为每个多边形单独绑定一个新纹理要快。 如果我不断通过绘制纹理,这是否成立glTexSubImage2D?我有(通过网络)传入的数据流经过处理,然后一次绘制成纹理。数据以无休止的滚动形式直观呈现。 我会不会更好地在一个大矩形上绘制一种纹理(将绘制的数据滚动到视图中)?这里的想法是,在我继续绘画的同时,在任何给定的时间绑定一个(或两个)纹理。 还是我应该绘制很多小矩形(仅在绘制完成后才显示矩形)?我假设我将为每个矩形绑定一个纹理。
11 opengl  texture 

1
三次Lagrange插值张量积与双三次插值相同吗?
我只是通过对4x4最近的像素进行采样,然后在x轴上进行Lagrange插值来获得四个值,以在y轴上使用Lagrange插值来实现一些插值纹理采样。 这与三次三次插值相同还是不同?还是有不同的双三次插值,也许只是其中之一? 这里的Webgl Shadertoy实现以及下面的相关GLSL(WebGL)代码:https ://www.shadertoy.com/view/MllSzX 谢谢! float c_textureSize = 64.0; float c_onePixel = 1.0 / c_textureSize; float c_twoPixels = 2.0 / c_textureSize; float c_x0 = -1.0; float c_x1 = 0.0; float c_x2 = 1.0; float c_x3 = 2.0; //======================================================================================= vec3 CubicLagrange (vec3 A, vec3 B, vec3 C, vec3 D, float …

2
alpha通道是否应进行伽玛校正
我们知道,在PNG,BMP等中,存储的像素值不在线性RGB空间中。但是我没有找到有关Alpha通道的任何文档。alpha通道是否以线性空间存储在图像文件中?
11 gamma 

2
有什么理由比OpenGL更喜欢Direct3D?
所以我读了这篇文章,我有点明白为什么Microsoft Windows上的游戏比任何其他OS都要多的原因。提出的主要问题是Direct3D优于OpenGL。 我不明白的是为什么任何开发人员都会牺牲兼容性?那简直是对公司的财务损失。我知道OpenGL有点混乱,但这对专家来说几乎不成问题。即使是这样,我认为人们会付出更多的努力,而不是蒙受金钱上的损失。 同样,如果我没有记错的话,那么很多跨平台应用程序都会同时使用Direct3D和OpenGL。我认为它们在API之间切换。 这很奇怪,因为他们只能使用OpenGL,为什么还要关心Direct3D? 所以问题是,OpenGL是否存在任何技术问题,或者Direct3D提供了OpenGL缺乏的任何支持? 我知道,这个问题可能因为话题太小或太宽泛而被关闭,我尽力缩小了范围。
11 opengl  direct3d 

2
在基于物理的BRDF中,应使用哪个矢量来计算菲涅耳系数?
众所周知的菲涅耳系数的Schlick近似公式为: F= F0+ (1 − F0)(1 − c o s (θ ))5F=F0+(1−F0)(1−cos(θ))5F=F_0+(1 - F_0)(1 - cos(\theta))^5 并且等于表面法线向量和视图向量的点积。c o s (θ )cos(θ)cos(\theta) 现在还不清楚我但如果我们应该用实际的表面法线或半矢量^ h。在基于物理的BRDF中应使用哪个?为什么?ñNNHHH 而且,据我所知,菲涅耳系数给出了给定射线被反射或折射的概率。因此,我很难理解为什么我们仍然可以在BRDF中使用该公式,该公式应该近似于整个半球的积分。 这种观察倾向于使我认为这将是,但是对我而言,并不明显的是代表性法线的菲涅耳等于将所有实际法线的菲涅耳积分。HHH
11 brdf  pbr  integral  fresnel 

2
什么是索引缓冲区?它与顶点缓冲区有何关系?
我有一个这样的顶点缓冲区: 0.0, 0.0, 1.0, 0.0, 0.0, 0.6, 1.0, 0.6, 0.5, 1.0 我有以下索引缓冲区: 0, 2, 2, 4, 4, 3, 3, 2, 2, 1, 1, 0, 0, 3, 3, 1 我知道我想gl.LINES使用WebGL 进行绘制,这意味着多个分开的线段。 gl.drawElements(gl.LINES, 16, gl.UNSIGNED_SHORT, indexBuffer); 似乎可以在WebGL的一次绘制调用中绘制多个线段。 有人可以给我ELI5吗?什么是索引缓冲区?它与顶点缓冲区有何关系?如何从我的原语生成索引缓冲区?

2
JPEG编码应考虑伽玛吗?
当使用JPEG编码图像时,首先将RGB像素编码为YUV,然后对UV通道进行下采样。在实际进行DCT和编码系数之前,JPEG 不会对Y通道进行伽马校正。它是否正确?我们是否应该确定对观看结果影响最大的DCT系数?

1
以编程方式生成顶点法线
我正在使用Kinect面部api,它为三角形提供了一组顶点和索引,这些三角形将被渲染以生成面部图像。 顶点的数目及其在数组中的顺序以及kinect给定的索引始终是恒定的。 但是,该API没有提供有关UV数据和顶点法线的信息。 该应用程序要求我保持kinect给出的顶点顺序,因为它们在3d空间中的位置会根据面部运动而变化,因此在3d编辑软件中生成uv和法线是毫无疑问的。 我设法通过将顶点位置投影到2D平面上来生成UV,因为同一平面上的顶点很少。 但是,我不知道如何为网格生成顶点法线,如果没有顶点法线,则脸部网格的绘制就不会产生任何深度的特征,尽管随着顶点位置的正确,轮廓是可见的。 我了解到,由于缺少顶点法线,因此照明无法在其上正常工作,因此,现在看起来很苍白的无特征网格。 那么当我只有顶点位置和顶点索引以生成三角形时,如何生成顶点法线呢?

1
现代硬件在保持实时性的同时,一个场景中可以到达多少个多边形,以及如何到达那里?
在某些方面,这是一个相当基本的问题,但很多人(包括我自己)并不真正知道答案。GPU制造商通常会引用非常高的数字,各种游戏引擎声称支持的多边形数量之间的差异通常跨越多个数量级,然后仍然严重依赖于许多变量。 我知道这是一个广泛的,几乎是开放性的问题,对此我深表歉意,我只是认为这仍然是一个有价值的问题。
11 gpu  optimisation 

1
为什么AMD在GPU板上放置SSD会大大减少延迟?
AMD最近发布了一个有趣的Radeon Pro主板,上面装有几个M2 SSD。 正如一些更详细的故事(例如,此处或此处)所指出的那样,好处可能主要不是来自高带宽(M2仅在4个PCIe通道上,因此板子自己的16通道连接器应该有更多),但是低延迟。 这个故事包括声称“这将使内存访问延迟降低10倍”。 我的问题基本上是:为什么GPU板上连接PCIe的SSD的延迟要比访问系统PCIe总线上的主系统RAM或存储设备的GPU的延迟显着减少?“阻碍”的主系统有什么用,意味着板载SSD可以以更快的速度访问?

3
如何在多边形网格中进行三角形内部测试?
我(V1, V2, V3)在规则三角形网格上随机选择了3个顶点。对于这3个顶点,我已经计算出它们之间的测地线距离和路径(通过使用Dijkstra),并形成了一个如上图所示的三角形表面。 现在,我有了每个路径中的顶点,并且可以计算到给定顶点的测地距离。 我要做的是获取位于三角形区域的顶点或三角形。我怎样才能做到这一点?

1
BRDF为什么不是辐射率的比例?
我正在学习BRDF,并想知道为什么将BRDF定义为给定方向的输出辐射与另一个方向的入射辐射之比。为什么不将BRDF定义为辐射比?
10 brdf 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.