08 July 2011

Mel Scripting - Moving UVs

Here's a script I thought of when I was trying to match the UVs of 2 different objects. If you use the Smooth UV tool and are anal about your UVs then this may come in handy however most people don't even care if 2 walls have slightly off brick textures!

This script has the ability to move and scale UVs.

if (`window -exists MovingUVs`)
deleteUI MovingUVs;

textureWindowSelectConvert 4; //making sure we select UVs of the object

window -width 20 -height 20 "MovingUVs";

gridLayout
-numberOfRowsColumns 1 3
-cellWidthHeight 75 20;

text -l " "; //blank space
button -label "Up" -c "GoingUp();";
text -l " ";
button -label "Left" -c "GoingLeft();";
text -l " ";
button -label "Right" -c "GoingRight();";
text -l " ";
button -label "Down" -c "GoingDown();";
text -l " ";
button -label "Scale+" -c "ScaleUp();";
text -l " ";
text -l " ";
button -label "Scale-" -c "ScaleDown();";

setParent ..;

showWindow MovingUVs;

      //edit these values if you it to have a greater effect
global proc GoingUp()
{
       polyEditUV -u 0 -v 0.001;
}
global proc GoingDown()
{
       polyEditUV -u 0 -v -0.001;
}
global proc GoingLeft()
{
       polyEditUV -u -0.001 -v -0;
}
global proc GoingRight()
{
       polyEditUV -u 0.001 -v -0;
}
global proc ScaleUp()
{
       polyEditUV -su 1.001 -sv 1.001 ;
}
global proc ScaleDown()
{
       polyEditUV -su 0.999 -sv 0.999 ;
};

04 July 2011

Tower Crane

Here's a Tower Crane - one of my latest tasks for the mod we're working on. I made the whole thing walkabout which even includes Ladder volumes. As the mod we're working on is a racing game this will never get used to it's fullest.. 

Poly count and texture sheet (only displayed the Diffuse but it also has a Normal and Specular map)

 In-game shot of the tower in it's full glory!


Base of the tower

 
 On top of the tower

14 June 2011

Overdue update..

Here's a few screenshots of some assets I've been making for an indie studio.

Ambient occlusion looks horrible on these screens - probably something to do with the graphics card.

I'll make these renders more presentable (with texture sheets and stats) when I have some free time.


Wooden fence


Crash barrier (modular)


Guard house


Fire Escape (modular)


Satelitte


Razor Wire


Spike Strip


14 March 2011

Mel scripting - toggle move tool axis

Just made a little script to go through the most useful (to me) move tool axis settings aka World, Object and Normal. I've also added a fancy little message box to tell you what you've selected, not really necessary but cool nonetheless!


int $MoveAxis = `manipMoveContext -q -mode Move`;

if ($MoveAxis == 0)
{
manipMoveContext -e -mode 2 Move;

$response = `confirmDialog -title "Axis"
-message "World move axis has been set!"
-button "OK"`;
}
else if ($MoveAxis == 2)
{
manipMoveContext -e -mode 3 Move;

$response = `confirmDialog -title "Axis"
-message "Normal move axis has been set - remember to select vertices!"
-button "OK"`;

}
else if ($MoveAxis == 3)
{
manipMoveContext -e -mode 0 Move;

$response = `confirmDialog -title "Axis"
-message "Object move axis has been set!"
-button "OK"`;

}

25 February 2011

Rooftop environment - teaser

I have been quite busy lately as I have recently joined an indie team. This right now has most of my time but I am still working on my own projects every so often.

This is an art test from Blitz - I would like to give this more attention but it's a pretty big scale of a project so progress is slow.

Reference:



Maya:



UDK:

15 February 2011

Mel scripting - open image with Photoshop!

Alright so here's a Mel script I've been working on for the last 24 hours - it took longer than expected!

The main point of this was... I'm lazy :D I wanted to open up the UV Snaphot I just made and I didn't want to open up Windows Explorer and find the image. Instead I wanted to open the image straight from Maya into Photoshop. With Maya 2011's new user interface, you can easily select a sub-folder of the project you're currently working on so this script only benefits Maya 2011 users.

This is my first attempt at UI in Mel and probably the most difficult script I've attempted to far..


if (`window -ex OpenImage`) deleteUI OpenImage; //closes if it's already running

//window
window -wh 300 60 "OpenImage";
columnLayout -columnWidth 300;
rowLayout -columnWidth2 10 60 -numberOfColumns 2;
button -width 90 -label "Select Image..." -c "fileBrowser(\"FileLoc\",\"Open\",\"\",0)";
textField -width 200 FileLocation;
setParent -u;
columnLayout -columnWidth 300;
button -width 292 -label "Launch in Photoshop!" -c "loadPhotoshop();"; //run procedure
showWindow OpenImage; //launches window
//window end

//edits the textbox with the filename selected
global proc FileLoc(string $filename, string $type)
{
textField -e -tx $filename FileLocation;
}

//procedure
global proc loadPhotoshop()
{
//photoshop location - REMEMBER TO CHANGE THIS TO YOUR PHOTOSHOP LOCATION
     string $PhotoshopL = "C:/Program Files (x86)/Adobe/Adobe Photoshop CS3/photoshop.exe"; 
        //photoshop location - REMEMBER TO CHANGE THIS TO YOUR PHOTOSHOP LOCATION
    
     string $FileL = toNativePath(`textField -q -tx FileLocation`); //converts the windows path (\) to Maya paths (/)
     system("start \""+$PhotoshopL+"\" \""+$FileL+"\""); //adds both the photoshop path and file path and launches it via the system 
     deleteUI OpenImage; //closes the UI
}

