microsoft / microsoft/MixedReality-GraphicsTools-Unity

More modularity in the Uber shader

Aperta
#203 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

enhancement
Lingua principale
C#
Stelle
209
Fork
49
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia individuando l'Uber shader e verificando come il suo HLSL gestisce la primitiva di clipping. Confronta questa struttura con le possibilità di shader graph, subgraph e custom-function menzionate nell'issue. Il lavoro sarà considerato completato quando sarà disponibile un approccio modulare documentato per riutilizzare il comportamento di clipping e sarà stato valutato ogni eventuale impatto sulle prestazioni.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
unity
Ambito
computer-graphics
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.