Posts

saveImage

Image
saveImage.py Hi nuker's finally found a solution for our long time wish and expectation. Now you can save image from the viewer. Like eyeon fusion and other application. saveImage.py will allowing you to choose the path and file name and type. Now you can choose the image as any format (which ever nuke support). example jpg, tga, tiff, png et. Added extra future channels. user can select channels to save image. Added extra future while saving as exr you can choose the Data type. Default its in 16bit-half, either you can choose32-bit float. Fixed sub-sampling to 4:4:4 while save as .jpg. Go to active viewer and right click select the save image as. It will pop-up a window like below image. Choose your path and file type. Hit ok it will save your active viewer result as image, It creates a read node and import your saved image into nuke. If you forget to choose path and file type nuke will pop-up a message box like below image: Hop...

shuffleAlpha.py

Image
shuffleAlpha Usually we use shuffle node to extract matte's from ID pass. For to do this we add a shuffle node and select the channel which need to be alpha channel.   This script will simplify this work, Its pop-up a panel (window)  called "selectChannel to shuffle" and you should choose your channel and click ok. This script will automatically done the above job. shuffleAlpha script also label the node like (red-->Alpha).  Added extra future called "to All channel". By default "to All channel" is unchecked, If you select your channel and hit ok it will give you below result. (This script keep other channels black rather then "alpha" channel) I used to work like this, Because off work-flow optimisation. For more information about nuke work-flow optimisation tips.... nuke-workflow-optimisation-tips With "to All channel" checked result: Also shuffleAlpha.py will label the shuffle node according to your select...

plus VS screen

Image
plus VS screen in (compositing) nuke There is operation's called plus and screen in nuke's merge node ( mostly all node based compositing software have this). Most of the people think both off this operation’s are same or similar, obviously both result look similar most of the times.  But there is huge difference between these operation's. 1. Plus operation: When you plus your two images b+a, Plus operation increases the value in black and white pixels evenly. Which means it plus the value of "B" image's black and white values by the value of "A" image. 2. Screen operation: When you screen your two images b+a, Screen operation increases the value on black and mid-value pixels only and keep white pixels as-it's. Which means it increases the value of "B" image's black and mid-values values by the value of "A" image. Tips: Use plus while working with specular and fire kind off elements. Use Scree...

Nuke workFlow optimisation TIPS

Image
Nuke work flow optimisation tips: Work flow optimisation is very important  and help-full while you render or preview the shot. When you working with bigger shots you should optimise your script for better working speed and rendering. Otherwise you always suffer lot with your machine....  God damn in slow ???!!!!! Here i'm going to give you guys some off my own way off working style and work flow optimisation tips....  Hope this will help you guys.... at-least... First thing first. 1. Avoid multiple read nodes. 2. Keep adding(over) your FG layers always on "A" input and keep connect BG to "B" input. Working like this way will help to keep track your "BoundingBox" size. Have a habit to always set your bbox to "B" from "union" after adding every Merge. i personally use to do this when ever add "Merge" node  ( in some case you need keep it union, like.... BG replace, match-moving ) If you forge...

2D Volumetric rays in nuke

Image
2D Volumetric rays Here i'm going to explain Creating 2D Volumetric rays in nuke. As a compositor and 3D artist every one really love Volumetric rays. Creating Volumetric rays in 3D packages such as Maya, 3dMax and any other 3D software’s are quit expensive. Its took long time to render for producing nice Volumetric rays. Creating 2D Volumetric rays doesn’t look nice like rendered in 3D packages. But we can save some valuable times by create this effect in 2D. You can create nice Volumetric rays effect like above image in Nuke. I used "Godrays" "Noise" and "roto" nodes to produce above result. Here we go............ Step-1. Import image into nuke. Step-2. Draw a roto shape to the light. If you have matte (alpha) will use that             instead off roto. Step-3. Add "GodRays" node and connect it to "roto" node. Move the center point             to the opposite  directio...

chromatic aberration

Image
chromatic aberration  Most people doesn’t understand What is "chromatic aberration"and struggle to handle it on post production. Here is simple solution to understand and produce good result in post. First is first.. What is chromatic aberration? Chromatic Aberration, also known as “color fringing” or “purple fringing”, is a common optical problem that occurs when a lens is either unable to bring all wavelengths of color to the same focal plane, and/or when wavelengths of color are focused at different positions in the focal plane. for more info: http://toothwalker.org/optics/chromatic.html Look below image Right side. You can see the red color (fringing) bleeds on the object edges.Its because of chromatic aberration.  How its happen? Chromatic aberration is caused by lens dispersion, with different colors of light travelling at different speeds while passing through a lens. As a result, the image can look blurred or noticeable colore...

Getting roto shapes name

Image
Getting roto shapes name gettingRotoNames.py script will print all the "Roto" shapes and "Layers" name in all the Roto nodes.  This script goes down 4 child layers deep and get all the shapes and layers. If want to go further you can add some more by editing this code.  def gettingRotoNames():     for rpNode in nuke.allNodes('Roto'):         cKnob= rpNode['curves']         root = cKnob.rootLayer         print '\n' + root.name         for e in cKnob.rootLayer:                print ' - ' + e.name             if isinstance(e, nuke.rotopaint.Shape):                 pass         ...