Warning: file_exists(): open_basedir restriction in effect. File(/tmp/rvpuuusc.txt) is not within the allowed path(s): (/membri/blendergameengineitalia/:/membri2/blendergameengineitalia/:/membri/.dummy/) in /membri/blendergameengineitalia/wp-includes/plugin.php(437) : runtime-created function on line 1

Warning: file_exists(): open_basedir restriction in effect. File(/tmp/rvpuuusc.txt) is not within the allowed path(s): (/membri/blendergameengineitalia/:/membri2/blendergameengineitalia/:/membri/.dummy/) in /membri/blendergameengineitalia/wp-includes/plugin.php(437) : runtime-created function on line 1

Introduzione

L’ultima opzione della finestra Proprietà è una delle più importanti e riguarda la fisica degli oggetti. Nell’interazione di un gioco la fisica è importante perchè può essere un fattore determinante per il game play, oramai tutti i giochi sono basati su un sistema dove la gravità è presente; ricorda, però, che il mondo che crei non è reale e quindi tutto è simulato dal motore di gioco, che calcola in tempo reale moltissimi fattori di collisione in continuo cambiamento, per questo gli oggetti devono essere semplici per una migliore fluidità del gioco. Per esempio il player, il personaggio del giocatore, per quanto sia complessa la mesh che visualizzerà nel gioco, avrà un box invisibile per le collisioni che renderà il lavoro al motore di gioco più semplice.

Opzioni

Dal menù a tendina Physic Type è possibile scegliere i tipi di fisica per l’oggetto selezionato, essi sono : 

No Collision

Questa caratteristica esclude l’oggetto dalla simulazione della fisica. L’unica opzione è invisibile o visibile.

Static

Questa è la caratterista di default di ogni oggetto aggiunto alla scena, si usa di solito per gli oggetti che non si muovono nella scena, come il pavimento, un albero, un muro ecc ecc. Ha delle opzioni aggiuntive :

  • Actor Questa casella di spunta serve a fare rilevare l’oggetto dai Sensors Near e Radar.
  • Ghost L’oggetto non reagisce alle collisioni.
  • Record Animation Registra l’animazione degli oggetti senza fisica.
  • Invisible Rende l’oggetto invisibile.
  • Attributes In questo caso l’unico attributo è Radius, che è il raggio di delimitazione della sfera e del Materiale Fisico.
  • Anisotropic Friction E’ la frizione anisotropica, è la proprietà per la quale un determinato materiale ha caratteristiche che dipendono dalla direzione lungo la quale vengono considerate.
  • Collision Bounds tab E’ il limite di collisione, cioè un oggetto fisico con cui il motore interagisce nella creazione delle collisioni, che rispecchia la forma della mesh associata, le sotto opzioni sono :
    • Bounds sono i tipi di contenitori possibili, sono tutti adatti alle forme primitive e Convex Hull alle forme complesse.
    • Margin E’ un margine extra attorno all’oggetto per la rilevazione della collisione, un numero basso aiuta la stabilità.
  • Create Obstacle tab Per creare un’ostacolo fisico per le AI, l’unica opzione è il Radius per la simulazione dell’ostacolo.

Dynamic

Il tipo Dynamic è un oggetto che subisce l’effetto della gravità, si usa per oggetti che possono essere spostati nella scena col solo contatto. Ha un tipo di fisica lineare ottima per oggetti che non devono ruotare. Elencherò solo le opzioni diverse dal tipo precedente, che sono :

  • Use Material Force Field Spuntando questa opzione l’oggetto reagisce alla forza fisica settata nel Materiale Fisico.
  • Rotate From Normal Spuntando questa opzione l’oggetto usa la normale per ruotare.
  • No Sleeping Disabilita l’auto de-attivazione fisica dell’oggetto, vista nelle Proprietà del mondo 3D.
  • Attributes Oltre al Radius visto prima abbiamo :
    • Mass La massa dell’oggetto, il peso.
    • Form Factor Fattore d’inerzia.
  • Velocity Limita la velocità a tra quei fattori Minimum e Maximum, se lasciati a zero la velocità non viene limitata.
  • Damping E’ lo smorzamento della Translation (traslazione) e della Rotation (rotazione).

Rigid Body

