我不希望用代码轰炸此帖子。我有一个主文件,片段着色器和一个顶点着色器文件。通过在GLSL中着色不同的屏幕区域来识别mip地图级别
我需要知道我应该采取哪些步骤来根据mipmap级别为屏幕着色?即循环应该去请求mipmap级别,然后相应地设置颜色。我不知道在哪里实施这个或如何实施,一个简单的例子就足够了,谢谢。
我不希望用代码轰炸此帖子。我有一个主文件,片段着色器和一个顶点着色器文件。通过在GLSL中着色不同的屏幕区域来识别mip地图级别
我需要知道我应该采取哪些步骤来根据mipmap级别为屏幕着色?即循环应该去请求mipmap级别,然后相应地设置颜色。我不知道在哪里实施这个或如何实施,一个简单的例子就足够了,谢谢。
您应该为每个关卡创建不同颜色的纹理,然后在片段程序中检索该颜色。也可以使用dFdx(texcoord.x)
和dFdy(texcoord.y)
来计算它。
谢谢,你让它听起来很容易。但是,你能更具体吗?我是一个noob – 2011-03-11 15:48:35
float mip = log2(max(dFdx(Texcoord.x)* texSizeX,dFdy(Texcoord.y)* texSizeY)); – Damon 2011-03-11 19:08:02
http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter28.html
该GPU精粹2条实现像你想要什么。
这两张照片总结了我正在尝试做的事情。我只需要一些通用代码就可以了..... – 2011-03-11 16:12:42
也许我只是愚蠢的,但我不能告诉你想要做什么。你是否想要手动更改mipmap,以便每个mipmap具有不同的颜色?或者你想知道在片段着色器中使用哪个mipmap级别? – Hannesh 2011-03-11 15:33:39
老实说,我不知道,我已经给了一个程序,我的任务之一是“5. \t通过区分不同的屏幕区域来识别不同的Mip Map级别。” – 2011-03-11 15:47:21