Monday, March 28, 2011

Itano Circus Shots

http://www.youtube.com/watch?v=BzXfVgYCxWI
As a fan of japanese animation I watched a lot of mecha shows when I was little. I noticed there was a interesting shot called the itano circus (the person that created it was Ichiro Itano) where a ship will fire a ridiculous amounts of missiles and then it goes into a high speed missile chase. The missiles themselves will usually move in impractical angles but it creates an almost art with the shot. Trying to see if its possible to replicate it in our 3d space shooter game.

Spaceship plating textures

http://www.moddb.com/tutorials/basic-hull-plating

Ive been working on a lot of futuristic spaceship style games and had some difficulty trying to make a "realistic" plating for ships and I started to use this tutorial to do that. Its also useful in tiling levels so it doesnt look so smooth. To help create a interesting effect sometimes I create two layers in photoshop and darken the bottom layer. Then I would slightly erase the upper layer to have pieces show through giving it a rougher rustier texture.

Wednesday, March 23, 2011

Script Tutorials for Photoshop

Ive been looking through several tutorials I googled on Photoshop scripting. I was then recommended by Travis to check http://morris-photographics.com/photoshop/tutorials/scripting1.html

After going through it I thought it was one of the better tutorials, because it starts from the very basic before going further rather than many other tutorials that assume you know the basics and focus on working on one small detail.

Monday, March 21, 2011

Biztech FLASH presentation

New outline frame we designed for business technology competition presentation. We wanted a mechanical futuristic feel to it. Thinking of adding more gears and lights to it though....

Mechanical doors will open with gears and then reveals this interface. The right side corner will have all the buttons to change pages.

Preparing for Business Technology Competition


Business Technology Competition is finally coming near, we are preparing the presentation and the announcement of our two upcoming titles....

Animation Series Project Agreement Success!

Success!

After negotiations with Studio 2 in Asia we have initiated Project Onion!

We will form a media franchise intellectual property and use our cooperation to release multiple product lines. Studio 2 will be forming the animated series while we provide video games. This strategy will allow us to reach a beachhead into china and in exchange bring them to the US. Rapscallion will hold licenses in the US and Europe while they hold license into Asia.

Development of the world will begin this summer and postproduction will initiate mid 2012 for 6 months, and then 1 episode per month afterwards (13 episodes). Meanwhile Rapscallion will provide several small website indie games during development and release final product when series is released!

Back from Asia

Haven't been able to post for some time due to my trip to Taiwan and China. I had fun experiencing different cultures and I took particular notice with the games and animation there. As expected in Taiwan it was very Japanese anime oriented and even China had some reminiscence of anime in their cartoons, especially with the big eyes.

On the video gaming side, I talked with my cousins and apparently American games dont seem to be performing very well. With the exception of Blizzards World of Warcraft and Starcraft. While its still very Japanese centric, there seems to be a huge surge and transition to online gaming in the Asian market. Especially MMO type games are on the rise.

Another interesting thing I learned there was when I talked with my cousin Chiu Liwei was that to create entertainment media in China you need a Chinese company to claim ownership. This is because the country is trying to promote its own animation and gaming and doesnt want outside companies. To compensate, many chinese companies simply take ownership of outside titles for release inside which I think is extremely stupid.

Wednesday, March 2, 2011

MUGS!!!!

The mugs with my artwork designs have come in!!! My uncle owns a giftware business and he has a machine that prints art designs on mugs! :D

Providence PC game hero ship models

Finished textured models for hero ships for Providence PC game, shown are the bomber (Left) and fighter (Type) spaceships the player can choose for missions.

Bomber Type: This ship is larger and slower but has more customizable equipment addons as well as heavier firepower and armor/shielding. It also can be equipped with lances, which are attack drones that detach to focus down nearbye enemy aircraft. It focuses on more kinetic weapons such as missiles, rockets and rail guns.

Fighter Type: This ship I designed it stubbier because my programmer wanted two huge engines. It is much weaker than the bomber type in firepower and has less customizable upgrades. However it is much more manuverable and possesses more special abilities, particularly in using magical weaponry and energy based weapons.

