簡體   English   中英

金屬着色器中采樣器 lod_options (MSL) 的正確用法是什么?

[英]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類型; 您可以將其視為biaslevelgradient2d等類型之一的占位符。 這些類型中的每一種都是不同的結構,它允許 Metal 標准庫為每個此類選項具有sample函數的重載變體。

例如,要指定要采樣的 mipmap 級別,您需要提供level類型的參數:

float4 color = myTexture.sample(mySampler, coords, level(1));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM