我正在使用程序紋理,除非很遠,否則看起來很好,小紋理像素會分解成噪點和波紋圖案。高級莫爾在HLSL/GLSL程序紋理着色器中減少圖案着色器 - 抗混淆
我已經開始尋找一種解決方案來平均和量化模式的規模很遠,並關閉,以便它靠近是完全詳細的,遠在四捨五入,使一個像素的一個遙遠的山只代表了那裏找到的一種顏色,在那一點上不是10種或20種顏色。
這是很容易通過四捨五入World_Position的體紋理是基於這樣做使用if語句,即:
if(camera-pixel_distance > 1200 meters) {wpos = round(wpos/3)*3;}//---round far away pixels
return texturefucntion(wpos);
舍遠紋理的結果是,他們看起來是這樣,但很遠很遠:http://i44.tinypic.com/2r4ph1d.jpg 與此有關的麻煩是我必須作出約5如果條件的各種距離,我必須估計一個隨機良好的舍入值
我試圖做一個功能,減少的距離像素轉換爲距離步驟,並將LOD分解器應用於pixel_worldp命題值使它在距離上逐漸變圓,但我得到的是無意義的結果,實際上HLSL完全被拋棄了。這是企圖:
float cmra= floor(_WorldSpaceCameraPos/500)*500; //round camera distance by steps of 500m
float dst= (1-distance(cmra,pos)/4500)*1000 ; //maximum faraway view is 4500 meters
pos= floor(pos/dst)*dst;//close pixels are rounded by 1000, far ones rounded by 20,30 etc
它返回了無法理解的模式,我無法理解。
是否有良好的記錄算法用於平滑和舍入距離紋理僞影?我可以使用scren像素分辨率,結合像素距離,將每個像素四捨五入爲一種顏色,保持穩定的顏色?
在HLSL聽起來不錯,DDX DDY,它是那種我要尋找的東西,所有的話題與抗鋸齒。謝謝!!! –