+1 tag for Google+

Tuesday, 28 October 2014

Setting Maya Viewport's Texture Resolution Above 256x256

While working on a project that required me to display map features in very fine detail, I ran into the problem of Maya's limited ability to show texture maps at higher than 256x256 in the viewport.

On the left is the source image supplied as a texture on the plane in the Maya scene, displayed from Window's image viewer. On the right inside of Maya is the same map that's loaded as a lower resolution map.

In the hardware texturing setting for that shader (I'm using a surface shader), we soon find out that 256x256 is the highest resolution we can choose to show our texture at.

Searching through the Internet I had the good fortune to come across this very useful tip on a blog that solved the problem for my situation:

To find out the current hardware texture resolution for the shader of this object, we have to find out the name of the shader. For me it is "mapFullLinesShader".
So if I open up my script editor and type in the following in an empty MEL tab and execute this line of script:
getAttr mapFullLinesShader.resolution;

I would get the current texture resolution that mapFullLinesShader is displaying in the viewport. For me it was 256x256, so MEL returned "result: 256".

Therefore to set it to 1024x1024, I would have to enter the MEL command:
setAttr mapFullLinesShader.resolution 1024;

Thereafter the resolution displayed through the viewport is high enough to display the details needed for my work in the Maya scene.

Of course if 512 x 512 is sufficient for the situation we would change the script accordingly to:
setAttr mapFullLinesShader.resolution 512;

In some cases you may still be unable to see the resolution increase. In this case, check the shader's Textured Channel in the hardware texturing section. Switch between the different channels a bit, that may refresh the texture display. I usually find myself going back to the Combined Texture mode, and that works for me.

I hope it helps you if you run into the same situation :)

Tuesday, 7 October 2014

AE World: Andrew Kramer Keynote Speech

Here's a great keynote speech by Andrew Kramer of Video CoPilot, at AE World 2014.

He has great humour, and it was very inspiring and motivating talk. It brings us to revisit the question of why VFX artists and motion graphics designer do what we do, and somehow it is a bit like rediscovering our first love as Andrew shared some of his adventures working in the industry.

As a matured artist who is well skilled in his craft, he gives very sound advice that I feel, is very applicable to every artist across all artistic disciplines. 

He has advice to artists just starting out, artists trying to find their direction, trying to get noticed, or even how we should be approaching our craft with relation to the other aspects of our lives. 

All in all this was was great presentation, highly entertaining and with plenty of reminders and checkpoints for us to think about what we really want, where we really are, who we want to be and where we want to end up. 

Using Shading Switch Nodes in Maya

Here's a demonstration of the use of Shading Switch utility node. This tutorial shows how you can have a same shader with different properties when applied to different objects.

This is a huge help when your scene and assets increase in complexity.

With the switch shader node in your shader tree, there will be no need keep multiple copies of the same shader and keeping them in updated when one of the values change.

For years I have tried to find out to do this since a very similar thing could easily be done in 3D Studio Max (paste instance for texture nodes). Finally with this shading node, I have found how this could be done in Maya.

I hope this is beneficial to you in some way. Enjoy! :)

Saturday, 5 July 2014

20140704 Duplicating Objects on a Deforming Surface Script

20140704 Duplicating Objects on a Deforming Surface Script from Patrick Woo on Vimeo.
An extension from the tool from my previous video that merely sticks objects to a surface's normal, I have added distance control functionality.

Each duplicated object on the deforming surface now scales in reaction to the distance between itself an a control object. I also included an inverse distance and pulse mode with speed controls.

This is one way to manipulate the behavior of multiple objects with a few simplified controls and attribute values.

My script takes any 3 objects to be the surface, the object to duplicate across the surface, and finally, a control object to affect the scale of the array of the duplicated objects.

Thursday, 3 July 2014

A Good Introduction to Maya API Programming from Chad Vernon

I know my posts are all over the place, but I found this Maya API tutorial.

Chad Vernon is a Character TD, Studio Pipeline TD and Software engineer. He was previously a Creature Pipeline TD at Digital Domain. Here's a write-up on Chad at CG-Circuit.

In his blog, Chad has some very useful of technical resources that will greatly fellow artists and TDs, mostly in the areas of Maya and Direct X.

Do take a look at his Maya API related links at his site: http://www.chadvernon.com/blog/resources/