Friday, October 2, 2009

Demo Reel 2009

Wednesday, June 3, 2009

Textured Box








(Modeling done by Alan Bradshaw)


I textured the box with Maya and Renderman.

Tuesday, May 5, 2009

Dance! Dance! Dance!

video

Monday, May 4, 2009

Copier_ver1.0

//Here is a mel scripts I wrote. It is for duplicating objects randomly.
//Have a fun with it!!!




//copier.ver 1.0
//Author: Jaetaek Hwang
//Date: May 04, 2009
//selects objects and make it a array
string $my_selectedObjects[] = `selectedNodes`;
$sizeSelected = size($my_selectedObjects);


if($sizeSelected == 0)
{
confirmDialog - title "confirm"
- message "Please select at least one object."
-button "Exit";
error "You should select at least one object!!!";
}
else
{
makeGUI(); //calls GUI
}

//makes copies of the selected objects and closes windows by the OK button.
global proc makeCopy()
{
global string $my_positionX_min, $my_positionX_max, $my_positionY_min, $my_positionY_max, $my_positionZ_min, $my_positionZ_max;
global string $my_rotateX_min, $my_rotateX_max, $my_rotateY_min, $my_rotateY_max, $my_rotateZ_min, $my_rotateZ_max;
global string $my_scaleX_min, $my_scaleX_max;
global string $my_num_bladeSlider;

int $selected;
int $sizeSelected;
//global int $total;

string $my_selectedObjects[] = `selectedNodes`;
int $sizeSelected = size($my_selectedObjects);

string $my_selectedObjects[];

float $pX_min = `floatSliderGrp -q -value $my_positionX_min`;
float $pX_max = `floatSliderGrp -q -value $my_positionX_max`;
float $pY_min = `floatSliderGrp -q -value $my_positionY_min`;
float $pY_max = `floatSliderGrp -q -value $my_positionY_max`;
float $pZ_min = `floatSliderGrp -q -value $my_positionZ_min`;
float $pZ_max = `floatSliderGrp -q -value $my_positionZ_max`;

float $rX_min = `floatSliderGrp -q -value $my_rotateX_min`;
float $rX_max = `floatSliderGrp -q -value $my_rotateX_max`;
float $rY_min = `floatSliderGrp -q -value $my_rotateY_min`;
float $rY_max = `floatSliderGrp -q -value $my_rotateY_max`;
float $rZ_min = `floatSliderGrp -q -value $my_rotateZ_min`;
float $rZ_max = `floatSliderGrp -q -value $my_rotateZ_max`;

float $sX_min = `floatSliderGrp -q -value $my_scaleX_min`;
float $sX_max = `floatSliderGrp -q -value $my_scaleX_max`;

//counts a number of blades which will be made
int $max = `intSliderGrp -q -value $my_num_bladeSlider`;

for($selected =0; $selected<$sizeSelected; $selected++)
{
select $my_selectedObjects[$selected];

if(!($max == 0))
{ for( $i=0; $i<$max; $i++)
{
instance;

makePosition($pX_min, $pX_max, $pY_min, $pY_max, $pZ_min, $pZ_max);
makeRotate($rX_min, $rX_max, $rY_min, $rY_max, $rZ_min, $rZ_max);
makeScale($sX_min, $sX_max);
}
}
else
{
warning ("You did not enter a number of blade you want");
confirmDialog - title "confirm"
- message ("0 copy of the " + $my_selectedObjects[$selected] + " will be generated")
- button "Quit";
warning ("0 blade of the " + $my_selectedObjects[$selected] + " was generated. ");
}
}

//print ( $total + " blades were generated."); //counts the total blades you made
}

//close windows by the cancle button.
global proc makeClose()
{
//global int $total;
//print ( $total + " blades were generated.");
print "Good-Bye!!!";
}

//move objects randomly
global proc makePosition(float $pX_min, float $pX_max, float $pY_min, float $pY_max, float $pZ_min, float $pZ_max)
{
float $positionX = rand($pX_min, $pX_max);
float $positionY = rand($pY_min, $pY_max);
float $positionZ = rand($pZ_min, $pZ_max);

move $positionX $positionY $positionZ;
}

//rotate objeccts randomly
global proc makeRotate(float $rotX_min, float $rotX_max,
float $rotY_min, float $rotY_max,
float $rotZ_min, float $rotZ_max)
{

float $rotateX = rand($rotX_min, $rotX_max);
float $rotateY = rand($rotY_min, $rotY_max);
float $rotateZ = rand($rotZ_min, $rotZ_max);

rotate $rotateX $rotateY $rotateZ;
}

//scale objects randomly
global proc makeScale(float $scaX_min, float $scaX_max)
{

float $scaleX = rand($scaX_min, $scaX_max);

scale $scaleX $scaleX $scaleX;
}

global proc makeGUI()
{
int $selected;
string $my_selectedObjects[] = `selectedNodes`;
global string $my_positionX_min, $my_positionX_max, $my_positionY_min, $my_positionY_max, $my_positionZ_min, $my_positionZ_max;
global string $my_rotateX_min, $my_rotateX_max, $my_rotateY_min, $my_rotateY_max, $my_rotateZ_min, $my_rotateZ_max;
global string $my_scaleX_min, $my_scaleX_max;
global string $my_num_bladeSlider;

//string $list = $my_selectedObjects; //makes a object list

$my_window = `window -title ("Copier Ver_1.0")` ;
columnLayout;
separator -st "in" -h 5 -w 800;
frameLayout -label (" "+ ($my_selectedObjects[0]) +" "+ ($my_selectedObjects[1])+ " " + ($my_selectedObjects[2])+ " ")
-la "center"
-li 5;

columnLayout;
$my_num_bladeSlider = `intSliderGrp //a number of copies of blades
-min 0
-max 500
-fieldMinValue 0
-fieldMaxValue 1000
-label "Count (0-1000)"
-columnWidth 1 100 -columnWidth 2 50
-step 1
-field true`;

separator -st "in" -h 5 -w 780;

rowColumnLayout -nc 3
-cw 1 260 -cw 2 260 -cw 3 260
-co 1 "left" 5 -co 2 "left" 5 -co 3 "left" 5
-ro 1 "both" 5 -ro 2 "both" 5 -ro 3 "both" 5;

frameLayout -label "Position"
-labelAlign "center"
-li 10
-mh 5;

columnLayout;
separator -st "in" -h 5 -w 250;
$my_positionX_min = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value -10.0
-label "X.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_positionX_max = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value 10.0
-label "X.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

separator -st "in" -h 5 -w 250;
$my_positionY_min = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value -10.0
-label "Y.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_positionY_max = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value 10.0
-label "Y.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;


separator -st "in" -h 5 -w 750;
$my_positionZ_min = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value -10.0
-label "Z.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_positionZ_max = `floatSliderGrp
-min -10.0
-max 10.0
-fieldMinValue -10.0
-fieldMaxValue 10.0
-value 10.0
-label "Z.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

separator -st "in" -h 5 -w 250;
setParent ..;
setParent ..;

frameLayout -label "Rotate"
-labelAlign "center"
-li 10
-mh 5;

columnLayout;
separator -st "in" -h 5 -w 750;
$my_rotateX_min = `floatSliderGrp
-min -30.0
-max 30.0
-fieldMinValue -40.0
-fieldMaxValue 40.0
-value -30.0
-label "X.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_rotateX_max = `floatSliderGrp
-min -30.0
-max 30.0
-fieldMinValue -40.0
-fieldMaxValue 40.0
-value 30.0
-label "X.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

separator -st "in" -h 5 -w 750;
$my_rotateY_min = `floatSliderGrp
-min 0.0
-max 360.0
-fieldMinValue 0.0
-fieldMaxValue 360.0
-value 0.0
-label "Y.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;


$my_rotateY_max = `floatSliderGrp
-min 0.0
-max 360.0
-fieldMinValue 0.0
-fieldMaxValue 360.0
-value 360.0
-label "Y.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

separator -st "in" -h 5 -w 750;
$my_rotateZ_min = `floatSliderGrp
-min -30.0
-max 30.0
-fieldMinValue -40.0
-fieldMaxValue 40.0
-value -30.0
-label "Z.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_rotateZ_max = `floatSliderGrp
-min -30.0
-max 30.0
-fieldMinValue -40.0
-fieldMaxValue 40.0
-value 30.0
-label "Z.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

separator -st "in" -h 5 -w 250;
setParent ..;
setParent ..;

frameLayout -label "Scale"
-labelAlign "center"
-li 10
-mh 5;
columnLayout;
separator -st "in" -h 5 -w 250;
$my_scaleX_min = `floatSliderGrp
-min .1
-max 1.9
-fieldMinValue .1
-fieldMaxValue 1.9
-value .8
-label "X.min"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;

$my_scaleX_max = `floatSliderGrp
-min .1
-max 1.9
-fieldMinValue .1
-fieldMaxValue 1.9
-value 1.2
-label "X.max"
-columnWidth 1 48 -cw 2 44 -cw 3 30
-width 260
-field true`;
separator -st "in" -h 5 -w 250;
setParent ..;
setParent ..;
setParent ..;

//makes buttons
separator -st "in" -h 5 -w 780;
rowColumnLayout -nc 6 -cw 5 60 -cw 6 60;
button -label "Make Copy" -align "center" -command ("makeCopy(); deleteUI " + $my_window);
button -label "Apply" -align "center" -command "makeCopy()";
button -label "Close" -align "center" -command ("makeClose(); deleteUI " + $my_window);
text " ";
button -label "Undo" -align "center" -command "undo; ";
button -label "Redo" -align "center" -command "redo; ";
setParent;

showWindow $my_window;
}

Friday, February 27, 2009

Animation Test_01

video

video

Friday, February 13, 2009

Final Image_Robot 350






Used Maya and Mental Ray Renderer.
Textured using Photoshop.

Monday, February 9, 2009

Medal for DreamGiver Project




This is for Dream Giver Project.

I Used Maya and Renderman.

Thursday, January 22, 2009

the Last ChristMas Tree


Don't blame me


Love is...


emulation work


No. Title.0002


No. Title.0001


Tuesday, January 20, 2009

football_ball model.

I modeled this football ball for a group project.
C.o.l.o.r......

A Compositing Project used Renderman, Maya and Photoshop


I used Renderman and Maya, then fixed using Photoshop.

Oil Can_Renderman Shader





some more work used procedure shader with Renderman.

Ax_Renderman Shader






Ax in the X-Project.
I used Renderman Procedure shader with B/W images (below) to make isolated area.



Saturday, October 18, 2008

Lemon_(Renderman Procedure Shading)

video


Go! Go!

Thursday, October 9, 2008

My name is Jaetaek Hwang


I drew this one for another caricature assignment.
Does it look like me?

Sayid_Caricature

I like his character in the TV show "Lost."
I drew this one for caricature assignment.

Sayid!!!

little dragon


It's cool shape. Isn't it?

Saturday, October 4, 2008

Good Friends

video

Look at these guys.

They will be good artists soon.

Friday, October 3, 2008

My Lemon II

I posted the network node I used for my lemon shader. I wish this one will give you some ideas for your work. Good Luck guys!!!



Another view.....
sick...


My Lemon I








Shading is done using Renderman.
If you look at the shding nodes I used, you may die because of headache.
I got a headache all day plus the next day after I am done this guy.
[-_-]





It am still working on this guy.

Toy Robot Gunso

moving! moving!

video

This is my robot Gunso from Japan.

I made this for fun.

This is a testing animation, walking and running.

I used trax animation editor in Maya.

I like it a lot.

I like this guy.

I like you too!!.

Inspector


It's done by XSI.

And I used shake for compositing.

Under the Sea

This is another old work of mine. It's done using Maya.
This image is originally a movie clip I made.
I like Dark Green water because it's green!.
-_-]]

DAEGARY

DAEGARY = Head.

I made this 3D head for my friend's short live action film long time ago.

I used XSI ver.1.X.

Teapot II


This teapot assignment is from Rob's Maya class I took 2 years ago.
I used same BG to save my time.
-_-}

Teapot I

It's from Maya class last year.

Renderman Project I


This image is from renderman class I took last year.
It's compositing assignment for final.
It's done by procedure shading except the pattern of the bowl.

TC-Airship


This is TC-Airship.
I made this one last year with TC.
I wish I finish mapping soon, maybe someday.

TC-01-all together


Here are all different versions of TC.
Last one looks like monkey.
Anyway...

Robot Bug II

Robot Bug II.
I used paint effects for BG.
This is the Bug's runch time.
-_-}

Robot Bug I


I made this robot bug last year. I used maya procedure shader for shading. I also used texture maps for the edge of the each element.

Thursday, October 2, 2008

TC-01

This guy is called 'TC'. I made this guy for the final assignment in Intro to animation class last year. There are several versions of this character somewhere in my computer, but I like this image. This is kind of my test character for fun and for study. So, It may be continually updated.


Thursday, September 25, 2008

2D explosion

video


This is my first 2D effect animation.

Monday, March 10, 2008

Graphic Design 0003


Graphic Design 0002


Graphic Design 0001


A big dumpster at Wymount


I like drawing some dirty things like this dumpster.
I found this guy near by my apartment at Wyount.
I need more dirty things.........

Thursday, February 28, 2008

A Lizard







Beauty and the Beast




Old Castle






















hunter




Bug design004




Bug design001




Thursday, September 27, 2007

working on an apple shader with Renderman



This is my first shading assignment for Renderman class.
I'm still working on.
Almost......done.
Let't put some dots on it!!!!

Friday, April 20, 2007

It's me!!!!

Let's start drawing!!!!