This wiki contains the most recent documentation for the Mattepainting Toolkit for Maya, and the Camera Projection Toolkit for Maya (MPTK and CPTK, respectively). Both of these toolkits are developed by Glyph Softwareand compiled for Autodesk Maya. The Camera Projection Toolkit is released as a Module in the Maya App Exchange, and is intended for all artists working with camera projections in Maya. The Mattepainting Toolkit is available here, and includes more advanced camera projection features for artists working with photogrammetry in a production environment.
Since there is a lot of crossover beteween the two toolkits, the documentation is combined in this Wiki, referencing gs_mptk only, with notes about gs_cptk limitations where applicable.
Why use gs_mptk and gs_cptk?
When texturing geometry in Maya, it is often preferable to use camera projections over UV placements, but the limited toolset Maya provides is unintuitive and labor intensive. Combining multiple projections is cumbersome and requires extra effort to paint holdout mattes to define explicit boundaries. Projection smearing, doubling on backfaces, and loss of resolution over large surface areas are common problems that take time to patch.
gs_mptk removes the technical burdens of setting up projections in Maya and allows artists to focus on the composition of the imagery. The advanced blending features of the toolkit are designed to target the challenges of integrating multiple projections, and reduce the number of mattes needed to isolate geometry. gs_mptk was built for mattepainters and texture artists, not programmers. A lot of consideration went into designing a system that functions in an intuitive way, implements time-saving features, and minimizes repetition.
What is gs_cptk?
gs_cptk is a limited-feature version of gs_mptk, intended for users who only care about managing and blending multiple camera projections, not the full suite of tools available in gs_mptk. See the complete list of feature differences in the following section. This wiki commonly refers to gs_mptk, and it can be assumed that the information is applicable to gs_cptk as well unless notes are provided otherwise.
What's included in the toolkit?
• gs_projCamMix is the dynamically-loaded mental ray shader that forms the foundation of the Mattepainting Toolkit and allows multiple projections to be blended based on a number of user-defined parameters.
• gs_occlusionMatteVRay and gs_projCamMixVRay together perform the same function for V-Ray as the mental ray shader. These shaders are not available in gs_cptk.
• gs_hwTexture and gs_hwComposite are the Maya shaders that visualize projections in the 3D viewport using OpenGL.
• gs_mptk_UI.mel is the MEL script that loads the interface to manage connections into gs_projCamMix, along with additional features.
• gs_const is the constant Mental Ray shader that is assigned to the Maya shading engine, and receives the output of gs_projCamMix.
|Blend multiple projections together||*||*|
|Blend projections using render occlusion masking||*||*|
|3D Viewport Projection Layering||*||*|
|Project sequences of frames||*||*|
|V-Ray shaders for rendering||*|
|Render Camera Coverage Maps||*|
|Point Cloud Data Import||*|
|Bundler Camera Data Import||*|
What does it do?
Simply, it blends multiple texture layers based on the blending parameters given to each texture. Viewport shaders help visualize these texture layers in the viewport, and in addition, render-time-only occlusion masking can be used with Mental Ray or V-Ray.
gs_mptk makes the process of setting up layered textures, and then managing their layer priorities, as straightforward as possible through a custom user interface. gs_mptk also includes features to assist modeling from projected images, a Structure From Motion data importer to reconstruct camera positions from photographs, and other features useful for building 3D environments in Maya.
• Maya 2012, 2013, 2014, or 2015 Note: gs_cptk is only available for Maya 2014
• Mental Ray plug-in loaded (though not required for rendering)
• V-Ray plug-in loaded to use the gs_mptk V-Ray shaders
• OSX, Windows, or Linux
• Version 3.1.3 Released for Maya 2017. Mental Ray must now be installed as a third-party renderer from nVidia: http://www.nvidia.com/object/nvidia-mental-ray-products.html
• Version 3.1.3 Released for Maya 2016. Minor UI fixes.
• Delete Paint Mattes button now works on OSX.
• Added Alpha Bake option.
• Renaming file name paths fixed.
• Viewport layering toggle value state remembered when re-opening UI.
• Thumbnail update option added to Options menu.
• Rendering attributes layout now properly sets enable and disable states for occlusion and facing ratio options.
• Added extra shader baking features: alpha, udim, full UV range, color depth.
• Fixed removing objects from Object List when intermediate shapes exist.
• Version 3.0 Released. Viewport 2.0 is now the default, and the legacy Default Renderer is only supported in earlier versions of the toolkit.
• Build 23132291 for Maya versions 2013, 2013.5 and 2014 released. Maya version 2012 is locked at build 19132284, released 8.6.12.
• Image sequences now supported for additional mattes list
• Improved shading connection handling for projections using alpha channels in the additional mattes list
• Fixed shading connection bug when enabling V-Ray Rendering for the first time (vraySpecificSurfaceShader attribute not found error).
• Film back offset, film aperture, and film fit type on cameras now automatically update the viewport shader when changed (no refresh required).
• V-Ray RT now supported.
• Alpha channel of V-Ray renders now correctly matches projection masks.
• Projected image sequences no longer require the UI to be open for updating when the current time is changed.
• Fixed layering bug when shadow occlusion was enabled.
• Removing a camera from the UI no longer deletes animation keys.
• Closing and re-opening the UI now remembers viewport shading assignments when multiple shaders exist in the scene.
• A new gs_cleanGeoNames.mel script is included to help fix duplicate shape names on geometry that prevent them from being added to the Objects List in the UI.
• Maya 2013 OSX version now supports OpenEXR in the viewport.
Released a patch to gs_mptk_UI.mel
• Animated sequences now display properly.
• Layering with more than 7 projections now works properly.
• Renders now layering projections when using auto-assign projections from SFM import.
• V-Ray integration
• Photosynth integration
• Animated sequences are now supported for projections.
• Multiple projection layering in the viewport.
• gs_mptk_UI assumes images with alpha channels that are added to the projection list should set shader transparency by default.
• gs_mptk_UI will not crash when adding projection cameras that have constraints.
• Multiple projection groups now composite properly.
• Geometry can now self-occlude in masking operations.
• Camera import from SFM data now does a proper matrix decomposition for all camera orientations.
Deprecations and Limitations
• miLabel is not supported in masking operations.
• Maya 2012 version is compiled.
• Fixed an aspect ratio bug in the Mattepainting Toolkit that was causing the viewport to stretch projections in some situations.
• Floating license option becomes available, in addition to node-locked licenses.
• Importing Bundler and PLY data is available for demo versions.
• The first version of the Mattepainting Toolkit is released.
• If you are using the V-Ray shaders with Maya 2012, you will need at least stable version 2.10.01 from 4/9/2012. Maya 2013 and 2014 does not have a version requirement.
• A demo version of gs_mptk is available here. The demo has a watermark in Maya's 3D viewport, and a red checker noise pattern over renders.