dilluns, 24 de novembre del 2014

AT-AT (2) Element mòbils de les potes

En aquesta entrada he modelat força detalls de les potes, i he animat el moviment de les petites peces mòbils de les articulacions i de la "cuixa".

També he perfeccionat alguns punts del moviment general en el que hi havia defectes de moviment.

Com que ja tenia creada una jerarquia pare-fill i l'animació amb les peces "antigues", he decidit mantenir-les com a "esquelet" en una capa oculta i crear les noves i mes detallades, fent-les filles de les antigues.
Les noves les he creat amb duplicats enllaçats, de manera que modificant una sola "cuixa" es modifiquen les 4 a la vegada.

Les peces mòbils ( 1 i 2) que corren sobre guies a la "cuixa" es mouen per que tenen una restricció "transformation" que llegeix la rotació del tram inferior de la pota i la converteix en desplaçament en l'eix vertical local de la "cuixa".

Les peces del "genoll" (Peça 3) i de l' "espatlla" (Peça 4)  giren per que tenen una restricció "transformation" que llegeix la rotació del tram inferior de la pota i la converteix en rotació de la peça del genoll.




A continuació mostro el detall de la restricció "transformation" de la peça mòbil del "genoll" (peça 3) de la pota de darrera a la dreta, que gira sobre l'eix X entre 80 i -80 graus, multiplicant per 4  l'angle de la "tíbia" d'aquesta mateixa pota (que gira entre -20 i 20 graus).



No he aconseguit entendre la lògica del moviment i rotació d'aquestes peces, tot i que he analitzat diverses seqüències de la pel·lícula on apareixen. En fí, suposo que el més important és que es moguin.

He animat també el moviment de la càmera, de manera que va endavant i endarrera i he modificat la textura del terra, per tal que sigui múltiple de la longitud recorreguda en un cicle i no s'apreciï la transició entre cicles en la repetició.



En properes entrades milloraré els detalls del cap i del cos.

dijous, 20 de novembre del 2014

AT-AT (1) Cicle de caminar

En aquesta entrada animaré el cicle de caminar d'un vehicle quadrúpede AT-AT ( All Terrain Armored Transport ), de la pel·lícula "L'Imperi Contraataca" ( Star Wars Episode V: The Empire Strikes Back ) i per a fer-ho, el  modelaré amb Blender de manera molt bàsica.

Per començar he analitzat un video de youtube amb la sequència de la pel·lícula on apareixen aquests vehicles: Video

A partir d'aquí he fet un esquema dels moviments de les cames i de la durada de cada moviment, en temps i en fotogrames. Finalment he fixat un cicle de 150 fotogrames.

Feu clic amb el botó esquerre per ampliar la imatge








El vehicle aixeca només una pota cada vegada i les altres tres es van inclinant progressivament cap endavant, fent avançar el cos. Les articulacions giren contínuament per tal de mantenir l'angle de les potes horitzontal.

El moviment cap endavant del cos no és uniforme, sinó que es concentra principalment en els moments en que avancen les potes de davant, de manera que va fent batzegades. A més a més el cos rota lleugerament sobre l'eix transversal, de manera que va fent "capcinades".

Els peus tenen una mena d'"esmorteïdors", per absorbir les sotragades, de manera que el peu "puja i baixa" respecte la pota. I també té unes "ungles" que es pleguen una mica mentre el peu està aixecat.

La velocitat d'avanç l'he fixat en 3,5 metres per cada cicle. Aquesta dada cal tenir-la en compte per a poder col·locar correctament les potes a terra (longitud del pas)

Feta l'anàlisi del moviment he modelat de manera bàsica el vehicle. Em centraré en el moviment de caminar, de manera que no m'entretindré en els detalls del vehicle, que deixaré per una altra entrada.

Model de l'AT-AT



Com que l'AT-AT no té parts deformables (excepte el coll) no faré servir un esquelet sinó que amb la jerarquia pare-fill i la limitació dels girs de les parts ja en tindré prou.

i finalment he renderitzat una versió de prova de l'animació:



En properes entrades milloraré l'aspecte del vehicle i afegiré detalls.



diumenge, 2 de novembre del 2014

Avió Polikarpov I-16 (3)

En aquesta entrada em dedicaré a l'aparellatge (rigging) de l'avió.

