What is a little tweak or change we can make to Maya?

Copy and Paste between scenes without renaming nodes

Maya should have a more friendly copy and paste: Right now it renames the nodes when you copy and paste objects from scene to scene.

I like creating objects in a scene and then pasting them into my "layout" scene.

Maya should only rename if there are conflicting names.

105 votes
Sign in
Signed in as (Sign out)
You have left! (?) (thinking…)
mjmurdoc shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →


Sign in
Signed in as (Sign out)
  • Spacematt commented  ·   ·  Flag as inappropriate

    Should have a choice between no-rename, put into a namespace, or the current behaviour.

  • magilla commented  ·   ·  Flag as inappropriate

    likewise for import and namespaces, it is a totally unnecessary over-management of how users interact with files and objects to the detriment of workflow

  • redace554 commented  ·   ·  Flag as inappropriate


    I dont know if its allowed to post suggestions and workarounds here but here goes :D.

    In the meantime there is a really easy workaround for this.
    It requires you to change a mel script.
    You can find it here:
    C:\Program Files\Autodesk\<MayaVersion>\scripts\startup\cutCopyPaste.mel

    in this function:
    global proc pasteScene()

    Find the following lines: (note that these lines might look different in older versions of maya. but most of it should be the same)

    string $newTransforms[] = `file -force
    -renameAll true
    -renamingPrefix "pasted_"

    Now change this to the following lines:

    string $newTransforms[] = `file -force
    -renameAll true
    -mergeNamespacesOnClash true
    -namespace ":"

    This will prevent maya from making groups when pasting and it will no longer add the "pasted_".

    *Note, if there are conflicting nodes in the scene Maya will automatically add a number to the object that is clashing.

    If you are managing a studio and you want to roll but do not want to change everyones mel script. Then just create a "global proc pasteScene" with the desired code and just load it upon start i.e. via the userstartup.mel / py files.

    Hope that helps :)
    Hope that helps.

Feedback and Knowledge Base