"Automating the world"
Character TD blog.
Tuesday, January 31, 2012
Friday, January 27, 2012
The Witcher 2: Assassins Of Kings Video Game Trailer
Here You Go !
Another Cinematic From Platige Image !!
My Role on this trailer is Senior Technical Director.
- character rigging
- animation pipeline design and tools developement
Another Cinematic From Platige Image !!
My Role on this trailer is Senior Technical Director.
- character rigging
- animation pipeline design and tools developement
Friday, December 2, 2011
"Paths Of Hate" shortlisted by The Adcademy !!
http://www.oscars.org/press/pressreleases/2011/20111201a.html
Wednesday, November 2, 2011
1956 Kids Fears (Platige Image)
My Role: Character Rigging
1956 Kids Fears from Platige Image on Vimeo.
KELLOGG'S CHOC'N'ROLLS (Platige Image)
My Role: Character Rigging
KELLOGG'S CHOC'N'ROLLS from Platige Image on Vimeo.
Prezydencja (Platige Image)
My role: Character rigging, animation pipeline.
PREZYDENCJA 180s from Platige Image on Vimeo.
Thursday, October 27, 2011
Fastest 'By Name' Selection in 3dsmax... I think so...
PathName Values, Pathname Literals
...
Looks pretty ugly but is much faster then
iterating over scene nodes and comparing names using matchpattern.
someString= "*NodeName*"
select (execute ("$'"+someString+"'"))
select $'*NodeName*'
Also it can be expanded to specific hierarchies, like this...
All you need to do is to parse a valid command string and execute it.
$'NodeName 0:NodeName__CTRL'/* as array $dummy/head/neck
Tuesday, July 5, 2011
MeshWrap
Workmate asked me yesterday to write a script that will helphim to keep
offset between cloth layers in his models.
Here is the script. Nothing fancy and no gui for now.
Will try to update later.
Script wraps mesh woth specified distance and
will try to keep initial shape after wrap is done.
entire script below:
offset between cloth layers in his models.
Here is the script. Nothing fancy and no gui for now.
Will try to update later.
Script wraps mesh woth specified distance and
will try to keep initial shape after wrap is done.
entire script below:
fn WrapMesh _static _dynamic verts:undefined dir:-1 _dist:1.5 _distThreshold:4.5 _keepShape:false = (
if verts == undefined do verts = getvertselection _dynamic
for i in verts do (
_v = getvert _dynamic i
_n = (getnormal _dynamic i)*dir
_r = ray _v _n
_coll = intersectrayex _static _r
if _coll != undefined do (
if (distance _coll[1].pos _v) < _distThreshold do (
_mat = matrixfromnormal _n
_hitPos = _coll[1].pos
_off = [0,0,_dist]
_offPos = _off * _mat
_pushPos = if dir < 0 then (_hitPos - _offPos) else (_hitPos + _offPos)
_shape = _v - _hitPos
_shaped = if dir < 0 then (_pushPos + _shape) else (_pushPos - _shape)
_trgPos = if _keepShape then _shaped else _pushPos
setvert _dynamic i _trgPos
)
)
)
update _dynamic
)
fn PushOutsideDoubled _static _dynamic _dist:.5 _distThreshold:4.5 _keepShape:false= (
if _dynamic.modifiers.count > 0 do (
messageBox "Remove or Collapse All Modifiers From Matching Object"
return False
)
undo "Vert Push" on (
_verts = getVertSelection _dynamic
if _verts.count == 0 do (
return false
)
WrapMesh _static _dynamic verts:_verts dir:-1 _dist:_dist _distThreshold:_distThreshold _keepShape:_keepShape
meshop.flipNormals _static #{1.._static.numfaces}
WrapMesh _static _dynamic verts:_verts dir:1 _dist:_dist _distThreshold:_distThreshold _keepShape:_keepShape
meshop.flipNormals _static #{1.._static.numfaces}
update _dynamic
)
)
rollout WrapMeshRollout "WrapMesh" (
spinner spn_dist "Distance To Keep" range:[0.1,99999,.5]
spinner spn_thre "Distance To Ignore" range:[0.1,99999,4.5]
checkbox chk_keepShape "Keep Shape" checked:true
button btn_wrapMesh "Wrap"
on btn_wrapMesh pressed do (
if selection.count != 2 do (
messageBox "Select Only Two Editable_Mesh Objects\First Object will be modified"
return False
)
if not (classof selection[1]) == Editable_mesh do (
messageBox "First Object in Selection is not an Edtiable_Mesh Object"
return False
)
if not (classof selection[2]) == Editable_mesh do (
messageBox "Second Object in Selection is not an Edtiable_Mesh Object"
return False
)
PushOutsideDoubled selection[2] selection[1] _dist:spn_dist.value _distThreshold:spn_thre.value _keepShape:chk_keepShape.checked
)
)
CreateDialog WrapMeshRollout
Subscribe to:
Posts (Atom)