Il tipo Rigid Body (corpo rigido) è spesso usato come base per il giocatore, anche se nelle ultime versioni di Blender è stato implementato il tipo Character; anche questo tipo subbisce la gravità. Ha un tipo di fisica sia lineare che angolare. Le uniche opzioni in più rispetto al tipo Dynamic sono :

  • Lock Translation Disabilita la simulazione del movimento lineare nell’asse selezionato.
  • Lock Rotation Disabilita la simulazione del movimento angolare nell’asse selezionato.

Soft Body

Con questa opzione si possono creare oggetti morbidi o tessuti. I tessuti devono avere degli ancoraggi chiamati Hinge che si possono aggiungere dalle opzioni Constraints, la finestra con l’icona della catena (quest’arogmento sarà tema per un tutorial). Le opzioni sono :

  • Position Iterations E’ il grado di morbidezza dell’oggetto (da 0 a 10), in ogni caso l’oggetto resta morbido.
  • Linear Stiffness rigidità lineare dei collegamenti dei vertici del corpo morbido nelle collisioni.
  • Friction Attrito dinamico.
  • Margin Margine di collisione del Soft Body, l’algoritmo è instabile con valori bassi.
  • Bending Constraint Questa opzione aiuta a mantenere la forma della curvatura del Soft Body.
  • Shape Match Questa opzione serve a tenere l’oggetto nella sua forma originale, aumentando il Threshold si avvicina alla forma originale.
  • Cluster Collision Questa opzione attiva il raggruppamento tra corpo rigido e morbido e tra corpo morbido e morbido, l’Itaration è il valore tra i due stadi, più basso è e più si avvicina allo stato di base, rigido se la spunta è sul primo e morbido se è sul secondo.

Occluder

Questo tipo serve per l’ottimizzazione della scena, si usa un’oggetto interno ad un’altro che non si vede ma che agisce come una maschera nascondendo gli oggetti sul retro alla vista indiretta della camera, cioè che nella visuale in game play non si vedono, ma vengono comunque renderizzati, quindi il motore ne risente. In questo modo solo quando la camera verrà a diretto contatto visivo con gli oggetti sul retro l’occluder non sarà più in primo piano e si vedranno.

Sensor

Individua la presenza di altri oggetti dinamici e statici, non gli altri sensor. Per fare un esempio si può usare per creare delle aree invisibili (trigger) dove quando il giocatore entra, e quindi collide col sensor, accade qualcosa per esempio : parte un’animazione, oppure cambia la musica, oppure cambia la luce o arrivano dei nemici, ecc ecc.

L’unica opzione è Detect Actor  l’oggetto dai Sensors Near e Radar.

Nota. Non ha niente a che vedere con i Sensors dei logic Bricks.

Navigation Mesh

Una volta creata una Navigatin Mesh è possibile attraverso i due pulsanti di :

  • NavMesh Reset Index Value Assegna un nuovo indice alle faccie della mesh.
  • NavMesh Clear Data Rimuove i dati dalla Navigation Mesh.

Character

Quest’ultimo è quello che interessa di più in termini pratici, è il tipo che da al nostro personaggio la fisica ideale per muoversi nel mondo 3D. Le opzioni sono :

  • Step Height Altezza massima che l’oggetto può oltrepassare, come uno scalino o un marciapiede.
  • Jump Force La forza del salto.
  • Fall Speed Max Velocità massima di caduta dell’oggetto.

Nota. Questa ultima tipologia fisica va accoppiata all’Actuator Motion con l’opzione Character.


Warning: file_exists(): open_basedir restriction in effect. File(/tmp/rvpuuusc.txt) is not within the allowed path(s): (/membri/blendergameengineitalia/:/membri2/blendergameengineitalia/:/membri/.dummy/) in /membri/blendergameengineitalia/wp-includes/plugin.php(437) : runtime-created function on line 1

Leave a Comment.


Warning: file_exists(): open_basedir restriction in effect. File(/tmp/rvpuuusc.txt) is not within the allowed path(s): (/membri/blendergameengineitalia/:/membri2/blendergameengineitalia/:/membri/.dummy/) in /membri/blendergameengineitalia/wp-includes/plugin.php(437) : runtime-created function on line 1

Warning: file_exists(): open_basedir restriction in effect. File(/tmp/rvpuuusc.txt) is not within the allowed path(s): (/membri/blendergameengineitalia/:/membri2/blendergameengineitalia/:/membri/.dummy/) in /membri/blendergameengineitalia/wp-includes/plugin.php(437) : runtime-created function on line 1