Tuesday, June 7, 2016

Houdini Lesson 01

Picking up Houdini through conducting our own in company curriculum. The goal is to run the gauntlet and learn this shit fast. So here is the first video to help me memorize what I've learnt. 


Nodes learnt 
- Geometry node (Container for geometry)

- Box & Sphere node for creating Geometry

- Attribute VOP (Equipvalent of Maya node editor to gain access to per particle attributes)

- Add node in Attribute VOP (basic sum of inputs)

- Turbulence Noise (Used in the Attribute VOP in conjunction with Add node to provide turbulence)

- Scatter node (To scatter points onto the surface on an existing geometry)

- Transform node (To perform a transform)

-Copy node (To copy a geometry onto each point/particle/vertex depending on source)
       - In the copy node, turn on stamp inputs to activate it. Fill out Variable 1 or 2 or 3 etc etc to                    assign the variable a name to call upon.
       - Fill out the value of that variable with - "fit(rand($PT),0,1,0.02,0.3)"
       - In the transform node, type this into the "Uniform Scale" - "stamp("../copy2","scale",0.5)"
0.5 is the default value 


- Add node (To add curves between each object if you use "By Group" settings inside the node)

- Polywire (Creates a tube based on the curves created the the geometry)

- Group node (To label the result of a bunch of nodes to be used as a group that can be called upon using certain nodes such as the delete node)

- Merge node to combine the results of 2 nodes





Wednesday, August 12, 2015

Back to basics

- Everything exist with a transform node and a shape node except Joints & Volume Primitives
- Everything has a local
- Joints & Volume primitives are a combination of transform & shape
- Main joint (First joint placed is global as it is placed in world space and not unable to be placed under a parent on creation), the rest are local from the joint above
- Joints translation local is visible in the channel editor
- However, as joints need to always be zeroed, the rotation is hidden inside the "Joint Orient" area.

There is Global and Local. If your object is a child of something, it's translation and rotation is compensated & takes the values from the global

Thursday, October 16, 2014

Thursday, October 2, 2014

Playblasting into FCP

I was facing an issue with playblasting an avi. file and importing the shots into FCP for edits for previz. Essentially, I can't render out AVI from Maya if we are going to use FCP.

I have a situation that could use some major addressing. I work in a mixed platform environment that uses PCs for creating 3d content (Maya) and FCP for editing.

