Friday, October 30, 2015

Meshfusion Substance test

Been busy lately and had to leave the troll for a while , but I've found some interesting stuff

Thursday, October 1, 2015

Script for manual UDIMS in Maya for Vray

Found out that the only way to use 32bit UDIM displacement in maya is to create a network of file nodes , because using actual UDIM setting will remove "negative colors" and your model will only go out not in :(


This script will create a UV UDIM tiles offset each one of them ,turn off UV wrap,allow negative colors , set color space to Linear (for 32bit), connect to default color them in order, filter type mipmap (for tiled .EXRs) and filter to 0.1 .

All you need to change is $ColPatchN and $RowPatchN  to size you need to match your UDIMS and attach each texture file to correct number. Maybe I'l update it later if there won't be better solutions for that (or maybe there already is something idn)
Here's the script itself:

//Create Attributes
string $filename = "dFile1_";
string $placerN = "tPlacer1_";
int $tempRow;
int $tFrameU = 1 ;
int $tFrameV = 0 ;
int $RowN = "1001";
int $ColN = "10";
int $ColPatchN = "8"; //number of columns
int $RowPatchN = "2"; //number of rows
int $lastCount = $RowPatchN - 1 ; //number to attach lasr cell from rows
int $secondTime = 0 ; //skip first one

///////////    GUTS    //////////////
//////////////////////////////////////////////////////Create loop 1
for ($t1 = 0 ; $t1 < $RowPatchN; $t1 = $t1 + 1  ){
//////////////////////////////////////////////////////Create loop 2
for ($t2 = 0 ; $t2 < $ColPatchN; $t2 = $t2 + 1  ){
//Create ,name ,set attr for file and placement nodes
shadingNode -asTexture file;
rename "temp_01";
setAttr "temp_01.filterType" 1;
setAttr "temp_01.alphaIsLuminance" 1;
setAttr "temp_01.filter" 0.1;
//Allow vray negative colors
    vray addAttributesFromGroup temp_01 vray_file_allow_neg_colors 1;
    vrayAddAttr temp_01 vrayFileAllowNegColors;
//Texture input gamma
        vrayAddAttr temp_01 vrayFileGammaEnable;
        vrayAddAttr temp_01 vrayFileColorSpace;
        vrayAddAttr temp_01 vrayFileGammaValue;
        setAttr "temp_01.vrayFileColorSpace" 0;
//renaming
            rename "temp_01" ($filename + $RowN) ;
                shadingNode -asUtility place2dTexture;
                rename "tempP_01";
                rename "tempP_01" ($placerN + $RowN) ;

//Connect placement and file attr
connectAttr -f ($placerN + $RowN + ".translateFrame") ($filename + $RowN + ".translateFrame") ;
connectAttr -f ($placerN + $RowN  + ".rotateFrame") ($filename + $RowN  + ".rotateFrame");
connectAttr -f ($placerN + $RowN  + ".mirrorU") ($filename + $RowN  + ".mirrorU");
connectAttr -f ($placerN + $RowN  + ".mirrorV") ($filename + $RowN  + ".mirrorV");
connectAttr -f ($placerN + $RowN  + ".stagger") ($filename + $RowN  + ".stagger");
connectAttr -f ($placerN + $RowN  + ".wrapU") ($filename + $RowN  + ".wrapU");
connectAttr -f ($placerN + $RowN  + ".wrapV") ($filename + $RowN  + ".wrapV");
setAttr ($placerN + $RowN  + ".wrapU") 0;
setAttr ($placerN + $RowN  + ".wrapV") 0;
connectAttr -f ($placerN + $RowN  + ".repeatUV") ($filename + $RowN  + ".repeatUV");
connectAttr -f ($placerN + $RowN  + ".offset") ($filename + $RowN  + ".offset");
connectAttr -f ($placerN + $RowN  + ".rotateUV") ($filename + $RowN  + ".rotateUV");
connectAttr -f ($placerN + $RowN  + ".noiseUV") ($filename + $RowN  + ".noiseUV");
connectAttr -f ($placerN + $RowN  + ".vertexUvOne") ($filename + $RowN  + ".vertexUvOne");
connectAttr -f ($placerN + $RowN  + ".vertexUvTwo") ($filename + $RowN  + ".vertexUvTwo");
connectAttr -f ($placerN + $RowN  + ".vertexUvThree") ($filename + $RowN  + ".vertexUvThree");
connectAttr -f ($placerN + $RowN  + ".vertexCameraOne") ($filename + $RowN  + ".vertexCameraOne");
connectAttr ($placerN + $RowN  + ".outUV") ($filename + $RowN  + ".uv");
connectAttr ($placerN + $RowN  + ".outUvFilterSize") ($filename + $RowN  + ".uvFilterSize");
                            //Change FrameV
                            setAttr ($placerN + $RowN + ".translateFrameV") $tFrameV;
                            //attack 1002 to 1001 no so on
                            if ($secondTime > 0 )
                            {
                            int $prevRow = $RowN - 1;
                            defaultNavigation -ce -source ($filename + $RowN ) -destination ($filename + $prevRow + ".defaultColor");
                            setAttr ($placerN + $RowN + ".translateFrameU") $tFrameU;
                            $tFrameU = $tFrameU + 1;
                            };
                                        //count if second time
                                        $secondTime = 1;
                                        //name next one
                                        $RowN = $RowN + 1;
};
//reset second time for next row
$secondTime = 0;
//Create new row
$RowN = $RowN - $ColPatchN;
$RowN = $RowN+$ColN;
//reset frame in U
$tFrameU = 1 ;
//Change frave in V
$tFrameV = $tFrameV + 1 ;
};
//Attach last cell to new row
$RowN = "1001";
int $changedROW = 0 ;//add if row changed
for ($t3 = 0 ; $t3 < $lastCount; $t3 = $t3 + 1  ){
defaultNavigation -ce -source ($filename + ($RowN + $changedROW + 10)) -destination ($filename + ($RowN  + $ColPatchN + $changedROW - 1) + ".defaultColor");
///                                         1001  +    0     +  10                              1001  +   6        +    0        -   1
$changedROW = $changedROW + 10 ;
};

Progress

All parts assembled , I have a rigging class next term but I've tried to make a simple one for posing right now, next steps >

1.Looks like displacement gives to better results than I thought , so more more surface detailing !
2.Rebake reimport , make a usable rig and pose
3.Cloth and cloth related details on the pose
4.Shave and haircut

Monday, September 28, 2015

Uvs and extra stuff

Adding some extra parts to fit the concept , also done with main retopo and Uv tiling , it's going to be 5 x 5 , 2048px

Sunday, September 27, 2015

Almost done with retopo....

    Took a break for a while but almost finished retopo , some parts are left then I'l need to create and pack all of the UV's , bake all of the maps , pose the character , simulate cloth , retopo uv bake that and figure a goo way to make hair
   Totally 34500 faces so approximately 17000 faces of manual retopo

Wednesday, September 23, 2015

And more retopo

Fixing the hands and more retopo work , they will need more polygons because I don't want to deal with displacement problems later, so I have smooth it once

Tuesday, September 22, 2015

UDIM test and organization for MARI texturing

More retopo and planning for future UDIM placement
Found out you can save UDIMS in Zbrush directly for multiple subtools in one click only problem it stops in the middle of baking few times when it switches subtool for no reason !!! (if you're not inside zbrush)
some back muscles need more work but currently there's 2x3 2048 UDIMS trying to group them by material and use them efficiently 

Saturday, September 19, 2015

More Displacement ,bump, gloss map tests

Trying to get the look I want for the metal pieces , and all I will need to do later is to copy/paste and add some details (because I will already know the exact values that will work with my scene and light setup) , had some problems with displacement but fixing the topology flow and increasing polycount helped
That scratch feels too soft and there's other problems but I like the feeling of the shader in general

All of the surface details are made by gloss map and bump , spec map was a flat color

More Displacement tests and retopo of parts

Used this tutorial from Cggallery , more setting and explanation here  http://www.cggallery.com/tutorials/displacement/

Subsurface scattering (SSS test)

Finally got a break and decided to finish one of my sculpts in zbrush , never used Vray before but I'm pretty familiar with Mental ray so it shouldn't be hard.
Quick retopo with displacment and bump , used MARI for texturing
Saved in 32bit EXR and adjusted in photoshop

Intro

Hello there , my name's Eugene , currently I'm studying Computer graphics in Los Angeles in Gnomon School and here you will see work in progress on projects I'm doing  ,some quick tips and just random but maybe useful stuff !