Es mostren els missatges amb l'etiqueta de comentaris Blender Game Engine. Mostrar tots els missatges
Es mostren els missatges amb l'etiqueta de comentaris Blender Game Engine. Mostrar tots els missatges

divendres, 17 de juny del 2016

Modelat i animació d'un Renault Dauphine

En aquesta entrada modelaré i animaré un Renault Dauphine

Aquest cotxe va ser fabricat per Renault entre els anys 1956 i 1968. En aquest enllaç podeu trobar una gran quantitat d'informació sobre la seva història i mots altres temes relacionats amb aquest model.

 
He triat aquest model perquè apareix al còmic "Festival sobre quatre rodes" (Surboum pour quatre roues en versió original) de Gil Jourdan (Gil Pupil·la en la versió catalana) del dibuixant Tillieux. Publicat en català, traduït per Albert Jané a la revista "Cavall Fort" núm 184 a 206 , setembre de 1970 a juliol de 1971.

Algunes de les particularitats d'aquest cotxe és que portava la roda de recanvi en un compartiment darrera la placa de la matrícula de davant. Per això el paracops davanter té aquesta forma tan particular. Vegeu-ne una fotografia en aquest enllaç.

El motor i la tracció estan a darrera. Per tal de refrigerar hi ha unes característiques reixes de captació d'aire al costat de les portes de darrere.

El procediment ha estat el mateix que per al Renault 6, aplicant el modificador subdivision surface per a aconseguir un acabat similar al de les planxes metàl·liques.

He començat per l'aleta de davant, amb el seu ornament platejat, modelats com a dos objetes diferents.


He continuat pel capó, que porta els fars integrats.


 I de mica en mica la resta de peces de la carrosseria. El sostre encara està molt matusser.


He afegit els seients i els detalls de la part de darrere. Les reixetes de ventilació estan fetes amb textura, no amb geometria.


I finalment el cotxe acabat, amb l'escut de davant, els intermitents i els neteja-parabrises.


Un cop acabat el modelat li he adaptat un sensor de terra i un esquelet que ja tenia de models anteriors.

He provat un nou sistema de suspensió. Funciona força bé amb el cotxe aturat, però no he aconseguit bons resultats quan es mou:






Finalment he afegit un decorat que representa un enllaç de trèvol amb gespa i alguns arbres, he canviat el color de blau a groc (per fer-lo igual que surt al còmic) i he fet una petita animació del Dauphine i del R6. Aquest n'ha estat el resultat:




La música de fons és "Angel in Blue Jeans" del grup Train.

dimecres, 10 de juny del 2015

Cotxe funcional a la ciutat modular

En aquesta entrada he combinat els diferents elements de les entrades anteriors per tal d'obtenir un cotxe funcional i diversos cotxes no funcionals dins l'escenari de la ciutat modular.

Tot està suportat pel motor de jocs de Blender, Blender Game Engine.

1)

Pel que fa al cotxe funcional he utilitzat el Citroën Saxo que ja tinc modelat i he seguit l'interessantíssim tutorial d'en Bruno Alves  (Obrigado Bruno !!! ) que podeu trobar en aquest enllaç.

El fons de la qüestió és utilitzar una instrucció de Python  anomenada VehicleConstraint , que es pot parametritzar per adaptar-la a cada vehicle: distància entre rodes, diàmetre de les rodes, duresa de la suspensió, angle de gir de les rodes, etc...

També es poden parametritzar les tecles de control del vehicle, etc...


2)

Pel que fa als cotxes no funcionals he utilitzat el Nissan Patrol 60 que també tinc ja modelat.

Per tal de tenir més varietat n'he creat diverses copies i els he donat diversos colors, encara que la geometria és la mateixa.

Els cotxes han de reaccionar al contacte els uns amb els altres i amb els elements de l'escena, per tant els he donat propietats de cos rígid ( Rigid Body ), uns límits de col·lisió d'embolcall convex ( Convex Hull ) i una massa arbitraria de 100 uts.


3)

El món virtual té gravetat, és a dir, els cossos amb massa estan sotmesos a una força cap avall, això permet que funcioni la suspensió i també efectes realistes de caigudes, etc...

4)

Pel que fa a l'escenari, és la ciutat modular de l'entrada anterior. Li he afegit un arbre amb una textura amb transparència parcial.



5)

Per tal de poder tenir sempre en pantalla el vehicle actor, he afegit una càmera amb un actuador Camera que fa que la càmera segueixi el moviment del vehicle actor.

Aquests són els paràmetres que he triat.




6)