The game will take place in a science fiction universe with some magical fantasy aspects during the invasion of the Systems Ordianance League and their crusade to retake the seperatist territories against the United Aegis Federation. The player will play as a military contractor mercenary faction under the UAF as they assist in repelling the SOL armada to profit off this conflict. However both factions are corrupt each with subgroups and personal agendas. The player will not be a hero, but rather in a more grey point of view, rescuing and liberating rebel planets as well as commiting atrocities and taking advantage of innocents as long as it profits and meets the agenda of your company and the profit lords that watch over the UAF....

With our current development schedule (and my amazing programmer Ian) we will have the game roughly playable by next week (with a lot of placeholders) and gradually insert details in.

During the process of making this and porting it as a obj file to my programmer I learned that the models tend to have multiple objects with different objects as quads or tris. To resolve this issue I learned that I needed to combine all objects and then trianguate the polys in Maya before I export.

Assignment 3 Part 5: Creative Use of Color


Was playing around with the color wheel code to see if I could do anything interesting with it. I liked how the color cube project had a more 3D aspect to it than the previous wheel assignment so I decided to add a z axis as well. The layers of circles gradually become more saturdated as they go up, also the center space gets bigger too.

float $rotate = 360/30.0;
float $translate = 1.0/5.0;
string $name;
string $name2;
for ($x=0;$x<30.0;$x++)
{
    for ($y=0;$y<5;$y++)
    {
     for($z=0;$z<8;$z++)
//Add a z axis
       {
          $name = `shadingNode -asShader blinn`;
          $name2 = $name + ".color";       
    $angle = $x * $rotate;
          $saturate = $y * $translate;
          $hue = $angle/360.0;       
//Assign Blinn shaders
          vector $color = hsv_to_rgb(<<$hue, $saturate, 1>>);
//Convert HSV to RGB, set max of 1 (if RGB are all 1 it creates white)      
          setAttr $name2 -type double3 ($color.x) ($color.y) ($color.z);
//Set shaders
          sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4 ;
//Make Nurb Spheres    
          xform -translation $saturate ($y+1.0) ($z/7.0);
//changed transformation from previous circle code for translation changes
          rotate -pivot .1 .1 .1 0 $angle 0;
//translating the balls to form circular shape
          hyperShade -assign $name;
//Assign shaders   
 }   
    }
}
;

Tuesday, March 1, 2011

Assignment 3 Part 4: Nonlinear Complementary Transitions

For a nonlinear transition that is complementary but doesnt go thru the grey, I went back to the colorwheel concept. Instead of going thru the center, have the colors go around like in a color wheel and determine hue angle wise but just make the balls spawn in a linear fashion. In general its a more simplified version of the color wheel code with unecessary things deleted such as saturation and having multiple layers.
float $rotate = 360.0/30.0;
string $name;
string $name2;
for ($x=0;$x<15.0;$x++)
{
    for ($y=0;$y<1;$y++)
//set 15 balls around so it only goes half a circle so its complementary(30 is full circle), change to 1 ball since you dont need layers like the original color wheel. Rotation will still be needed for hue changes.
    {
        $name = `shadingNode -asShader blinn`;
        $name2 = $name + ".color";       
 $angle = $x*$rotate;
        $hue = $angle/360.0;
//Assign Blinn shaders, note despite linear transition angle is going to be needed for the hue changes
        vector $color = hsv_to_rgb(<<$hue, 1, 1>>);
//Convert HSV to RGB      
        setAttr $name2 -type double3 ($color.x) ($color.y) ($color.z);
//Set shaders
        sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4 ;
//Make Nurb Spheres     
         xform -translation (0.25*$x) 0 1;
//Translate balls in a linear fashion and ignore the angle
        hyperShade -assign $name;
//Assign shaders       
    }
}
;

Same code concept for second one the only difference is I shifted x so it goes forward from the colorwheel so it changes to different complementary colors

float $rotate = 360.0/30.0;
string $name;
string $name2;
for ($x=5;$x<25.0;$x++)
{
    for ($y=0;$y<1;$y++)
    {
        $name = `shadingNode -asShader blinn`;
        $name2 = $name + ".color";       
 $angle = $x*$rotate;
        $hue = $angle/360.0;
        vector $color = hsv_to_rgb(<<$hue, 1, 1>>);       
        setAttr $name2 -type double3 ($color.x) ($color.y) ($color.z);
        sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4 ;      
       xform -translation (0.25*$x) 0 1;
        hyperShade -assign $name;    
    }
}
;

