[英]What is the correct usage of sampler lod_options (MSL) in Metal shader?
我正在嘗試通過Metal Shading Language Specification學習 MSL,並且看到您可以在采樣紋理時通過指定sample
函數中的選項來設置 LOD 選項。 這是規范中給出的示例之一:
Tv sample(sampler s, float2 coord, lod_options options, int2 offset = int2(0)) const
lod_options
包括bias、level、gradient2d 等。
我已經查看了所有內容,但找不到用於此的使用語法。 這些是命名參數嗎? lod_options
是結構嗎? 例如,如果我想指定 LOD 級別,那么正確的做法是什么? 我知道這些選項也可以在采樣器對象本身中指定,但是如果我想在這里這樣做,那么這樣做的正確語法是什么?
沒有lod_options
類型; 您可以將其視為bias
、 level
、 gradient2d
等類型之一的占位符。 這些類型中的每一種都是不同的結構,它允許 Metal 標准庫為每個此類選項具有sample
函數的重載變體。
例如,要指定要采樣的 mipmap 級別,您需要提供level
類型的參數:
float4 color = myTexture.sample(mySampler, coords, level(1));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.