L'aparellatge consisteix en crear una sèrie de peces mòbils, unides entre elles per articulacions. En el cas de personatges podem parlar d'ossos i esquelets, ja que reprodueixen els ossos reals de persones i animals. Crearem també  (de vegades)  manipuladors, elements que de vegades no existeixen en el món real, però que ens permeten moure els nostres personatges (de manera similar com els fils de les marionetes mouen la marioneta propiament dita). O bé que sí que existeixen com a controls (per exemple un volant de cotxe que fa girar les rodes, activa l'intermitent, etc...)

Un avió té una sèrie d'elements (superfícies de comandament) que permeten pilotar-lo. Les superfícies de comandament es mouen quan el pilot quan el pilot mou el volant o els pedals: en aquest enllaç s'explica el funcionament i els comandaments associats a cadascun.

En el cas de l'avió faré l'aparellatge dels següents elements:

 

Per començar he modelat els controls virtuals sobre l'avió. Estan tots en una capa a part per tal de poder-los amagar fàcilment i situats físicament sobre l'avio.


A continuació he limitat el moviment/rotació possible de les agulles de control, per evitar que "s'escapin" de la seva posició o que sobrepassin el rang de rotació que els pertoca. per això he fet servir la limitació (constraint) denominada limit rotation per a les agulles giratòries i limit location per a la que es desplaça.

L'agulla que controla el tren d'aterratge només es pot moure en l'eix Z entre Z=5.4 i Z=6.4

Després he associat el moviment o rotació de cada element al seu manipulador (agulla). Per a casos senzills he fet servir la limitació copy rotation i per a casos complexes (al tren d'aterratge) he fet servir la limitació transformation.

La barra principal que suporta la roda prendrà el valor de gir sobre l'eix Y -14º quan l'agulla de control estigui a la posició Z=5.4 m i prendrà el valor de gir sobre l'eix Y 41º quan l'agulla de control estigui a la posició Z=6.4 m

Per al cas del cable que estira el tren d'aterratge, he utilitzat un òs (bone) que varia la seva escala entre la mida original i zero, per tal de simular que el cable es va recollint.

Fetes aquestes operacions, l'avió és molt més fàcil d'animar, ja que enlloc de manipular les peces mòbils (algunes de mides petites, altres amagades dins el cos, altres amb moviments complexos, etc...) n'hi ha prou amb animar un gir o desplaçament del controlador oportú.

Finalment he creat un objecte buit (empty) per a controlar la posició de l'avió, mentre que la rotació es fa girant el cos de l'avió.

Ara ja he pogut preparar una animació més sofisticada amb un envol i un aterratge sobre un aeroport (Aeroport de Sabadell, imatges extretes de Google Maps), amb una vista des de darrera de l'avió per tal de poder veure com es mouen les superfícies de comandament i el tren d'aterratge. L'animació ha quedat una mica brusca, però la intenció era provar tots aquests comandaments.

diumenge, 5 d’octubre del 2014

Avió Polikarpov I-16 (2)

En aquesta entrada milloraré alguns detalls del model i de la textura, i animaré l'hèlix i el tren d'aterratge.

Pel que fa a les millores del model i la textura són les següents:

-He afegit el petit tren d'aterratge posterior.
-He modelat la part de la cabina del pilot
-He afegit a la textura alguns detalls del morro
-He ressaltat a la textura els alerons, flaps i timons
-He ajustat a la textur a la unió de línies en les costures, per dissimular les discontinuïtats que hi havia

I aquest ha estat el resultat:



A continuació he buscat informació sobre el funcionament del tren d'aterratge. 

M'ha sigut de molta ajuda l'apartat de models del lloc web d'en Segrelles on he trobat informació del mecanisme i una animació.

I també una entrada d'un fòrum polonès sobre modelat amb un model molt detallat:

El Polikarpov I-16 tenia un tren retràctil d'accionament manual format per tres barres. El pilot el recollia fent girar una manovella que estirava un cable unit a cada roda.

La pota principal està unida al cos amb una articulació doble (detall fletxa groga) que he modelat de forma bàsica però funcional. A més a més també està articulada la part inferior de la tapa (detall fletxa blava):


Detall de la vista anterior: es mostren els dos eixos de gir

 Les altres dues potes estan unides també al cos amb articulacions dobles, una de les quals és, a més lliscant.



I per acabar la roda i el cable de recollida.

Un cop he acabat el modelat del tren d'aterratge ja he pogut fer "aterrar" l'avió. Vet aquí la primera imatge de l'avió a terra.


El següent pas ha estat l'animació de l'hèlix, que comparat amb la del tren retràctil ha estat molt fàcil.

I finalment adjunto dues animacions:

- Una vista exterior del tren amb el moviment de recollida.
- Una vista de detall de les articulacions



dimarts, 30 de setembre del 2014

Avió Polikarpov I-16 (1)

En aquesta entrada modelaré amb Blender un avió de caça. Faré una versió amb poc detall i (potser) en entrades posteriors hi dedicaré més temps, animant el moviment de l'hèlix, el tren d'aterratge, els alerons, etc...

He triat el model Polikarpov I-16, que va ser el primer avió de caça monoplà amb tren d'aterratge retràctil.

El motiu d'haver triat aquest aparell és que n'he vist força informació al CIARGA de Santa Margarida i els Monjos, incloent models a escala.

Es va fer servir a la guerra civil espanyola, a les guerres ruso-japoneses de 1939 i al front oriental de la segona guerra mundial, entre d'altres.

Els plànols els he tret del lloc web: http://harrysite.net/hsrefs/index.php/aircraft/1933-I-16

El modelat del cos ha consistit en adaptar una forma inicial (un cilindre) fins a donar-li la forma del buc de l'avió, recolzant-me en les vistes de planta, alçat i perfil. Com que l'avió és simètric he fet servir el modificador de simetria (mirror)




A continuació he deformat la part superior del cos per tal de formar la cabina i l'estabilitzador vertical:


 Per a les ales he extruït algunes cares del buc cap a l'exterior.


I, de manera similar, per als estabilitzadors horitzontals.


L'hèlix l'he modelat com un element a part, a partir d'un con i d'un paral·lelepípede.


I, a la part inferior he marcat les parts mòbils que amaguen el tren d'aterratge retràctil. De moment segueixen formant part del fuselatge. Només estan diferenciades pel color.


I les parts mòbils: els alerons, els timons de profunditat i el timó de cua. De moment segueixen formant part del fuselatge. Només estan diferenciats pel color.

Aquí dono per acabada la fase de modelat, al nivell de detall que vull, ara per ara.


A continuació m'he dedicat a fer el mapejat UV, separant les cares del model en "illes". Aquesta configuració l'he exportat a GIMP per tal de poder donar-li els colors.


 Per als colors faré dues versions.

La primera correspon als colors dels avions de la República durant la guerra civil espanyola 1936-39:



 La segona correspon als colors dels avions de la Unió Soviètica (1941):


I finalment, aquí tenim el resultat:






diumenge, 21 de setembre del 2014

Animació d'una grua d'obra

En aquesta entrada passaré de les 3 a les 4 dimensions, incorporant el temps. És a dir no generaré amb Blender una imatge estàtica sinó un petit video.

Com que als blogs no es poden penjar videos directament, he hagut de seguir un procediment, que he agafat del blog del CEIP Pere Casasnovas de Ciutadella, i que utilitza l'eina BOX.

La meva intenció és modelar i animar una grua torre de ploma horitzontal (la típica grua d'obra ) movent caixes. En aquest cas només he fet un model molt elemental de la grua, i sense textures, per tal que els temps de renderitzats no sigui massa gran.

A continuació adjunto alguns detalls del modelat de l'escena.

Element de la torre

Extrem de la ploma



Contraploma i contrapesos

Carro mòbil i ganxo
Caixes per a moure

I finalment aquesta és la nostra escena, que ens servirà per fer la primera animació.



L'animació amb Blender consisteix em marcar fotogrames clau (keyframe) per als objectes i indicar-ne l'estat de les seves propietats (posició, rotació, escala, color, etc...) i les característiques de la transició entre dos fotogrames clau.

Exemple dels moviments de la caixa 3. La línia blava representa la coordenada Z



Per al moviment del cable he fet una mica de trampa, i no és moviment, sinó que el deformo, ampliant-lo en l'eix z per a simular el moviment de baixada del ganxo i el torno a deformar, reduint-lo en l'eix z per a simular el moviment de pujada del ganxo.

I finalment aquest és el resultat que he obtingut. Hauré de perfeccionar una pila de coses, però estic content del resultat, tenint en compte que és la meva primera animació amb Blender...




dilluns, 15 de setembre del 2014

Panot Flor i mapa de normals

En aquesta entrada modelaré un panot dels que es fan servir per pavimentar les voreres de la Ciutat de Barcelona, concretament el conegut com a "flor". I aprofundiré en l'estudi dels materials a Blender amb l'aplicació del mapa de normals (normal map).

Més informació sobre el panot flor:
http://www.btv.cat/btvnoticies/2014/05/07/el-panot-de-flor-laposta-de-lajuntament-per-a-la-ciutat/
http://www.ara.cat/barcelona/panot-simbol-barceloni_0_1115888589.html
http://cmans.wordpress.com/2013/08/06/panots-de-barcelona/

Primerament el modelat de la rajola, donat que té simetria en dos eixos, només en modelaré un quadrant. Un cop fet el cos, he modelat els toroides que formen la flor i, amb el modificador booleà els he restat del cos anterior. Finalment he aplicat els dos modificadors de simetria.




I finalment aquest és el model acabat, encara sense aplicar materials.Cada quadrant té 284 cares, és a dir, cada rajola té 1136 cares.


Normalment el paviment no és la nostra prioritat en una escena, per tant és absurd consumir tants recursos (per la quantitat de cares que té) i es fa servir una versió simplificada. Una sola cara, amb una imatge de la rajola amb un mapa de normals aplicat (que dona informació de com aquella superfície reflexa la llum)

El mapa de normals (normal mapping) és una representació sobre un pla i en l'escala de colors RGB de la inclinació de les normals a una superfície. on els valors de R (red, vermell) representa la component X de la normal, els valors de G (green, verd) representa la component Y de la normal i els valors de B(blue, blau) representa la component Z de la normal.


Per tal de mostrar-ho amb més claretat, vegem l'exemple de sota: La superfície en forma de muntanya està formada per moltes cares, i cadascuna té una normal (vector unitari tridimensional ) diferent en cada punt. Sobre ella hi ha un pla, on representarem com a colors RGB les tres components de la normal en cada punt, segons els eixos X,Y i Z.

Així, al cim de la "muntanya" la normal té només component en la direcció de l'eix Z+, o sigui que tindrà color 100%  B  i 50% G  i 50% R. A la part dreta (vessant X+) la normal és predominant en la direcció X+ (100% R vermell) i quasi nul·la en les altres 50%  B i 50% G, mentre que a l'esquerra és predominant en la direcció X- (0% vermell) i quasi nul·la en les altres 50%  B i 50% G. A la part superior (vessant Y+) la normal és predominant en la direcció Y+ (100% verd) i quasi nul·la en les altres 50%  B i 50% R, mentre que a la part de baix és predominant en la direcció Y- (0% verd) i quasi nul·la en les altres 50%  B i 50% R


El càlcul en cada punt d'una superfície de les tres components del vector normal és doncs, un problema exclusivament geomètric, però complicat per la gran quantitat de cares. Afortunadament Blender disposa d'un mecanisme de càlcul, que s'anomena Bake (traducció aproximada "enfornar", posar al forn a coure's), dins de l'ordre Render.

A continuació he creat un pla sobre el panot, sobre el qual projectaré les normals:



I aquest és el mapa de normals del nostre panot, un cop desada la imatge, es pot utilitzar per a perfeccionar el material del panot.


A continuació he fet una comparació dels resultats obtinguts amb 9 panots modelats completament "geometria real" (esquerra), amb un total de 10224 cares i un únic pla (1 sola cara) amb mapa de normals aplicat (dreta). La textura del material és idèntica per a tots dos casos (una textura de formigó gris) i no mostra els cercles. 

La imatge dels cercles es deguda únicament a la geometria (esquerra) i al mapa de normals (dreta)


Per a perfeccionar l'aparença he fet servir una fotografia de 4x4 panots. Hem guanyat en realisme ja que les parts fondes són d'un clor més clar. Vegeu que a la imatge de la dreta dreta el primer i tercer panots són iguals (taca blanca a la part inferior esquerra) mentre que a la imatge de l'esquerra, cada quadrant de panot és idèntic, efecte arrossegat pel modificador de simetria aplicat en el modelat de la geometria.


Finalment, cal dir que en vistes properes, lògicament, es perd la "màgia" d'aquest efecte. A la imatge següent es mostra, a dalt, els detalls de la geometria real, i a la part inferior, el el pla amb mapa de normals.


En qualsevol cas l'ús adequat d'una bona textura complementada amb mapa de normals permet estalviar molt de temps de càlcul per a vistes de lluny i deixar la complexa geometria real per a vistes de prop.