microsoft / microsoft/MixedReality-GraphicsTools-Unity

More modularity in the Uber shader

Offen
#203 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement
Vorherrschende Sprache
C#
Sterne
209
Forks
49
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Describe the problem

I'm trying to implement a custom shader (adds elevation contour lines) that also leverages the clipping primitive, and it seems harder than it should be. The Uber shader is a monolith of code.

Describe the solution you'd like

Consider breaking up the hlsl into modules. Perhaps even modules could be leveraged by custom functions in shader graph. (That use out parameters.)

I should be able to include a module or subgraph that will make my shader clip the same way as the Uber shader (for example).

Describe alternatives you've considered

Better support for shader graph in general. Either subgraphs and custom functions or both. #34

Additional context

Caveat is I am rather new to hlsl and unfamiliar with best practices. If performance suffers from breaking out the code, I'd be curious to know exactly how much.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den Uber shader zu lokalisieren und zu prüfen, wie sein HLSL das Clipping-Primitive behandelt. Vergleiche diese Struktur mit den im Issue erwähnten Möglichkeiten für shader graph, subgraph und custom-function. Als abgeschlossen gilt die Aufgabe, wenn ein dokumentierter modularer Ansatz zur Wiederverwendung des Clipping-Verhaltens vorliegt und etwaige Auswirkungen auf die Performance bewertet wurden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
unity
Bereich
computer-graphics
Issue-Typ
Refactoring
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.