Assignment 3 Part 3: Complementary Linear Transition


string $name;
string $name2;
 float $red2;
 float $green2;
 float $blue2;
 int $x = 0;
for ($x=0;$x<15.0;$x++)
{
 $red2 = 1.0;
 $green2 = 0.0;
 $blue2 = 0.0;
//sets color variables, default is red
 $red2 -= ($x*0.06);
 $green2 += ($x*0.06);
 $blue2 += ($x*0.06);
//set color transition
     $name = `shadingNode -asShader blinn`;
     $name2 = $name + ".color";
//assigns shaders             
     setAttr $name2 -type double3 ($red2) ($green2) ($blue2);
//sets shaders
     sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4;
//create nurb spheres      
     xform -translation (0.25*$x) 0 1;
//spawns the balls in a line
     hyperShade -assign $name;
//assigns shaders to balls    
}
;

For different color transitions, I adjust the $red2, $green2. $blue2 by changing the positive and negative
string $name;
string $name2;
 float $red2;
 float $green2;
 float $blue2;
 int $x = 0;
for ($x=0;$x<15.0;$x++)
{
 $red2 = 1.0;
 $green2 = 0.0;
 $blue2 = 0.0;
//sets color variables, default is red
 $red2 -= ($x*0.06);
 $green2 += ($x*0.06);
 $blue2 -= ($x*0.06);
//set color transition
     $name = `shadingNode -asShader blinn`;
     $name2 = $name + ".color";
//assigns shaders             
     setAttr $name2 -type double3 ($red2) ($green2) ($blue2);
//sets shaders
     sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4;
//create nurb spheres      
     xform -translation (0.25*$x) 0 1;
//spawns the balls in a line
     hyperShade -assign $name;
//assigns shaders to balls    
}
;


Assignment 3 Part 2: Color Wheel


Color Wheel 1: Basic Single Ring Color Wheel
float $rotate =360/30.0;
//float $translate = 1.0;
string $name;
string $name2;
for ($x=0;$x<30.0;$x++)
{
    for ($y=0;$y<1;$y++)
//set 30 balls around
    {
        $name = `shadingNode -asShader blinn`;
        $name2 = $name + ".color";       
 $angle = $x * $rotate;
        $hue = $angle/360.0;       
//Assign Blinn shaders
        vector $color = hsv_to_rgb(<<$hue, 1, 1>>);
//Convert HSV to RGB       
        setAttr $name2 -type double3 ($color.x) ($color.y) ($color.z);
//Set shaders
        sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4 ;
//Make Nurb Spheres       
        xform -translation 1 0 0;
        rotate -pivot .1 .1 .1 0 $angle 0;
//translating the balls to form circular shape
        hyperShade -assign $name;
//Assign shaders       
    }
}
;


Color Wheel 2: This time I tried to implement a color wheel with saturation values and greys

float $rotate = 360/30.0;
float $translate = 1.0/5.0;
string $name;
string $name2;
for ($x=0;$x<30.0;$x++)
{
    for ($y=0;$y<5;$y++)
//set 30 balls around added translate to keep balls closer together
    {
        $name = `shadingNode -asShader blinn`;
        $name2 = $name + ".color";       
 $angle = $x * $rotate;
        $saturate = $y * $translate;
        $hue = $angle/360.0;       
//Assign Blinn shaders
        vector $color = hsv_to_rgb(<<$hue, $saturate, 1>>);
//Convert HSV to RGB, set max of 1 (if RGB are all 1 it creates white)      
        setAttr $name2 -type double3 ($color.x) ($color.y) ($color.z);
//Set shaders
        sphere -ch on -o on -po 0 -ax 0 1 0 -r 0.0538244 -nsp 4 ;
//Make Nurb Spheres     
        xform -translation $saturate 0 0;
        rotate -pivot .1 .1 .1 0 $angle 0;
//translating the balls to form circular shape
        hyperShade -assign $name;
//Assign shaders       
    }
}
;