È possibile creare effetti di sovrapposizione dei colori a schermo intero in Windows?

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

  •  02-07-2019
  •  | 
  •  

Domanda

Ricordo i miei vecchi driver di grafica Radeon che avevano un certo numero di effetti di sovrapposizione o filtri di colore (come si chiamano) che avrebbero reso lo schermo in es. tonalità seppia o colori negativi. La mia attuale scheda NVIDIA non sembra avere una tale funzione, quindi mi chiedevo se fosse possibile crearne una mia per Vista.

Non so se esiste un modo per agganciarsi al motore di rendering di Windows o, in alternativa, ai driver di NVIDIA per ottenere questo effetto. Mentre sarebbe bello poter solo modificare il colore, sarebbe ancora meglio modificare il colore in base alle sue coordinate dello schermo o eseguire altre funzioni più varie. Un esempio potrebbe essere i colori che sono più desaturati più a lungo sono dal centro dello schermo.

Non ho uno scenario di utilizzo specifico, quindi non posso fornire molte più informazioni. Fondamentalmente, sono solo curioso di sapere se c'è qualcosa con cui lavorare in quest'area.

È stato utile?

Soluzione

Potresti avere una finestra a strati a schermo intero di tutto e passando attraverso gli eventi di clic. Tuttavia, questo è confuso e lento rispetto a ciò che potrebbe fare facendo un hook in WDM contesto DirectX del renderer. Tuttavia, finora non è possibile, in quanto Microsoft non fornisce alcuna interfaccia pubblica in questo.

L'utilità Flip 3D fa questo, però, ma anche lì che la funzionalità non è nel programma, è nella DLL WDM, chiamata da ordinale (funzione nascosta / non documentata, ovviamente, poiché non serve a nessun altro scopo) . Praticamente un altro vicolo cieco, da dove non mi sono preoccupato di scavare più a fondo.

Da quel punto di vista, il meglio che possiamo fare è aspettare una sorta di API ufficiale.

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