When I playblast an animation from Maya with the render globals set at 24 fps and output type as AVI, I get a standard windows AVI file that can be directly read by FCP.
(AVI is the only format available that doesn't use frames)

Here's the problem. Final Cut Pro reads that 24fps avi as 23.98 fps. (Drop frame). As a result, most of my renderings are trunkated by one frame. The only solution to this problem is to either:

1. Output individual frames from Maya rather than an AVI and import those frames as an image sequence in QTpro and then export out a true 24fps .mov file.

2. Load the playblasted AVI file into QTpro on the PC and then resave the file as a self contained movie rather than exporting it.

For some particular reason, any .mov file exported from the PC can not be read directly into FCP. A self contained movie works, but nothing else. What gets strange is the same file, though not readable in FCP, is readable in QT and at non drop frame.

Sounds confusing? Yes. But I've replicated the problem on every computer I've used. 

I'd like to retain the avi compatibility because:

1. Animators can output AVIs directly from Maya on their PC.
2. I don't want to deal with uncompressed frames and large numbers of files.

Explanation

Sunday, August 10, 2014

Maya to AE

Things to take note

Rename locators in Maya to null_shape01 & so on & so fourth.
Bake all frames required of camera as well as locators. It will shift the keyed range to start from frame0 in After Effects.

Use this mel script found on Maya Station to clear all junk in file if you have issues saving out as .ma from .mb
There are 3 different types of unknown nodes that can prevent re-saving as a different format. 
Unknown nodes, unknown transforms and unknown dag nodes. 
The other two are uncommon. But it’s worth mentioning .to delete all three types:

delete `ls -type unknown -type unknownDag -type unknownTransform`

Also, if there are still issues, it could do with left over referencing junk. Turn off Display on DAG objects in outliner and delete everything else but be-careful not to delete the animation nodes.

Last thing is the scaling issue which I will re-write here after discussions.

Scale issues with locators.
Alt Click on the position button of the null and then under expression type - transform.position*100 on all nulls.

Monday, July 21, 2014

Image Sequence rule

Whenever I am going to use an image sequence. Remember the naming convention has to switch from imagetest_####.jpg to imagetest.####.jpg

For preview in texture map to work

supported file formats are
- iff
- tiff
- tga (32bit)

But previews take awhile and pushing the "use image sequence" button on and off forces a refresh.

Monday, May 26, 2014

Friday, May 2, 2014

Displacement Issues

It is late. Vray and displacement maps never work out the way I think they would and its always been a bitch. I am tired so ill just leave this link here first  and check it out another time.

http://www.cggallery.com/tutorials/displacement/


Friday, January 17, 2014

Applying similar shader to Instances

Had this same issue 3 years ago. Just found this script.

1. Go to master of instances and switch to select faces.
2. Select faces to apply shader.
3. Run script using "select -r (expandSelection());".
4. Apply shader.

apply-shaders-to-all-maya-instances

In-case the script ever goes down, backup here. This is from Janne Ojala. Thank you.

/* jooCCRequestedExpandSelectionToInstances.mel 0.1
Authors: Janne 'Joojaa' Ojala
Testing: if it works after a suitably long time without
much problems let me know. Report any problems.
License: Creative Commons, Attribution, Share Alike
Request by: Toast
About:
A simple script that rxpand selection to each instance if only
one instace is selected
Usage:
select any number of faces on one object and run:
select -r (expandSelection())
or
sets -e -forceElement blinn1SG (expandSelectionToInstances());
to assign directly to shaders
Changelist:
06.03.2012 - Original file
*****************************************************************/
global proc string[] expandSelection() {
string $selection[] = `ls -sl`;
string $hl[] = `ls -hl`;
string $ret[];
$hl = `listRelatives -shapes $hl`;
//if (size($hl) > 1)
// error("select only in one object");
$hl = listRelatives("-parent", "-f", `ls -ap $hl`);
for ($item in $selection){
$match = `match "\.[^.]*$" $item`;
for ($item in $hl){
$ret[size($ret)]=($item+$match);
}
print "//Result: Sucessfully applied selection to all instances \n";
}
return $ret;
}

Wednesday, December 18, 2013

Scanline for Compositing



Entered a discussion today about Scanline files for .EXR. Definitely, if a file is bucket rendered, it is about 3x-5x slower to be read in nuke. - articles were dated back in 2010 though.

But it seems that vray 2.0 this has been addressed as stated on their website. A compositor told me that compression type and storage type; though both have the word scanline in there as an option are two different things.

Questions - I saw a blog post taken from 3dmax, they do indeed have a compression and storage type setting which indicates my compositing friend is right.

But if so, then where are the correct settings in Maya Vray to have the files output as scanline and unrelated but what is the "Auto data window (multi-channel scanline files only) button for?


Friday, November 22, 2013

Multi Tile UV Mapping Tutorial for Mari & Maya

4 Part Tutorial on Mult-Tile UV Mapping

Multi-Tile UV Mapping Part 1 
Part 1

Part 2: Multi-Tile Painting in Mudbox
Part 2

Part 3: Multi-Tile Shader Setup/Rendering in Maya.
Part 3

Multi-Tile UV Mapping/Displacement Part 4
Part 4

Tuesday, October 22, 2013

UV Mapping Pass in Vray for Nuke

Separate files will need to be created prior to final render. Turn off all linear workflow tricks and set the file to be 32bit.

UV Mapping Pass in Vray for Maya

Nuke Camera Animation to Maya

So I just tested this script and it works well. Important to note, Nuke artist should set up the camera to match the footage so that when it jumps over to Maya it is all in Sync.

Creative Crash Script

Tuesday, August 13, 2013

Displacement 50% grey - No touchy!

Displacement mapping should be simple enough. Used a 4092 texture map at 50% grey for base, 16bit & 8bit. Followed this tutorial http://mayazest.blogspot.sg/2012/03/simple-displacement-mapping-in-v-ray.html and tried -0.5 for displacement shift which gave a worse off result. 

Can't seem to have 50% grey leave the geometry alone. Why?

Friday, July 12, 2013

Vray Extrapolation

Was hoping that vray extrapolation was the equivalent of the MR EnvBlur. This is not the case. Listed as never to use this in an animation as it may cause flickering issues.

Vray Physical Camera

We have been texturing and lighting in a file with Vray Physical Camera with Movie Camera setting. This provided a way richer result as compared to Still Animation Camera.

Posted this question on the forums, awaiting reply.

Thursday, April 18, 2013

Matching Vray camera to an actual physical camera

Was trying to find a way to keep the Vray Physical Attribute field of view similar to Maya's own camera to prevent issues. Turns out, there is an option to take the focal length info from Maya's own settings. Problem solved.

Stumbled on this while I was trolling. Good stuff for future use.

http://www.mr-jose.com/guides/vray_physical_camera_guide.pdf