Udostępnij za pośrednictwem


mad, funkcja

Wykonuje operację arytmetyczną mnożenia/dodawania dla trzech wartości.

Składnia

numeric mad(
  in numeric mvalue,
  in numeric avalue,
  in numeric bvalue
);

Parametry

mvalue [in]

Typ: numeryczne

Wartość mnożenia.

avalue [in]

Typ: numeryczne

Pierwsza wartość dodawania.

bvalue [in]

Typ: numeryczne

Druga wartość dodawania.

Wartość zwracana

Typ: numeryczne

Wynik wartości avalue bvalue * + .

Uwagi

Minimalny model cieniowania

Ta funkcja jest obsługiwana w następujących modelach cieniowania.

Model cieniowania Wsparte
Model cieniowania 2 (DirectX HLSL) i wyższe modele cieniowania yes

 

Ta funkcja jest obsługiwana w następujących typach cieniowania:

Wierzchołek Kadłub Domena Geometry Piksel Compute
x x x x x x

 

Autorzy cieniowania mogą używać szalonego instrynacji, aby jawnie kierować szalone instrukcje sprzętowe w skompilowanych danych wyjściowych cieniowania, co jest szczególnie przydatne w cieniowaniu, które oznaczają wyniki z precyzyjnym słowem kluczowym. Szalone instrukcje można zaimplementować w sprzęcie jako "bezpiecznik", który oferuje większą precyzję niż implementowanie instrukcji mul, a następnie instrukcję dodawania lub jako dodatek mul + .

Jeśli autorzy cieniowania używają szalonego instrynacji, aby obliczyć wynik, że cieniator oznaczony jako precyzyjny, wskazują na sprzęt do używania dowolnej prawidłowej implementacji szalonej instrukcji (połączonej lub nie), o ile implementacja jest spójna dla wszystkich zastosowań tego szalonego wewnętrznego w każdym cieniatorze na tym sprzęcie. Cieniowanie może następnie skorzystać z potencjalnych ulepszeń wydajności przy użyciu natywnej instrukcji szalonej (w porównaniu zdodaniemmul + ) na niektórych sprzętach. Wynik wykonywania natywnej instrukcji sprzętu szalonego może lub nie może być inny niż wykonywanie mul , po którym następuje dodanie. Jednak niezależnie od wyniku wynik musi być spójny, aby ta sama operacja wystąpiła w wielu cieniowaniach lub różnych części cieniowania.

Zobacz także

Funkcje wewnętrzne

Model cieniowania 5