10 February 2011

Brougham Carriage - finished...

Okay so here is my finished (I say finished...) Brougham carriage! There's a few things I would like to work on but I don't want to spend too much time on each asset as I wouldn't be moving forward. I will definitely come back to this piece when I start a Medieval environment :D

Here's the carriage in the UDK mesh editor view.


Wireframe


UDK Material - I added a candle light effect for the lanterns of the carriage which you can see in the material diagram below.


And here's the 1024x1024 textures used. From left to right, Normal, Diffuse and Specular map.

01 February 2011

Skateboard

This was a piece I completed during my education at Escape Studios. We had to create a high poly asset of our choosing and complete it in Maya within 2 weeks.

I decided to create my skateboard - the graffiti and grip tape were sourced from my actual skateboard and the other textures were created in Photoshop. 






Blitz art test - Rubbish

This was an art test originally from Blitz. This was given to us at Escape Studios to complete in a day. We had to create rubbish that was below 500 triangles with only a diffuse map.

I completed this piece in 2-3 hours. I used vertex colouring as well as vertex alpha for the cellotape which can be seen on one of the cardboard boxes.



I am not very fond of this piece but considering the man hours spent on it, I thought it wouldn't hurt to post it on here.

Photoshop - Concepts

This is a piece I created whilst waiting for my plane to depart last summer. I had an idea of creating a robot infested environment where robots are dominating the human species.

The robot was created in Maya and I used real life pictures for the environment which have Photoshop filters applied to give it a different look.



Another Photoshop piece - this was an idea I got after playing Little Big Planet on the PS3. I thought it would be cool to have a big but small planet... hopefully I will create a scene like this in Maya!

The starfield as well as the planet were created in Photoshop. The Trees, the house and the lake however, were sourced from google.

Updating the blog..

Right, I've decided to use this blog as my main portfolio. I'll be uploading all the complete artwork I have created thus far.

28 January 2011

Mel scripting - toggle Pin UV Borders

Pretty similar to the other script I made a few posts down.

This is for the Smooth UV Tool in the UV Texture Editor. I find it quite tedious to keep opening up the tool to toggle the Pin Borders option so I thought this would shave off a few seconds!

I also made sure that when the Pin Borders is toggled off, it will automatically select the current object's shell so you can get on with the smoothing :D


//finding out what the value is set to
int $smoothResult = `texSmoothContext -q -pb texSmoothCtx`;


if ($smoothResult == 0)
    {   
//toggle on 
        texSmoothContext -e -pb true texSmoothCtx;
        print ("Pin borders: ON\n");
    }
    else
        {
   //toggle off
            texSmoothContext -e -pb false texSmoothCtx;
   //selects the shell of the selected object so you can smooth those UVs asap!
            polySelectBorderShell 0;
            print ("Pin borders: OFF\n");
        }
    
  

WIP - Brougham Carriage

I picked up an old project I started a few months back - I updated some of the modelling and I'm currently working on the UVs which are roughly 60% done. Just under 6k in tris which is pretty awesome!

Ambient occlusion pass... everything looks awesome in AO!


High sculpt of the cushion in Zbrush as well as the low poly version with the baked normal map applied, will be revisiting this when I'm happy with the whole UV layout.


27 January 2011

Photoshop fun!

So I got an idea around 20 minutes ago and came up with this little thing!

Done in photoshop... can change the text to anything - hello world! seemed appropriate :P The edges seem too "clean" but overall I kind of like the whole feel to it.



26 January 2011

Any room for a barrel?

I decided to make a wooden barrel to go along with the crate/pallet. This asset is using a 512x512 texture sheet and consists of 284 tris.


I've put all 3 assets together in UDK so you can get a glimpse of what it would look like in an actual environment. I used some vertex colouring on some of the assets to make them look slightly different.


Now to work on something bigger :D

25 January 2011

Another prop (yes a minor one!)

Today I created a wooden pallet which will go nicely with yesterday's wooden crate - you can never have too many little props! :D

Like the wooden crate, this asset uses a 512x512 texture map and is 256 tris.

24 January 2011

Minor prop - wooden crate

So here's a little prop that I was working on today... took longer than expected when importing into UDK. 

Finished at 176 tris per crate with a 512x512 texture sheet.



I only made a Diffuse and Normal map - I used the Diffuse as the Spec which is cheaper and doesn't look too bad.

Mel scripting - toggle Snap Component Spacing

Hello world!

So right, I decided to start a new project today and create some little props to get me back into the whole workflow. I then thought of a little script to toggle on/off the snap component spacing - it's annoying to keep going into the Move tool settings!

So here you have it:

//here we're finding out what the current value of the snap component is (0 = false and 1 = true)
int $snapResult = `manipMoveContext -q -snapComponentsRelative Move`;


//run this batch of code if the value is false (0)
if ($snapResult == 0)
    {
         //setting the component spacing to true
         manipMoveContext -e -snapComponentsRelative true Move;
         print ("Component spacing: ON\n");
    }
         //run this batch of code if the value is anything other than 0, in this case - 1
         else
             {
                  manipMoveContext -e -snapComponentsRelative false Move;
                  print ("Component spacing: OFF\n");
              }


We could have done this much easier by using the "Double Click" option in the Shelf editor but where's the fun in that? :P