Tom's Hardware Italia
Giochi PC

Come si costruisce la fisica in un videogioco?

Pagina 1: Come si costruisce la fisica in un videogioco?
Che cos’è un motore fisico? La risposta semplice è questa: un programma in grado di simulare con un certo grado di approssimazione, fenomeni fisici reali. Com’è ovvio che sia, dietro questa risposta, si celano argomenti molto più complessi e profondi. Vogliamo quindi partire – com’è ancora più ovvio che sia – da una domanda: perché […]

Che cos’è un motore fisico? La risposta semplice è questa: un programma in grado di simulare con un certo grado di approssimazione, fenomeni fisici reali. Com’è ovvio che sia, dietro questa risposta, si celano argomenti molto più complessi e profondi. Vogliamo quindi partire – com’è ancora più ovvio che sia – da una domanda: perché ci serve un motore fisico?
29snt by blueflytrap998 dbcet4s

Uno degli aspetti fondamentali nei videogiochi è tra i più nascosti: l’immersione. Da sempre il videogioco – e prima ancora il gioco di ruolo – sono strutturati attorno all’immersione del giocatore nel mondo creato dallo sviluppatore (o nel caso di D&D, dai giocatori e della leggendaria figura del “master”). Per immergerci in un mondo abbiamo però bisogno di regole, e anche se esse non necessariamente rispettano quelle della realtà, debbono essere coerenti al fine di garantire l’immedesimazione, ma soprattutto debbono semplicemente essere.

Prendete in mano un qualsiasi oggetto, se aprite improvvisamente le mani, che cosa accade? La risposta è facile ed intuitiva: esso precipita. L’esperienza ci dice che questo accade ogni volta che lasciamo un oggetto in balia della gravità, una delle forze più importanti – e misteriose – della fisica. Il vostro oggetto (speriamo non l’abbiate fatto se stavate leggendo con un dispositivo multimediale) cade a terra secondo delle regole ben precise: L’accelerazione è uguale a quella di gravità; La velocità è quella iniziale (nel nostro caso zero, sempre che non abbiate lanciato l’oggetto!), sommata all’effetto della gravità per il tempo in cui agisce; lo spazio percorso è un po’ più complicato: sommiamo allo spazio iniziale (ma noi ci mettiamo nello zero, per comodità) metà della gravità per il quadrato del tempo impiegato (½*g*t2 ).

Super Mario Bros
Molto spesso nei videogiochi, al contrario della realtà, la velocità di caduta è una costante. Mario ne è un esempio classico.

Ora pensiamo a quello che succede quando il nostro oggetto tocca terra: impatta con una certa forza, rimbalza verso l’alto, poi ricade, magari rimbalza – impercettibilmente – ancora una volta. Forse si apre, o forse resta chiuso. Se dovessimo mettere in formula questa sequenza di eventi ci metteremmo moltissime pagine.

Perché? Perché non abbiamo ipotizzato un corpo puntiforme, ma ci troviamo di fronte a qualcosa di rigido, ma soprattutto perché le leggi della fisica possono divenire complesse quando prendono in considerazione molte informazioni, e quando interagiscono tra loro risultano meno intuitive di quanto si possa pensare.

Mettetevi nei panni di uno sviluppatore di videogiochi, che si trova di fronte a questo problema: il protagonista del videogioco ha in mano un libro, il libro cade. Lo sviluppatore inizia a sudare freddo, perché si trova di fronte a diverse opzioni: 1) Fare finta di nulla, il libro cade e non rimbalza. Perdiamo però un po’ di realismo. Peccato! 2) Creare uno “script”, ovvero un copione che dice per filo e per segno cosa fare al libro, fotocopiando la realtà. Una soluzione comoda, che offre un buon compromesso tra realismo e lavoro. 3) Inserire nel gioco un motore fisico, che faccia valere all’interno del mondo virtuale le nostre leggi fisiche. Un compromesso più complesso, ma anche più realistico. E diciamolo pure: molto più elegante che la soluzione al punto numero 2.

Glory 5

Il motore fisico di un videogioco è quindi l’elemento che da in pasto al processore in tempo reale le giuste formule, in modo tale che di fronte ai nostri occhi appaiano poi le interazioni volute dagli sviluppatori. Quando la nostra auto si schianta, quando un muro crolla, quando la palla rimbalza, quello è il motore fisico del videogioco che lavora assieme alla CPU e alla scheda grafica per fornirci un’esperienza realisitca. Questo è il primo modo con il quale scienza e videogiochi collaborano, ma non è l’unico.

Come ogni motore che si rispetti, anche quello fisico di un videogioco è composto da diverse parti. In primo luogo c’è da specificare che pensare di creare una simulazione realistica sfruttando la comune CPU di un computer di fascia medio-alta è da pazzi.

Zelda Bow
Parlando di motori fisici incredibili, è impossibile non pensare a Zelda.

Da sempre c’è una distinzione netta tra Super-computer, in grado di simulare fenomeni fisici complessi, e computer “da gaming”, associati a motori fisici di gioco che per quanto complessi risultano inevitabilmente limitati.


Tom’s Consiglia

Potete scoprire tutti i segreti del motore fisico di Breath of the Wild, solamente giocandolo.