Un cop tot preparat he arrencat el motor de jocs i he obtingut el resultat que mostro en aquest vídeo de retalls escollits.

M'he hagut de barallar una mica amb l'Avidemux, però finalment he aconseguit posar els cartells de títol entre cada fragment de vídeo i les transicions entre  fragment i fragment.



dimarts, 17 de març del 2015

Espeleovideojoc (5) Comportament de la cabra

En aquesta entrada he tornat a posar-me amb l'espeleovideojoc.

Com que els treballs anteriors estaven fets en diferents arxius de Blender i també a causa d'una inestabilitat que m'apareixia i de la qual no he aconseguit trobar la causa, he decidit començar de nou.

En aquesta nova versió he modelat el personatge, l'entorn  les animacions d'una manera més senzilla, per tal que l'ordinador vagi més relaxat, a fer-ho més sofisticat ja hi arribaré...amb una mica de sort...

He afegit també alguns arbres (xiprers, que són fàcils de modelar).





Aquesta entrada ha estat feta basant-me en un interessantíssim  tutorial d'en ThaTimst3r sobre com modelar el comportament dels animals, que podeu trobar en aquest enllaç. Gràcies ThaTimst3r !!!

La idea és que l'animal tingui 3 diferents estats, denominats de la següent manera i amb el comportament següent:

Estat 1: Relaxat - L'animal pastura
Estat 2: Atent - L'animal mira cap a nosaltres i aixeca el cap
Estat 3: Fugint - L'animal es gira d'esquena a nosaltres i s'allunya caminant

Cadascun dels estats té associades unes accions diferents i hi ha unes regles per a passar d'un estat a l'altre:

En l'estat 1 es reprodueix l'acció de pasturar. És l'estat per defecte. Es passa a estat 2 quan ens hi acostem a menys d'una certa distància (distància de comoditat)

En l'estat 2 es reprodueix l'acció de vigilar i l'animal s'orienta cap a nosaltres. Es passa a estat 1 quan ens allunyem a més d'una certa distància (distància de comoditat). Es passa a estat 3 quan ens hi acostem a menys d'una certa distància (distància de por)

En l'estat 3 es reprodueix l'acció de caminar, l'animal s'orienta en direcció oposada a nosaltres, i s'allunya durant un temps prefixat. Després d'un cert temps es torna a avaluar la distància a nosaltres i s'assigna de nou l'estat que correspongui.

Finalment he aconseguit que el comportament funcioni i he creat quatre instàncies de la cabra, totes amb el mateix comportament.


I heus aquí el resultat,registrat amb el capturador de video Hypercam2, posteriorment li he afegit música amb Avidemux:


La música de fons és "Angel in Blue Jeans" del grup Train.

dissabte, 3 de gener del 2015

Espeleovideojoc (2) Elements per a moure el personatge i la càmera

En aquesta entrada crearé amb Blender els elements per tal de moure el personatge i la càmera. Seguint els tutorials 1 a 8 i 23  de Físico Molon, he creat successivament els elements necessaris (tots seran invisibles durant el funcionament normal del joc excepte el personatge):

Elements en la posició original



Element 1: (Invisible) És l'actor del joc, en polsar la tecla "W" es desplaça en la direcció de l'eix Y local. Rota sobre l'eix Z local amb el moviment dreta-esquerre del ratolí. Conté també unes instruccions en llenguatge Python (no sé res de Python  :-(   , m'he limitat a copiar el codi...  ) per a registrar la seva posició en els eixos globals i guardar-la en una variable de posició.

Element 2: (Invisible) És el punt a on mira la càmera. Es mou solidàriament amb l'element 1. Rota sobre l'eix X local amb el moviment endavant i endarrere del ratolí per tal de moure la càmera (element 3).

Element 3: (Invisible) És la càmera amb la qual veurem el videojoc. Es mou solidàriament amb el punt a on mira la càmera (element 2). Rota sobre l'eix X local amb el moviment endavant i endarrere del ratolí. Conté també unes instruccions en llenguatge Python per a desplaçar-se  sobre l'eix que uneix els elements 2 i 4, aproximant-se a l'element 2  quan hi ha obstacles visuals a prop, per tal de no perdre de vista el personatge.

Element 4: (Invisible) És el pla que limita la distància màxima a la qual es pot allunyar la càmera del personatge. Es mou solidàriament amb el punt a on mira la càmera (element 2). 

Element 5: (Invisible) És el punt a on mira el personatge quan es desplaça (quan està polsada la tecla "W"). Es mou solidàriament amb l'element 1.

