Skip to content

mayaMatchMoveSolver-v0.4.0.alpha3

Pre-release
Pre-release
Compare
Choose a tag to compare
@david-cattermole david-cattermole released this 13 Feb 03:52
· 1849 commits to develop since this release

DO NOT USE THIS IN PRODUCTION!!!
This version of mmSolver is for testing only!

This is a feature incomplete and buggy release of the upcoming v0.4.0 release of mmSolver.

This release contains fixes for Maya 2022 / Python 3, a new (2D) "Line" object type and an accurate "live" image plane to preview 3DEqualizer lens distortion.

The 2D Line is intended to be used to align to straight edges in a plate and then be used to solve lens distortion without any 3D (Bundle) information.
The lens solving part is not yet implemented, however the 2D Line can be used to visualise the line while you manually adjust the lens attributes.
This new 2D Line object is also integrated into the Camera Calibration set up (first introduced in v0.3.15).

The "live" image plane has been improved with a traditional "baked" (non-editable) image plane option and can be toggled with an attribute on the transform node (see the "Extra Attributes" roll out).
The lens distortion effects on the live image plane are accurate to the 3DE "classic" lens distortion model, so values from mmSolver can be (manually) typed into 3DEqualizer, Nuke or Natron and produce the same lens distortion effects.


Load mmSolver in Maya 2022

To load mmSolver on Maya 2022 you must run the following MEL command:

mmsolver_load

This will load the mmSolver plug-in, and allow you to automatically load the mmSolver plug-in and will ensure it is loaded each time Maya is started.

If you wish to unload mmSolver so it will not be loaded at Maya start-up run the following MEL command:

mmsolver_unload

These new commands were added to work-around the new Maya 2022+ Security preferences and ensure mmSolver will be loaded when it's needed.

Additionally the Python module mmSolver.startup was added, and allows pipelines to manually load mmSolver with the Python commands:

import mmSolver.startup
mmSolver.startup.mmsolver_startup()

Features / Changes

The main changes in this release:

  • Improves support for Maya 2022 / Python 3, especially for these tools:
    • Smooth Keyframes tool.
    • Change Rotation Order (Morgan Loomis - ML Tools)
    • User Preferences save correctly.
  • Introduces the Line shape node, mmSolver.api.Line() API object and related tools
  • The "live" image plane distortion plane accurately matches 3DEqualizer lens distortion.
  • The image plane loads a default image when created.
  • Improved visual display of Camera Calibration setup (with new Line nodes).
  • Added horizon line and axis dome presets for mmSkyDome shape node.

Developer (low-level) changes:

  • Marker are now assumed to always be under a camera with the translate X/Y values representing the position on the image plane in the range -0.5 to +0.5.
  • Parity between MM Scene Graph and Maya DAG 3D transform reprojection methods.
  • Internal tests have been upgraded - most tests have been improved and tested.
  • Changed structure of C++ code.
  • Build system improvements to allow multiple Maya versions and platforms to build from the same project directory.
    • .ui to .py file generation is still generated in the source tree which creates issues.

Known Problems

  • Compatibility with Maya scenes with mmSolver v0.3.x nodes may not work as expected - please report issues.
  • Solving with the new "Scene Graph" option in the Solver UI will cause a crash if solving with the "Standard" tab.
  • Marker nodes may not update position in the Viewport when moving the camera - this is a Maya playback cache/viewport update bug.
  • The Viewport 2 "MM Renderer" has aliasing problems and does not allow changing the "mode" of the viewport.
  • Marker shape nodes change size when the marker depth or camera focal length is adjusted.

Please report any bugs or suggestions you find in this release here and clearly state the version of mmSolver you are testing.