Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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