I pixel shader possono essere utilizzati durante il rendering su una superficie fuori schermo?

StackOverflow https://stackoverflow.com/questions/216899

  •  03-07-2019
  •  | 
  •  

Domanda

Sto pensando di integrare un codice D3D che ho con WPF tramite la nuova D3DImage come descritto qui:

La mia domanda è questa: il pixel shader funziona su superfici fuori schermo?

È stato utile?

Soluzione

Il rendering su una superficie fuori schermo è generalmente meno vincolato rispetto al rendering direttamente su un back buffer. L'unico vincolo derivante dall'uso di una superficie offscreen con D3DImage è che deve essere in un formato RGB / ARGB a 32 bit (a seconda della piattaforma). A parte questo, tutto ciò che l'hardware ha da offrire è a tua disposizione.

In effetti, tonnellate di effetti shader sfruttano le superfici fuori schermo per multipass o post-elaborazione a schermo intero.

Altri suggerimenti

Non so se ci sia qualcosa di speciale con WPF, ma in generale sì, i pixel shader funzionano su superfici fuori schermo.

Per alcuni effetti è necessario il rendering su una superficie diversa, ad esempio la rifrazione del vetro davanti a una scena renderizzata dallo shader. I pixel shader non possono accedere al contenuto dello schermo corrente e quindi la vista deve essere prima renderizzata su un buffer e quindi utilizzata come trama nel passaggio dello shader di rifrazione in modo che possa prendere il colore di sfondo da un pixel diverso da quello calcolato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top