Le bump maps!

img_itaBuongiorno!

La notizia di oggi è che, sistemati per bene tutti i nomi e i loghi di squadre e tornei, ho cominciato la mia prima carriera in Fifa 16! E voi direte… e chissenefrega!! Giusto, giusto… ma non del tutto!! Infatti, man mano che cerco di progredire nel mio personalissimo divertimento, mi accorgo dei difetti del gioco, cerco di correggerli, mi servono funzioni vecchie e nuove, vengono fuori i bug del programma, qualche novità, insomma, molte cose che, condivise, possono servire anche ad altri, quindi a voi che mi seguite!

Non lo avevo mai fatto, quindi ho scelto di cominciare la mia avventura da allenatore in Belgio sulla panchina dello Standard Liegi, una squadra prestigiosa e d’alta classifica, ma che certamente non è la favorita per il titolo. Come sapete detesto quelli che vincono sempre… 😀

La competizione estiva introdotta quest’anno, oltre che a regalare un po’ di fantaquattrini utili per il mercato, mi è servita soprattutto a testare gli aspetti grafici specifici per la mia nuova squadra, importanti per un’esperienza di gioco soddisfacente. Non avevo dubbi in merito e ho dovuto constatare che la Jupiler Pro League è abbastanza maltrattata da mamma EA: mancano molti allenatori, i nomi degli stadi, le terze divise. Come sempre, striscioni e bandiere di default fanno pena, ma a questo, per fortuna, ha pensato Uomomagnetico, che qui ringrazio per il suo enorme e ottimo lavoro!

Così mi son messo di buona lena: presa come base la Moddingway Mod (0.52, più avanti la “giusta” recensione!), ho realizzato un primo script per perfezionare i nomi delle squadre e aggiungere gli allenatori. Per gli stadi sarebbe stato sufficiente utilizzare il Merger in modalità aggiungi e cambia, caricando la tabella già perfezionata l’anno scorso dal database di FIfa15…
sarebbe… perché il tool non funziona più! Purtroppo devo aver combinato qualcosa nel corso degli ultimi aggiornamenti. Nei prossimi giorni vedrò di aggiustare tutto; intanto mi scuso, con chi dovesse aver provato a farne uso, rimanendo deluso (che in italiano fa anche rima!) [PS. L’eseguibile è già stato aggiornato, se incontrate problem riscarcatelo!]

E poi mi son messo a fare il terzo kit! Niente di straordinario, sia ben chiaro, ci sono decine di kit makers più bravi di me che realizzano lavori in alta definizione con una cura del particolare straordinaria. Io mi accontento di realizzare un buon lavoro, preciso quanto basta, sfruttando le conoscenze che ho acquisito negli anni in materia di bump maps. E proprio le bump maps, queste sconosciute… sono l’argomento principale di oggi. Ho notato che molti tra i migliori kit makers sbagliano le bump maps o non ne sfruttano appieno il potenziale. Sperando di fare cosa gradita, riporto qui di seguito il frutto dei miei studi in materia, datati 2011 e già pubblicati in italiano nel forum di fifamania.it, ai tempi in cui realizzai il mio KitManager. Dai test che ho fatto nel realizzare il mio kit per lo Standard sono ancora perfettamente attuali!

Torino, 16 February 2011

Posto non con la presunzione di fare il professore,  ma con il desiderio di condividere conoscenze che ho acquisito con analisi, ricerche, tentativi che, almeno secondo me, rappresentano un po’ il sale dell’editing! Innanzi tutto un introduzione semplice per spiegare a cosa servono le bump maps:

(da wiki…) “Il Bump Mapping è una tecnica di rendering dei materiali  che aumenta la complessità degli oggetti realizzati senza effettivamente  aumentare il numero di poligoni che compongono l’oggetto di partenza(…)”

indi lo scopo è perfezionare il dettaglio di un oggetto 3D senza dover spendere maggiori risorse che renderebbero il gioco meno fluido  in particolare sui pc meno performanti.  In Fifa questa tecnica (una di tante versioni) viene utilizzata  ad esempio per far in modo che le magliette appaiano realistiche  senza dover aumentare il dettaglio e le dimensioni delle texture  (e dunque, cominciamo col dire che almeno sotto questo punto di vista  e a tutela degli amici con macchine lente, è un po’ un non senso realizzare i kit addirittura in 3Gk!). Ma non solo: con questo metodo si può stabilire se applicare o no un determinato effetto ed in che misura.