Element 6: (Invisible) És el paral·lelepípede que conté el personatge. Conté també unes instruccions en llenguatge Python per a assignar la seva posició (però no la rotació) al mateix punt on estigui l'element 1. (Al gràfic s'ha representat desplaçat)

Element 7: (Invisible) És l'esquelet (armature) del personatge. Es mou solidàriament amb el paral·lelepípede (element 6). Té una sèrie d'accions (cicles de moviment, com ara caminar, saltar, respirar, etc...) ja animades que s'executen quan es polsa una tecla. Per exemple, en en polsar la tecla "W" s'activa l'animació de caminar cap endavant. Quan no s'està posant cap tecla, s'activa l'animació de respirar.

Element 8: (Visible) És la malla del personatge. Es mou solidàriament amb l'esquelet (element 7). Es deforma seguint els moviments de l'esquelet (element 7).


A continuació he reaprofitat l'animació de caminar que teníem del personatge Nina per a fer l'acció de caminar de l'espeleòloga i he creat una altra acció per a la situació de repòs (respirar i mirar a banda i banda)

I he creat un escenari provisional amb un prat, una cinglera i una cova molt elementals per tal de poder fer proves de funcionament.

Escenari sense destacar la cova

Escenari amb la cova destacada

Per tal de poder capturar l'acció del videojoc he instal·lat el programa Hypercam2, que permet capturar la imatge de la pantalla. El tractament del vídeo (retallar fotogrames i canviar el format) l'he fet amb el programa Avidemux.

A continuació adjunto una captura de vídeo del videojoc que mostra:
1) El moviment de la càmera, ( controlada pel ratolí ) entorn del personatge (quan no es polsa cap tecla )
2) L'acció de respirar i mirar a banda i banda (quan no es polsa cap tecla )
3) L'acció de caminar en la direcció oposada a la càmera (quan es polsa la tecla W , direcció controlada pel ratolí )



En properes entrades afegiré altres accions al personatge i intentaré crear un executable del videojoc.

divendres, 26 de desembre del 2014

Espeleovideojoc (1) Projecte per al 2015

En aquesta entrada esbossaré un projecte per a fer al llarg del 2015.

La intenció és fer un petit videojoc interactiu amb Blender, amb un personatge que ha de completar una sèrie d'accions per tal d'arribar al final del joc.

La idea m'ha vingut després de veure els tutorials de Físico Molon, una pàgina molt interessant sobre el tema dels videojocs amb Blender.

La temàtica bàsica serà una espeleòloga que ha de trobar una sèrie d'objectes per arribar al fons d'un avenc i treure alguna informació oculta, arqueològica o paleontològica que hi pugui haver.

El joc requerirà els següents passos:

1) Modelar i texturitzar un personatge principal

2) Crear una sèrie d'accions que fa aquest personatge:

-Cicle de caminar
-Cicle de córrer
-Cicle de pujar per una corda
-Cicle de baixar per una corda
-Cicle d'arrossegar-se
-Cicle de repòs (respiració i observació)
-...

3) Modelar i texturitzar un entorn natural :

-Muntanyes
-Boscos
-Arbres i plantes
-Cova amb pous i galeries

4) Modelar i texturitzar personatges secundaris:

-Cabres
-Porcs senglars
-Ratpenats
-Arqueòlegs i/o paleontòlegs
 
5) Crear una sèrie d'accions que fan els personatges secundaris:

-Cicle de pasturar per a animals exteriors
-Cicle de fugir per a animals exteriors
-Cicle de caminar per a les persones
-Cicle d'explicar i parlar per a les persones

6) Modelar i texturitzar objectes que caldrà utilitzar:

-Aparells de progressió
-Sacs
-Casc
-...

7) Crear una interactivitat que permeti moure el personatge i la càmara

8) Crear una lògica que obligui el personatge a comportar-se de diferents maneres segons l'entorn:

-Caminar en pla o llocs de poca pendent
-Pujar per corda en pous
-Arrossegar-se en llocs de sostre baix
-...

9) Crear una intel·ligència artificial per als personatges secundaris per tal que reaccionin a la presència del personatge principal, fugint o interactuant amb ell.

10) Crear un comptador del progrés del joc, que registri com es van complint els objectius.

... I moltes altres coses que aniran apareixent a mesura que el projecte avanci...

No em fixo cap termini per acabar-lo, aniré fent sense pressa...

De moment, per agafar inspiració, només he fet una modificació del personatge anterior (Nina) per a posar-li un casc i una granota  d'espeleòloga: