tag:blogger.com,1999:blog-89509742009-07-13T06:31:33.278+02:00César Sáez - CG ArtistCésar Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.comBlogger138125tag:blogger.com,1999:blog-8950974.post-45737318940896933062009-07-09T15:19:00.000+02:002009-07-09T15:26:23.549+02:00Scatter for Softimage XSIHace unos días me preguntaron por un scatter para Softimage y tras mirar los que existen me sorprendió no encontrar nada decente (todos son antíguos y poco flexibles), finalmente decidí hacer el mio propio basándome en ICE y bakeando luego las partículas a geometría (clones) para evitar las limitaciones que implica tener los elementos instanciados sobre partículas.<br /><br /><object width="400" height="210"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5521156&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5521156&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="210"></embed></object><p><a href="http://vimeo.com/5521156">csScatter</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-4573731894089693306?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com1tag:blogger.com,1999:blog-8950974.post-22346827825971495512009-06-14T20:27:00.003+02:002009-06-14T20:37:19.959+02:00Tengo un nuevo amigoDespués de pensarlo muuuucho por fin me he instalado <a href="http://www.sidefx.com/index.php?option=com_content&task=view&id=589&Itemid=221">la versión Apprentice de Houdini</a> :)<br /><br />Dentro de poco y a medida que haga mis pinitos iré subiendo cosas, creo que Houdini ha llegado para quedarse, cuantas posibilidades!<br /><br />Saludos<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-2234682782597149551?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com7tag:blogger.com,1999:blog-8950974.post-25029993177743453202009-06-05T02:38:00.003+02:002009-06-05T02:48:24.716+02:00Rain SystemContinuando con la investigación anterior, todo 100% procedural.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5009662&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5009662&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><p><a href="http://vimeo.com/5009662">Rain System</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-2502999317774345320?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com5tag:blogger.com,1999:blog-8950974.post-6079586754270601472009-06-03T02:35:00.006+02:002009-06-05T02:45:15.393+02:00Deformando geometría con partículasUna prueba de martes por la noche (100% procedural)<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4972376&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=4972376&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><p><a href="http://vimeo.com/4972376">Deforming geometry with particles</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-607958675427060147?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com0tag:blogger.com,1999:blog-8950974.post-9268347167615926502009-05-24T18:57:00.003+02:002009-05-24T19:09:28.030+02:00Foco RigHola,<br /><br />Hace algunos meses hice este rig para mis amigos de <a href="http://www.ideasfijas.com">Ideas Fijas</a> y decidí subir un vídeo mostrando más o menos en que consiste, no está del todo terminado como quisiera (me quedé con las ganas de hacer una interface y tal) pero estoy satisfecho con el resultado general.<br /><br />Espero que les guste.<br /><br /><object width="400" height="210"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4812229&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=4812229&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="210"></embed></object><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-926834716761592650?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com5tag:blogger.com,1999:blog-8950974.post-45266453807329927082009-05-23T01:29:00.006+02:002009-05-23T17:07:27.308+02:00SkinWrap... o algo asi.Hola, hoy me han comentado sobre si existe alguna forma de hacer un SkinWrap en XSI y resultó ser un tema bastante interesante.<br /><br />En principio supuse que un ShrinkWrap se podría pero como el operador se evalúa en tiempo real (re proyectándose cuadro a cuadro) no se logra exactamente lo mismo y para algunas cosas sería preferible establecer una relación entre vértices y realizar las deformaciones desde ahí. Luego pensé en el cage deformer (que se supone que es lo más parecido) pero lamentablemente no me ha funcionado del todo bien en mis pruebas.<br /><br />En vista de esto hice un pequeño prototipo de SkinWrap, no es nada demasiado sofisticado pero al parecer funciona y me ha hecho ilusión colgar un videíllo del "invento".<br /><br />Espero que les guste :)<br /><br /><object width="400" height="340"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=4792177&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=4792177&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="340"></embed></object><p><a href="http://vimeo.com/4792177">SkinWrap prototype</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-4526645380732992708?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com1tag:blogger.com,1999:blog-8950974.post-34494135744960735772009-05-12T02:51:00.006+02:002009-05-12T16:07:55.432+02:00Granada, allá voy! (parte 2)Alguien se acuerda de <a href="http://csaez.blogspot.com/2008/12/granada-all-voy.html">esto</a>?<br /><br />El próximo lunes 18 de Mayo por fin puedo viajar! han sido laaaargos 4 meses de burocracia y papeleo que felizmente están llegando a su fin. Muchas gracias a Kandor por su paciencia y por todas las molestias que se han tomado para hacerlo posible, y por supuesto a Iker por su gestión y apoyo... pensar que han pasado 7 meses desde el primer contacto, que rápido pasa el tiempo.<br /><br />Todo esto me hace reflexionar sobre lo distanciado que estamos los unos de los otros, sobre si realmente somos tan diferentes, sobre si es "justo" negarle a una persona la oportunidad de acceder a las oportunidades que se dan en otra región simplemente por no haber nacido en ella (y que por cierto son fruto del abuso e inequidad económica entre ambos países), sobre si finalmente es taaaan importante el punto geográfico donde nacimos frente a lo que construimos concientemente durante nuestras vidas...<br /><br />En fin, no es que halla sufrido discriminación ni nada de eso, me han tratado bastante bien y todos han hecho lo posible por resolver esta situación lo antes posible (lo cual se los agradezco mucho), es sólo que estar en esta situación te hace repensar un par de cosas y me pareció importante compartirlas, somos personas ante todo. :)<br /><br />Un abrazo<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-3449413574496073577?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com11tag:blogger.com,1999:blog-8950974.post-11823393234358479562009-03-30T05:49:00.003+02:002009-04-01T03:51:17.249+02:00Flores y la serie de FibonacciUn intento de reproducir el patrón de la cabeza de una flor (<a href="http://www.suncitydesign.com/portfolio/photos/zoom-sunflower.jpg">por ejemplo esta</a>) usando ICE y algo de matemáticas ;)<br /><br /><object width="400" height="270"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3916673&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1"><embed src="http://vimeo.com/moogaloop.swf?clip_id=3916673&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="270"></embed></object><br /><a href="http://vimeo.com/3916673">Flowers head and Fibonacci Series</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com/">Vimeo</a>.<br /><br /><a href="http://img25.imageshack.us/img25/5771/usingidicetree.jpg" target="_blank"><img src="http://img25.imageshack.us/img25/5771/usingidicetree.th.jpg" border="0"/></a><br /><br /><span style="font-size:78%;">Típico ejercicio que no le importa a nadie salvo a uno mismo...</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-1182339323435847956?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com4tag:blogger.com,1999:blog-8950974.post-3871447360323403912009-03-26T22:15:00.002+01:002009-06-05T02:45:15.394+02:00Sticky ParticlesUn pequeño experimento procedural hecho en ICE, inspirado en el sistema de <a href="http://www.horaciomendoza.com/index.php?option=com_content&task=view&id=23&Itemid=1">Horacio</a>.<br /><br /><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3870654&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3870654&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /><a href="http://vimeo.com/3870654">Sticky Particles</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-387144736032340391?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com0tag:blogger.com,1999:blog-8950974.post-71387969226754563852009-03-24T03:52:00.003+01:002009-06-05T02:45:15.394+02:00csStretchDespués de bastante tiempo al fin me dispongo a estudiar más seriamente las posibilidades que ofrece <a href="http://www.softimage.com/products/xsi/ice/">ICE</a> y como ejercicio decidí recrear un stretch deformer (no-linal), no fue nada fácil pero finalmente di con esto :)<br /><br />Espero que les guste.<br /><br /><object width="400" height="341"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3827160&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3827160&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="341"></embed></object><br /><a href="http://vimeo.com/3827160">csStretch</a> from <a href="http://vimeo.com/csaez">César Sáez</a> on <a href="http://vimeo.com">Vimeo</a>.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-7138796922675456385?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com3tag:blogger.com,1999:blog-8950974.post-81764278564571250562009-03-05T19:50:00.004+01:002009-03-05T21:07:51.286+01:00csGlue revisited!Hola, hice una revisión al addon (para XSI) y tengo algunas novedades, link de descarga al final del mensaje.<br /><br /><object width="400" height="290"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3485620&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1"><embed src="http://vimeo.com/moogaloop.swf?clip_id=3485620&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="290"></embed></object><br /><br /><span id="fullpost"><br /><span style="font-style: italic;">csGlue versión 1.0:</span><br />- Código completamente reescrito en python (esta vez usando raycast, muuucho más rápido que la versión anterior)<br />- Nuevo "Draw Mode" que permite proyectar clones/instancias de un objeto dado sobre la superficiede forma interactiva (con posibilidad de alinear a la normal de la superficie)<br />- Nuevos ejes de proyección, esta vez tenemos X, Y, Z, -X, -y, -z y ¡Screen Space! para un mayor control sobre las proyecciones.<br />- Nueva UI<br /><br /><span style="font-style: italic;">Instalación:</span><br />csGlue es un "custom scripted command" por lo que está disponible en XSI para personalizar su acceso, de todas formas y para facilitar la faena encontrarán una toolbar llamada csGlue desde donde pueden utilizar el addon.<br /><br /><span style="font-style: italic;">FAQ:</span><br />¿Por que los objetos no siguen al objeto luego de ejecutar la proyección?<br />csGlue se encarga de posicionar objetos sobre determinada superficie y no de crear un vínculo "vivo" entre ambas, csGlue emite rayos entre los objetos para determinar el punto de colisión y usar este algoritmo en un SCOP resultaría bastante lento.<br /><br />¿Por que cuando presiono el botón en el toolbar no pasa nada?<br />Probablemente no tengas correctamente instalado python en tu sistema, para mayor información sobre la instalación de python haga <a href="http://softimage.wiki.softimage.com/index.php/Python#Installation">click aquí</a><br /><br /><span style="font-size:180%;"><a href="http://www.highend3d.com/f/5647.html">Descargar desde aquí</a></span><br /><br /></span><span id="fullpost">Cualquier duda, comentario, sugerencia, bug o lo que sea será muy bien recibido.</span><br /><span id="fullpost">Espero que les sea útil!<br /><br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-8176427856457125056?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com5tag:blogger.com,1999:blog-8950974.post-88155926780117812582009-03-04T16:05:00.005+01:002009-03-04T18:33:51.587+01:00VenganzaHoy me enteré de que está en el aire el comercial Venganza que les comenté hace algún tiempo, lamentablemente salí a mitad de proyecto y sólo alcancé a hacer el <a href="http://csaez.blogspot.com/2008/12/len-rig.html">rig del León</a> y modelar/texturizar un cachorro, era un proyecto muy interesante del cual me hubiera gustado participar más activamente.<br /><br /><center><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/hSIUqczbDLU&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/hSIUqczbDLU&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></center><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-8815592678011781258?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com5tag:blogger.com,1999:blog-8950974.post-60500527299285994092009-03-02T19:08:00.006+01:002009-03-02T20:51:26.340+01:00Stretch IK Chain escalableHola, hoy por hoy es muy habitual que los rigs tengan brazos y piernas elásticas pero en muchos casos nos olvidamos de hacerlos compatibles con el escalado global del personaje (escalar el rig no es una buena práctica pero puede sacarnos de algún apuro en producción). En esta entrada quisiera comentar sobre lo simple que es compatibilizar nuestras ecuaciones con este escalado.<br /><br /><br /><center><img src="http://img131.imageshack.us/img131/3136/csaezstretch00.jpg" /></center><br /><span id="fullpost"><br /><span style="font-weight: bold;">¿Cual es la lógica tras el stretch en una cadena de huesos con ik?</span><br />Básicamente se trata de medir la distancia entre el root y el effector/ikGoal (que llamaremos A) y si supera el largo inicial de la cadena (que llamaremos B) debemos añadir la mitad del delta entre A y B.<br /><br />En la imagen tenemos una cadena compuesta de 2 huesos (bone00 y bone01) de 5 unidades de longitud cada uno. Para que nos entendamos denominaremos root al cubo amarillo desde donde nace la cadena e ikGoal al extremo contrario.<br /><br />La ecuación que determina el largo de cada hueso en una situación de estiramiento en este caso está dada por:<br /><br /><blockquote>5 + (<span style="font-style: italic;">distancia-entre-root-y-ikGoal</span> - 10)/2<br /><br />donde:<br />- 5 es el largo original<br />- <span style="font-style: italic;">distancia-entre-root-y-ikGoal</span> es calculada dinámicamente<br />- 10 es el largo total de la cadena<br />- 2 es el numero de huesos</blockquote><br /><br /><span style="font-weight: bold;">¿Que pasa si escalamos el control global de nuestro rig?</span><br />En tal caso obiamente la distancia entre los extremos de la cadena sería mayor y por ende el largo de cada hueso no correspondería a lo que se espera del stretch, es un problema muy común pero lo podemos solucionar de forma muy sencilla integrando una pequeña variable a nuestra ecuación anterior.<br /><br />Por lógica nuestro problema se reduce a que las longitudes establecidas en el script no se ajustan dinámicamente en función de la escala global, son CONSTANTES tal como su nombre lo indica. Lo único que se ajusta dinámicamente al escalado es la función que calcula la distancia entre los extremos, de esta forma si la dividimos por el factor de escala global del rig tendríamos nuevamente todos los elementos de nuestra ecuación conviviendo en una misma escala.<br /><br />De esta forma la ecuación modificada sería:<br /><br /><blockquote>5 + (<span style="font-style: italic;">distancia-entre-root-y-ikGoal</span><span style="color: rgb(255, 0, 0);">/escala</span> - 10)/2<br /><br />Donde escala sería la escala del control global (en X, Y o Z, debemos escoger un eje).</blockquote><br /><br />Como ven es bastante simple, a esto hay que agregar una serie de condicionales que activarían la ecuación en caso de sobrepasar la distancia original o lo que se requiera en el rig pero teniendo clara la lógica creo que el resto es fácil de deducir. Sobre la aplicación de estas ecuaciones en nuestro software 3D favorito es algo específico para cada aplicación (sintaxis y forma de medir distancias) y no quisiera encasillar esta entrada a algún software en particular.<br /><br />Cualquier duda, sugerencia, corrección, ampliación del concepto o lo que sea estaré encantado de recibirla en los comentarios.<br /><br />¡Un abrazo!<br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-6050052729928599409?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com6tag:blogger.com,1999:blog-8950974.post-34283329290649555352009-02-13T21:02:00.003+01:002009-02-13T22:08:44.775+01:00La vida"La vida es como montar en un parque de atracciones; cuando te subes piensas que es real porque así de poderosas son nuestras mentes. El paseo sube y baja, da vueltas, tiene emociones, sustos, luces de colores, es muy ruidoso y es divertido por un rato. Algunos han estado en la atracción por mucho tiempo y empiezan a preguntarse ¿esto es real o es solo una atracción?<br /><br />Y otra gente ha recordado y nos ha dicho: Hey, no te preocupes, no temas, porque esto es sólo una atracción... y hemos matado a esa gente.<br /><br />Cállenlo que tengo mucho invertido en esta atracción de feria... ¡Cállenlo!<br />Mira mi ceño de preocupación...<br />Mira mi gran cuenta bancaria y mi familia...<br />Esto tiene que ser real.<br /><br />Es sólo una atracción. Pero siempre matamos a esos tipos buenos que tratan de decirnos, ¿no se dan cuenta?... y dejamos a los demonios que campen libres.<br /><br />Pero no importa, porque es sólo una atracción y podemos cambiarlo cuando queramos. Es sólo una decisión. No sobre el esfuerzo, el trabajo, el empleo, ahorrar dinero... Sólo una decisión, ahora mismo,<br />Entre el miedo y el AMOR."<br /><br /><div style="text-align: right;"><span style="font-style: italic;">Zeitgeist - The Movie</span></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-3428332929064955535?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com2tag:blogger.com,1999:blog-8950974.post-13743634096426481412008-12-23T01:13:00.004+01:002008-12-23T01:34:01.625+01:00León Rig<center><a href="http://www.vimeo.com/2605692" target="_blank" border="0"><img src="http://img387.imageshack.us/img387/8475/lionrigqv7.jpg" /></a><br /><br /><span style="font-size:78%;">(Haga click en la imagen para ir al vídeo)</span></center><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-1374363409642648141?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com13tag:blogger.com,1999:blog-8950974.post-77357095834825284282008-12-07T04:33:00.006+01:002008-12-07T06:08:10.013+01:00Granada, allá voy!Ya es oficial, a partir de Enero/Febrero 2009 me uno al depto de rigging de <a href="http://www.kandorgraphics.com" target="_blank">Kandor Graphics</a> para participar en la producción de su próximo largometraje llamado "Goleor: The scales and the sword". Estoy muy contento con la noticia, es una gran oportunidad y espero estar a la altura.<br /><br />Ya los mantendré informados mediante el blog, por ahora queda hacer el papeleo para viajar a España, viajar a Chile a visitar a mi familia y por supuesto despedirme de tantas personas grandiosas que he descubierto en Argentina y que se han convertidos en mi segunda familia, gracias gente! los extrañaré snif<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-7735709583482528428?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com23tag:blogger.com,1999:blog-8950974.post-709599150963516362008-11-22T22:31:00.003+01:002008-11-22T22:36:41.144+01:00Demo Reel 2008Hola, hace no mucho monté una nueva demo reel con algunos trabajos realizados durante este 2008 y me gustaría compartirla con ustedes acá en el blog, probablemente la gran mayoría ya los halla posteado de forma independiente a lo largo de este año peeeeero ahí les va el compilado, espero que les guste :)<br /><br /><center><br /><a href="http://www.vimeo.com/2288568" target="_blank"><img src="http://img140.imageshack.us/img140/9408/csaezreel08blogti8.jpg" /> </a><br /><span style="font-size:78%;">(click en la imagen)</span><br /></center><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-70959915096351636?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com13tag:blogger.com,1999:blog-8950974.post-66486356106200688712008-11-09T18:13:00.002+01:002008-12-31T21:58:30.618+01:00Caso de estudio 002: Relación entre rotación y deslizamiento<center><img src="http://img255.imageshack.us/img255/9633/000iq2.jpg" /> </center><br /><br />Hace algunas semanas leí una pregunta sobre como 'riggear' un sistema mecánico como el del esquema y me pareció un tema interesante para comentar acá en el blog, lo interesante desde mi punto de vista es que pese a ser una estructura muy sencilla (apenas 2 elementos) su resolución puede ser no tan directa como aparenta.<br /><span id="fullpost"><br />Nuestro objetivo en este caso será lograr que al rotar el elemento principal la segunda barra secundaria se deslice adaptandose a la rotación, algo similar a lo que sucede con <a href="http://es.wikipedia.org/wiki/Imagen:4-Stroke-Engine.gif" target="_blank">la biela y el cigueñal en un motor de combustión interna</a>.<br /><br />Antes de hacer nada creo que es importante plantearnos como queremos interactuar con el mecanismo, tenemos básicamente 2 opciones: o rotamos la barra principal y dejamos el resto automático o bien deslizamos la barra secundaria y automatizamos la rotación. En este caso me parece más práctico rotar la barra principal y automatizar el resto :)<br /><br />Ok, manos a la obra! lo primero que habría que hacer es una estructura de huesos que represente a la geometría, posiblemente en este caso al ser algo simple se podría trabajar directamente sobre la geometría pero siempre es una buena idea animar una estructura que guíe la geometría, nos ahorrará muchos problemas en caso de tener que reemplazar la pieza por algún motivo (por ejemplo riggeamos el modelo en baja resolución y luego le asignamos el rig a las piezas en alta definición).<br /><br /><center><img src="http://img527.imageshack.us/img527/7205/001oy6.jpg" /></center><br /><br />Hasta ahora lo único que he hecho es crear 2 cadenas de huesos, una FK que representa la barra principal y otra cadena IK linekada a esta última que representa la barra secundaria, como vemos en las imágenes cuando rotamos la barra principal el efector IK queda fijo en el lugar en lugar de desplazarse, ahora nuestro objetivo es lograr ese deslizamiento horizontal :)<br /><br /><span style="font-style:italic;"><span style="font-weight:bold;">El camino "fácil":</span></span><br />Lo primero que uno pensaría en hacer para ese deslizamiento es usar reaction manager (3dsmax)/set driven key (Maya)/link with... (XSI) para establecer una relación entre la rotación con el desplazamiento, es una solución válida y rápida pero nos enfrentaremos a un problema interesante, la relación entre el desplazamiento y la rotación no es lineal, esto quiere decir que si lo configuramos de esta forma sólo considerando los extremos el efector tendrá un offset no deseado en su deslizamiento. El defecto se puede disimular agregando puntos/keys intermedios pero nunca lograremos una solución exacta de esta forma.<br /><br /><span style="font-style:italic;"><span style="font-weight:bold;">El camino "difícil":</span></span><br />Si descartamos la opción anterior nos queda como solución encontrar el modelo matemático que representa ese desplazamiento y "bajarlo" a una expresión, puede sonar complicado pero no lo es en la práctica, con un poco de trigonometría es pan comido ;)<br /><br />Por donde empezar? básicamente nuestro problema se reduce a un triángulo al cual debemos calcular la dimensión de sus lados, en el siguiente esquema se puede ver una síntesis gráfica del problema (espero se entienda la letra a mano alzada).<br /><br /><center><img src="http://img412.imageshack.us/img412/4606/003re0.jpg" /></center><br /><br />Básicamente el desplazamiento que necesitamos calcular es equivalente a calcular la longitud del lado <span style="font-style: italic;">b</span> del triángulo, en base al esquema no es difícil asociar que si recurrimos a las funciones seno y/o coseno podemos dar con aquella longitud, para ponernos en contexto wikipedia nos ilustra <a href="http://en.wikipedia.org/wiki/Image:Unitcirclecodefs.svg">con este gráfico</a> que representa el seno y el coseno de un ángulo cuando es multiplicado por el radio de la circunferencia a la que pertenece.<br /><br />De esta forma podemos deducir que en nuestro caso:<br />b = c * cos(α) + a * cos(γ) (1)<br /><span style="font-size:85%;">**<span style="font-style:italic;">b</span> es igual a <span style="font-style:italic;">c</span> por el coseno de <span style="font-style:italic;">alfa</span> más <span style="font-style:italic;">a</span> por el coseno de <span style="font-style:italic;">gamma</span></span><br /><br />Donde:<br /><span style="font-style:italic;">c</span>, <span style="font-style:italic;">a</span> y <span style="font-style:italic;">γ</span> son conocidos.<br /><br />Por lo tanto nos queda calcular α, para ello nos podemos basar en <a href="http://en.wikipedia.org/wiki/Sine#Law_of_sines">el teorema del seno</a>, básicamente es una relación de proporcionalidad entre las longitudes de los lados de un triángulo y los senos de los ángulos respectivamente opuestos (en el link lo explica en imágenes).<br /><br />De esta forma se puede afirmar que <br /><br />sen(γ) / c = sen(α) / a<br />sen(α) = a * sen(γ) / c<br />α = senֿ¹ ( a * sen(γ) / c ) (2)<br /><span style="font-size:85%;">** senֿ¹ representa a la función arcoseno</span><br /><br />Por lo tanto, reemplazando el valor de α en la ecuación (1) tenemos que el lado b del triángulo, es decir el deslizamiento del efector, es igual a:<br /><br />b = c * cos( senֿ¹ ( a * sen(γ) / c ) ) + a * cos(γ)<br /><br />Ok, tenemos la expresión pero como se aplica esto en nuestro rig? en este caso estoy usando 3dsmax por lo que la expresión la escribiré usando este software y explicaré la estructura que actualmente tengo montada (convención de nombres y tal, para que se entienda), de todas formas entendiendo el concepto y como llegamos a la expresión es fácilmente aplicable a cualquier software.<br /><br /><center><img src="http://img235.imageshack.us/img235/8131/004vm9.jpg" /></center><br /><br />Para recrear el comportamiento en este rig usando 3dsmax vamos a usar un controlador "float script" en el desplazamiento en el eje Y del efector (secondary_eff), en el script controller escribiremos algo como esto:<br /><br />(<br /> DependsOn $main_anim $secondary_bone<br /> local c = $secondary_bone.length<br /> local a = in coordsys gimbal $secondary_bone.position.x<br /> local gamma = 90 - (in coordsys gimbal $main_anim.rotation.z)<br /> c * cos( asin ( a * sin(gamma) / c ) ) + a * cos(gamma)<br />)<br /><br /><span style="font-size:85%;">** Lo ideal sería usar nodos como variables en lugar de usar los nombres de los objetos y el dependsOn, en este caso no los uso sólo para hacer el script entendible en base a mi convención de nombres.</span><br /><br />En el editor de max debería verse asi:<br /><center><img src="http://img201.imageshack.us/img201/6566/005bi8.jpg" /> </center><br /><br />Y el resultado en acción:<br /><center><embed src='http://img201.imageshack.us/img201/3289/casoestudio002pt1.swf' quality='high' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='400' height='308'></embed></center><br /><br />Más allá del rig en si mismo tenía ganas de compartir una de las tantas formas de encarar los desafíos que puede representar un rig, espero que les halla parecido interesante.<br /><br />Salu2 <br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-6648635610620068871?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com3tag:blogger.com,1999:blog-8950974.post-8321436668361423782008-11-03T03:20:00.003+01:002008-11-03T03:38:54.628+01:00Papageno Rig<center><img src="http://img386.imageshack.us/img386/2121/papagenorigwo1.jpg" /> </center><br />Rig para personaje del proyecto 'El ángel de la música', propiedad de McFly Studio.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-832143666836142378?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com1tag:blogger.com,1999:blog-8950974.post-45885308891746899702008-10-24T07:58:00.006+02:002008-11-10T09:32:24.698+01:00Autodesk adquiere Softimage<center><img src="http://img404.imageshack.us/img404/2710/fiji3logos420x150nm4.jpg" /></center><br /><br />Hoy es un día triste para todos los que nos gustaba el camino que seguía Softimage y sus innovaciones tecnológicas de los últimos años... maldito monopolio, ya casi no nos quedan alternativas :-(<br /><br /><a href="http://usa.autodesk.com/adsk/servlet/item?id=12022457&siteID=123112">Link: Comunicado oficial de Autodesk</a><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-4588530889174689970?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com3tag:blogger.com,1999:blog-8950974.post-47671626322051914422008-10-14T05:55:00.003+02:002008-10-14T05:58:23.877+02:00zFollow<object width="400" height="267"> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=1961550&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /> <embed src="http://vimeo.com/moogaloop.swf?clip_id=1961550&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="267"></embed></object><br /><a href="http://vimeo.com/1961550?pg=embed&amp;sec=1961550">zFollow</a> from <a href="http://vimeo.com/csaez?pg=embed&amp;sec=1961550">César Sáez</a> on <a href="http://vimeo.com?pg=embed&amp;sec=1961550">Vimeo</a>.<br /><span id="fullpost"><br />Hola, en 3dpoder alguien necesitaba que una serie de objetos tomaran la altura de una superficie pero que además siguieran su animación, es decir... que se mantuvieran flotando sobre la superficie. Hoy tuve un poco de tiempo libre (fin de semana largo :P) y traté de ayudar con este script, el código lo pueden encontrar <a href="http://www.foro3d.com/586347-post3.html">acá</a>.<br /><br />Salu2<br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-4767162632205191442?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com1tag:blogger.com,1999:blog-8950974.post-26211565654152059452008-10-14T05:50:00.003+02:002008-11-10T08:34:42.204+01:00ReInstanciate object en XSI<object width="400" height="298"> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=1950563&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /> <embed src="http://vimeo.com/moogaloop.swf?clip_id=1950563&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="298"></embed></object><br /><a href="http://vimeo.com/1950563?pg=embed&amp;sec=1950563">reInstanciate geometry in XSI</a> from <a href="http://vimeo.com/csaez?pg=embed&amp;sec=1950563">César Sáez</a> on <a href="http://vimeo.com?pg=embed&amp;sec=1950563">Vimeo</a>.<br /><span id="fullpost"><br />Hola, en XSIForum alguien pregunto si existía una forma de reinstanciar (o copiar el historial) de un objeto a otros, lo ideal siempre es prevenir estas cosas modelando el elemento con intancias/clones pero en caso de no haberlo hecho como se puede resolver? una alternativa podría ser con este script :)<br /><br />El código lo pueden encontrar <a href="http://xsiforum.com/forum/index.php/topic,6021.msg59782.html#msg59782">aquí</a> :)<br /><br />Salu2<br /><br />PD: Hace mucho que no scriptaba nada para XSI, ya me estaba oxidando...<br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-2621156565415205945?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com0tag:blogger.com,1999:blog-8950974.post-46614437304465853052008-10-10T23:36:00.005+02:002008-12-31T21:58:30.618+01:00Incoming: Piquero<center><img src="http://img123.imageshack.us/img123/4772/piquerorigblogzw6.jpg"></center><br /><span id="fullpost"><br />Hola, esta última semana en Gizmo he estado ocupado en el pajarito que se ve en el screenshot de arriba, aún no puedo mostrar mucho pero estoy muy contento con como va quedando, entre otras cosas hice un sistema para controlar sus plumas que fue un gran desafío pero creo que tiene sentido y en el resultado final va a compensar plenamente el esfuerzo.<br /><br />La próxima semana empezamos la animación "en masa" y podremos ver como se comporta, que ganas de animarlo :)<br /><br />Cuando salga al aire la publicidad probablemente podré mostrarlo acá en el blog, stay tuned ;)<br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-4661443730446585305?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com7tag:blogger.com,1999:blog-8950974.post-69637400150407825682008-10-10T23:14:00.002+02:002008-10-10T23:18:10.542+02:00Simulando huesos<object width="400" height="235"> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=1931806&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /> <embed src="http://vimeo.com/moogaloop.swf?clip_id=1931806&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="235"></embed></object><br /><a href="http://vimeo.com/1931806?pg=embed&amp;sec=1931806">Simulate Bones</a> from <a href="http://vimeo.com/csaez?pg=embed&amp;sec=1931806">César Sáez</a> on <a href="http://vimeo.com?pg=embed&amp;sec=1931806">Vimeo</a>.<br /><span id="fullpost"><br />Un nuevo experimento, esta vez se trata de una cadena de huesos que sigue una simulacion de telas, la idea es hacer que la simulacion sea la base para la animacion de telas/ropa pero luego podamos tocar los huesos según la necesidad de la animacion para lograr mayor control.<br /><br />Espero que les guste :)<br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-6963740015040782568?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com1tag:blogger.com,1999:blog-8950974.post-16643943562275956322008-09-26T12:54:00.002+02:002008-09-26T13:02:28.120+02:00Jubal Rig<center><object width="400" height="251"> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=1816005&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /> <embed src="http://vimeo.com/moogaloop.swf?clip_id=1816005&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="251"></embed></object><br /><a href="http://vimeo.com/1816005?pg=embed&amp;sec=1816005">Jubal Rig</a> from <a href="http://vimeo.com/csaez?pg=embed&amp;sec=1816005">César Sáez</a> on <a href="http://vimeo.com?pg=embed&amp;sec=1816005">Vimeo</a>.</center><br /><span id="fullpost"><br />Hola, Jubal (propiedad de mcfly studio) es uno de los personajes de <a href="http://www.elangeldelamusica.com.ar/" target="_blank">el ángel de la música"</a> al cual le hice un rig para la futura serie animada, espero que les guste :)<br /><br /><br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8950974-1664394356227595632?l=csaez.blogspot.com'/></div>César Sáezhttp://www.blogger.com/profile/16654246938031880524noreply@blogger.com3