Come funzionano? L’idea è quella di sfruttare i colori di una seconda texture da “sovrapporre” alla principale per  definire alcuni comportamenti.
Facciamo uno sforzo e immaginiamo di voler assegnare  un “compito” ad ogni punto dell’immagine principale  in base al colore del corrispondente pixel nell’immagine secondaria (la bump map):  stabiliamo ad esempio che se i pixel della bump sono rossi  allora la maglietta in quel punto dovrà riflettere la luce,  se sono di un altro colore no. Semplice no?  Troppo, infatti. 😀

Come immagino quasi tutti sappiano, il colore di ciascun pixel  di una qualsivoglia immagine è definito da tre “numeri”  (ce n’è un quarto, il canale alfa che in qui non ci interessa…),  che misurano le tre componenti principali  R rosso, G verde, B blu. Il nostro Fifa sfrutta queste componenti (due su tre per l’esattezza) per assegnare contemporaneamente più comportamenti sfruttando un’unica bump map.

Nello specifico la componente R definisce proprio quanto la maglietta rifletterà la luce per ciascun punto. La componente G stabilisce invece quale trama applicare al sottostante per meglio simulare le varie parti del tessuto.  La componente B non è utilizzata e qualsiasi settaggio non produce effetti  visibili. Le bump map originali del gioco, generalmente impostano questa  componente su un valore medio (150/151), il che fa si che quasi sempre  ammiriamo delle bump maps molto “violacee”… ma potremmo tranquillamente settarlo al massimo (255) e ottenere delle bump decisamente bluastre senza che ingame si noti alcunché di diverso.

Valori sparati nella componente R di ciascun pixel faranno si che in quell  punto la maglietta rifletterà moltissimo la luce (con il sole, col bagnato e  in notturna) fino a sembrare “poco” realistica (come un tv con il contrasto  a palla!). Un uso adeguato di questa componente fa si che la maglietta possa riflettere di  più in alcuni punti rispetto ad altri… E’ evidente come nella realtà, il bianco rifletta molto di più del nero: dunque una buona bump  della Juve non dovrebbe di sicuro essere uniforme nella sua componente di R! (date pure un’occhiata agli originali di Juventus, Inter, Barcellona!).  Se vogliamo fare in modo che sponsor, loghi, cuciture appaiano nei loro colori naturali dovremo evitare valori troppo alti di R (perdendo qualcosa da distante); al contrario se ci piace che “brillino di luce propria” spareremo  al massimo il valore (personalmente preferisco di gran lunga la prima ipotesi!!).

La componente G stabilisce quale “trama” (texture) di tessuto sovrapporre,  secondo questa tabella:

1-63 = punti stretti leggeri a simulare un tessuto standard
64-127 = punti larghi evidenti a simulare ad esempio il sotto ascella,  fasce di traspirazione ect…
128-191 = righine orizzontali evidenti a simulare la trama di calzini, polsini ect…
192-254 = nessuna trama
0 oppure 255 = punti stretti leggeri a simulare un tessuto standard uguale al primo; se affiancati però non combaciano e lasciano all’intersezione uno spazio “vuoto”…

Va da se che se il kit-maker disegna di suo le trame di tessuto (come usano fare quasi tutti i più esperti)… dovrà fare in modo che la bump map presenti una componente di green adeguata, ad escludere la sovrapposizione di una delle trame standard che ne pregiudicherebbero il gran lavoro e l’effetto volute (ovviamente salvo per quelle combinazioni sapientemente studiate apposta)!

iard68

Spero che queste chiacchiere possano essere utili a tanti, così da  contribuire ad un generale miglioramento della qualità dei lavori! Ecco… qui di seguito allego un template comodissimo da utilizzare con Photoshop: per ottenere l’effetto desiderato basterà prelevare il colore con lo strumento contagocce e riempire l’area desiderata della nostra nuova magnifica bump map!

bumptemplate
E qui c’è il frutto del mio lavoro di oggi, la terza maglia blu dello Standard 2015-2016, realizzato facendo uso della tecnica illustrata. Nel file .rar che potete scaricare QUI  è compreso anche lo script per l’installazione automatica (aggiunge la maglia nel database senza pregiudicare carriere e tornei in corso di svolgimento); datelo in pasto all’Installer ed il gioco è fatto!

standardbumpblue

 

Precedente About the bump maps... Successivo Automatic update 2.1.2