Fondamentalmente, ciò di cui stai parlando è la ricerca di bordi, e ci sono una serie di giochi che lo fanno, in una varietà di modi diversi.
Probabilmente il primo fu Jet Set Radio (pubblicato in occidente come "Jet Grind Radio"). Rilasciato solo un mese o due dopo quello era il gioco per il quale avevo sviluppato una tecnica di rendering simile: Looney Tunes: Space Race . (Su Space Race, abbiamo fatto del nostro meglio per mantenere uno spessore della linea uniforme, mentre Jet Set Radio ha reso le linee irregolari larghe una parte del suo stile visivo).
Entrambi questi giochi hanno funzionato allo stesso modo; per ogni oggetto da delineare, disegna l'oggetto due volte. Per prima cosa, esegui il rendering con il backfacing invertito, con una spinta del vertice applicata (ovvero sposta ogni vertice di una certa distanza lungo il suo vettore normale) e in qualunque colore desideri che appaiano le "linee". Quindi disegnare di nuovo, senza la spinta del vertice e con il normale backfacing. Questa coppia di operazioni ti dà una silhouette colorata che borda un oggetto, ed è tutto ciò che questi primi due giochi hanno usato. In Space Race, ho mantenuto l'illusione di una larghezza della linea costante spingendo i vertici a una distanza variabile, in base alla distanza dell'oggetto dalla telecamera. In Jet Set Radio, non lo hanno fatto (il che ha portato a linee sempre più grandi, man mano che gli oggetti si avvicinavano o allontanavano dalla telecamera)
NVidia e ATI hanno diverse dimostrazioni di altri modi per ottenere questo effetto, principalmente ruotando attorno a pixel shader alla ricerca di normali perpendicolari al vettore da fotocamera a pixel per ciascun pixel, ma tutti richiedono mesh ad altissima risoluzione e producono incoerenti spessori di linea in pratica. Non so se alcuni giochi utilizzino effettivamente questo tipo di approccio; Non credo di aver visto nessuno che assomigli ai campioni di queste aziende.
Ti indicherò anche Dragon's Lair 3D , che è l'unico gioco che conosco e che sembra farlo davvero correttamente; prendendo il prodotto punto di camera-a-poligono e il poligono normale per ciascun poligono in un modello per vedere se ciascun poligono è rivolto verso o lontano dalla fotocamera e quindi controllare tutte le coppie di poligoni collegati; se una coppia di poligoni condivide un bordo e un poligono è rivolto verso la telecamera e un poligono no, allora traccia una linea sottile a larghezza costante lungo quel bordo nello spazio dello schermo. (Non riuscivo a rendere questo lavoro abbastanza veloce su Dreamcast per Space Race, o l'avrei usato. Oggi, sui computer moderni, questo è totalmente il modo in cui proverei a fare questo effetto, anche se '
Dragon's Lair 3D è anche l'unico gioco di cui sono a conoscenza che in realtà traccia linee tra aree di colore diverso o con discontinuità normali ai vertici, anche se non c'è un bordo silhouette per trovarlo. Sospetto che avessero uno strumento personalizzato che consentiva ai loro artisti di nominare i bordi poligonali per ricevere sempre una linea.
Okami , che è stato menzionato da alcune altre persone, sembra utilizzare un approccio a vertex push doppio rendering, simile a Jet Set Radio e Space Race, ma utilizza anche trame che sono state costruite usando uno stile artistico spazzolato. (Le colline in lontananza, ad esempio, vengono disegnate come pennellate in una trama che viene disegnata come un quad standard). Okami è adorabile, ma non penso che tocchi davvero la tecnologia di cui stai chiedendo; certamente, sta usando l'approccio più vecchio per il suo effetto.
Ora, nel tuo caso, ti stai chiedendo di farlo senza un riempimento di colore, disegnando il mondo solo con linee. È facile da fare; disegna semplicemente tutti i poligoni senza illuminazione e in un unico colore costante che corrisponda al colore di sfondo. Ognuno di questi approcci dovrebbe funzionare usando quell'approccio senza cambiare affatto il motore di gioco. È importante disegnare effettivamente quei poligoni "dello stesso colore dello sfondo", in quanto impediranno ai bordi dello sfondo di essere visualizzati attraverso oggetti in primo piano, il che potrebbe creare confusione molto rapidamente.