2017-02-09 20 views
0

我發現着色器玩具網站一個很好的遮陽:修改全屏着色器的分辨率

https://www.shadertoy.com/view/4scGWj

它使得動畫激光屏幕的水平中心:

enter image description here

我想知道的是:

。能夠指定激光的大小(比如屏幕是800 * 600,我希望激光器在80 * 60區域呈現 - 它看起來像激光進行縮放)

多:

。以便能夠在給定的起點和終點之間渲染激光(比如100,100到400,400)

我試圖修改着色器,但無法完成,任何建議將不勝感激,謝謝:)

回答

0

上ShaderToy這些着色器計算基於fragCoord的像素值。如果使用fragCoord的轉換版本,則可以縮放,旋轉或甚至使圖像變形。 fragCoord上的矩陣轉換爲您提供了一種簡單的旋轉和縮放方法。

但是,這不會給你一個起點或者終點。爲此,您將必須瞭解着色器如何工作並自行進行更改。

另一種替代方法是將激光呈現到一個四,而不是全屏幕四通道,和使用紋理座標代替fragCoord