细节
jianminfly
这个作者很懒,什么都没留下…
展开
-
d3dx9 hlsl中if else 和 for语句使用细节
一、背景hlsl中有以下代码,const float2 guassBlurPriority[33] = { {float2(-16.0, 0.0138)}, {float2(-15.0, 0.0158)}, {float2(-14.0, 0.018)}, {float2(-13.0, 0.0203)}, {float2(-12.0, 0.0226)}, {float2(-11.0, 0.025)}, {float2(-10.0, 0.0274)}, {float2(-9.0, 0.029原创 2021-06-23 11:05:16 · 1061 阅读 · 0 评论 -
记一次win7(OpenGL3.3)上顶点着色器的bug导致画面只出现四分之一的问题解决过程
一、背景将一个正常在win10(OpenGL4.6)上运行的程序放到win7(OpenGL3.3)上后,出现如下的只显示四分之一画面的异常现象二、解决过程1.将一个简单的OpenGL demo放到OpenGL3.3上运行,可以正常显示画面,于是把代码移植到软件的渲染过程中,可以显示画面,如下图,说明该问题至少是个可以解决的问题2.依次将顶点设置代码、着色器代码、纹理上传代码、渲染代码恢复到出问题的版本,定位到问题出在了顶点着色器代码中,我的顶点着色器代码如下#version 130in vec原创 2020-11-13 20:44:48 · 1021 阅读 · 0 评论 -
opengl纹理缩放的原理
一、背景用OpenGL处理3dlut映射的时候,lut滤镜数据输入到纹理后,不经过任何处理直接输出,图像两边会有错误的像素点出现,如下(更换了图片,以便验证结果的一般性)如上图,在边缘出现了模糊的颜色二、原因在我的测试demo中有以下代码设置纹理的属性// 当纹理坐标超出范围时,重复当前纹理glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE原创 2020-07-14 10:46:18 · 1911 阅读 · 0 评论