GDC

Fum, oglinzi și texturi derulante: în culisele lui TUNIC

Pentru a asigura o performanță optimă, Shouldice a folosit iluminare dinamică și iluminare globală (GI) în TUNIC și a luat în considerare cu atenție numărul de lumină: „Deoarece randarea amânată nu este acceptată cu camerele orto, numărul de lumină era ceva pe care trebuia să fiu atent. Am folosit GI precalculat pentru a face o mare parte din iluminare, mai degrabă decât lumini punctuale, și m-am sprijinit pe loturi pentru a menține apelurile la extragere scăzute.” Obișnuia să scrie shadere de mână, dar a decis să folosească shaderele bazate pe noduri Shader Forge pentru TUNIC . „Chiar dacă pot scrie cod, sunt o persoană destul de vizuală, așa că a fost eliberator să pot vedea previzualizări live și să-mi organizez gândurile în mod spațial”, continuă Shouldice. „Editorul de noduri a făcut clic cu creierul meu într-un mod foarte frumos. Este extrem de grozav și atât de distractiv!” De asemenea, Shouldice a folosit pe scară largă texturile de defilare pentru a ilumina elemente din lumea jocului, reducând substanțial complexitatea sarcinii, obținând în același timp rezultate superbe (și foarte performante). La începutul jocului, eroul lui TUNIC deschide o ușă de aur interacționând cu o statuie care emite un puls de lumină când este atinsă. Shouldice realizează acest efect utilizând câteva componente diferite în Editorul Unity și Shader Forge. Punctele inițiale de lumină – cunoscute sub numele de „starburst” – derivă din trei rețele animate, fiecare rotindu-se ușor desincronizat. Un „inel aură” în formă de gogoașă înconjoară aceste ochiuri și, proiectând o textură UV care se derulează de-a lungul acestui cilindru aplatizat, Shouldice face ca textura să defileze spre exterior, creând o strălucire radială. Pentru acest efect, coordonatele UV sunt derulate și multiplicate înainte de a fi inversate la sfârșit pentru a crea efectul strălucitor alb pe negru. Prin aplicarea texturii de defilare pe diferite rețele, Shouldice a reușit să schimbe comportamentul strălucirii. Într-un alt exemplu, el direcționează textura pe o plasă îngustă, în formă de con, pentru a crea efectul de coalescere a energiei magice către cer.

Read More

Smoke, mirrors, and scrolling textures: Behind the scenes of TUNIC

To ensure optimal performance, Shouldice used dynamic lighting and Global Illumination (GI) in TUNIC, and carefully considered the light count: “Because deferred rendering isn’t supported with ortho cams, light count was something I needed to keep an eye on. I used precomputed GI to do a lot of the lighting rather than Point lights, and leaned on batching to keep draw calls down.” He used to write shaders by hand, but decided to use Shader Forge’s node-based shaders for TUNIC. “Even though I can write code, I’m a fairly visual person, so it was freeing to be able to see live previews and organize my thoughts spatially,” continues Shouldice. “The node editor clicked with my brain in a really nice way. It’s supremely noodly, and so much fun!” Shouldice also made extensive use of scrolling textures to light up elements of the game world, substantially reducing the complexity of the task while achieving gorgeous (and highly performant) results. Early in the game, TUNIC’s hero opens a golden doorway by interacting with a statue that emits a pulse of light when touched. Shouldice achieves this effect by using a few different components in the Unity Editor and Shader Forge. The initial points of light – known as “starburst” – derive from three animated meshes, each rotating slightly out of sync. A donut-shaped “aura ring” surrounds these meshes, and by projecting a scrolling UV texture along this flattened cylinder, Shouldice makes the texture scroll outward, creating a radial glow. For this effect, UV coordinates are scrolled and multiplied before they’re inverted at the end to create the glow’s white-on-black effect. By applying the scrolling texture to different meshes, Shouldice was able to change the glow’s behavior. In another example, he funnels the texture up a narrow, cone-shaped mesh to create the effect of magical energy coalescing skyward.

Read More