maya , motionbuilder 骨骼动画相关操作与脚本

news2024/11/15 21:57:22

文章目录

  • Maya
    • 导入时增加namespace
    • maya 解除/增加父子关系
    • maya 修改骨骼局部坐标系
    • 显示骨骼局部坐标系
    • 删除不需要的骨骼
    • 重命名骨骼
    • 重定向基础细节
  • Motionbuilder
    • mb同时打开两个动画文件

Maya

导入时增加namespace

import pymel.core as pm
pm.namespace(add="src")
pm.namespace(set="src")

maya 解除/增加父子关系

解触: 右键->操作->解除父子关系
增加:鼠标中键拖拽

maya 修改骨骼局部坐标系

注意一般就是改旋转,而且提前还得先解除父子关系才能执行
作用:由骨骼定义导致的重定向各种奇怪结果的修复
在这里插入图片描述

这个操作和直接在属性列表里面修改 ”关节方向“ 是一样的,脚本全部设置为0可以看到

import maya.cmds as cmds

# 获取场景中的所有骨骼
joints = cmds.ls(type="joint")

# 循环遍历每个骨骼并将其关节方向设置为 0
for joint in joints:
    cmds.setAttr(joint + ".jointOrientX", 0)
    cmds.setAttr(joint + ".jointOrientY", 0)
    cmds.setAttr(joint + ".jointOrientZ", 0)

显示骨骼局部坐标系

双击这里然后选择轴方向为‘对象’。
在这里插入图片描述

作用:帮助我们了解骨骼实际的局部坐标系。注意显示的是自己的,但是数值是依据父骨骼的。按下w显示坐标系(其实就是平移快捷键)

删除不需要的骨骼

// 列出所有骨骼
string $joints[] = `ls -type "joint"`;

// 删除带有 "_drv" 的骨骼
print("删除带有 '_drv' 的骨骼:\n");
for ($joint in $joints) {
    // 检查骨骼名称是否包含 "_drv"
    if (`gmatch $joint "*_drv*"` == 1) {
        // 检查骨骼是否存在
        if (`objExists $joint`) {
            print("删除骨骼 " + $joint + "\n");
            delete $joint;
        } else {
            print("骨骼 " + $joint + " 不存在\n");
        }
    }
}

重命名骨骼

对于骨骼的名字配合match 可以这么处理

rename src dst

对于namespace 可以这么处理

namespace -mergeNamespaceWithRoot -removeNamespace "prefix_”;

重定向基础细节

1. 定义humanIK 的时候,上锁时这两个姿态必须对应齐。
2. Src 动作会全部覆盖,就和定义已经没有关系。而root 有比较特殊的地方。
3. 上锁之后调节 dst 的 humanIK  可以帮助调整动作(就不要再锁了)。

其实要了解一个 pre-rotate 的概念比较重要。

Motionbuilder

mb同时打开两个动画文件

先 import 一个,第二个拖入的时候只选择一个不冲突的 take 就可以同时显示。
另外有些时候 直接拖入和 import 的呈现效果不一样,感觉 import 更准一点。

如下图,如果import 和 open 的结果相同,那么久相当于第一个打开的时候选择(1),第二个打开的时候选择(2)
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1380720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝桥杯省赛无忧 STL 课件16 set

01 set集合 修改set比较方法的常见手段&#xff0c;后面的multiset类似 #include<bits/stdc.h> using namespace std; int main() {set<int,greater<int>> myset;myset.insert(25);myset.insert(17);myset.insert(39);myset.insert(42);for(const auto&…

【Kafka-3.x-教程】-【三】Kafka-Broker、Kafka-Kraft

【Kafka-3.x-教程】专栏&#xff1a; 【Kafka-3.x-教程】-【一】Kafka 概述、Kafka 快速入门 【Kafka-3.x-教程】-【二】Kafka-生产者-Producer 【Kafka-3.x-教程】-【三】Kafka-Broker、Kafka-Kraft 【Kafka-3.x-教程】-【四】Kafka-消费者-Consumer 【Kafka-3.x-教程】-【五…

Binder 机制 javanative

一&#xff1a;Binder介绍 Binder是一套ipc通信方案 Binder框架定义了四个角色&#xff1a; Server &#xff0c;Client&#xff0c;ServiceManager &#xff08;以后简称SMgr&#xff09;以及Binder驱动。其中Server &#xff0c;Client&#xff0c;SMgr运行于用户空间&#…

SRM供应商招标采购管理系统(源码)

软件相关资料获取&#xff1a;点我获取 一、SRM供应商在线采购 SRM供应商在线采购是指企业通过互联网平台&#xff0c;实现对供应商的在线招募、选择、关系管理等一系列活动。这种采购方式具有高效、透明、便于管理的特点&#xff0c;能够帮助企业降低采购成本&#xff0c;提…

AI副业拆解:「一键解锁」告别熬夜赶PPT,AI大模型带你秒变高效演示达人!

今天&#xff0c;我注意到一条新闻报道&#xff0c;揭示了今年全球及国内科技企业正激烈竞争&#xff0c;纷纷借力大模型技术扩展各自的商业疆界。据统计&#xff0c;截至今年7月尾声&#xff0c;我国已累计推出了130个大模型项目&#xff0c;其中尤为显著的是&#xff0c;仅在…

华为设备VRRP配置

核心代码&#xff1a; 需要对所有虚拟路由器设置&#xff08;要进入到对应的端口&#xff09; vrrp vrid 38 virtual-ip 192.168.10.254 vrrp vrid 38 priority 120 vrrp vrid 38 track int g0/0/1 reduced 30①mac由vrid生成 ②指定虚拟ip ③虚拟ip作为内部主机的网关&#x…

软件测试|Python数据可视化神器——pyecharts教程(十)

使用pyecharts绘制漏斗图 简介 漏斗图&#xff08;Funnel Chart&#xff09;是一种用于可视化数据流程或转化率的图表类型。它通常由一系列阶段组成&#xff0c;每个阶段都有一个名称和一个值&#xff0c;表示在该阶段的转化量或数据流程的进展情况。漏斗图的名称来源于其外观…

OpenAI ChatGPT-4开发笔记2024-06:最简Embedding

Embedding embedding直译是&#xff1a;嵌入。和实际意思有些差距。其实就是把文本转换为向量表示的过程。用“向量化”更直接&#xff0c;但这又和tensor有点儿混。它是变成向量的一个过程。 embedding 的应用领域&#xff1a; 文本分类&#xff1a; 将文本嵌入转换为向量后…

HCIP-1

一、网络类型&#xff1a; 点到点 BMA&#xff1a;广播型多路访问 – 在一个MA网络中同时存在广播&#xff08;洪泛&#xff09;机制 NBMA&#xff1a;非广播型多路访问—在一个MA网络中&#xff0c;没有洪泛机制 MA&#xff1a;多路访问 在一个网段内&#xff0c;存在的节…

SQL Server 配置远程连接

Windows 安装好 SQL Server 的 SSMS,打开SSMS配置远程连接 找到 配置管理器 启用 TCP/IP 打开防火墙设置 新建入站规则 端口TCP - 特定本地端口 (1433)允许连接下一步名称完成 重启 SQL Server 服务

深入理解 Spark(二)SparkApplication 提交和运行源码分析

spark 核心流程 yarn-client yarn-cluster spark 任务调度 spark stage 级别调度 spark task 级别调度 失败重试和白名单 对于运行失败的 Task&#xff0c;TaskSetManager 会记录它失败的次数&#xff0c;如果失败次数还没有超过最大重试次数&#xff0c;那么就把它放回待调…

教育观察期刊投稿邮箱、投稿要求

《教育观察》创刊于2012年&#xff0c;是国家新闻出版总署批准的正规教育类学术期刊&#xff0c;本刊致力于在教育实践中以“观察”为方法&#xff0c;以“观察者”为主体&#xff0c;以“新观察”为旨趣&#xff0c;打造从教育实践中洞察教育未来的教育研究与交流的平台。主要…

软件测试|深入理解Python中的re.search()和re.findall()区别

前言 在Python中&#xff0c;正则表达式是一种强大的工具&#xff0c;用于在文本中查找、匹配和处理模式。re 模块提供了许多函数来处理正则表达式&#xff0c;其中 re.search()和 re.findall() 是常用的两个函数&#xff0c;用于在字符串中查找匹配的模式。本文将深入介绍这两…

【WEB API自动化测试】接口文档与在线测试

这一篇我们主要介绍如何做API帮助文档&#xff0c;给API的调用人员介绍各个 API的功能, 输入参数&#xff0c;输出参数, 以及在线测试 API功能(这个也是方便我们自己开发调试) 我们先来看看我们的API最终帮助文档及在线测试最终达到的效果: 概要图 GET API 添加产品API: 删除…

电影开场后也能退票,“电影仅退款”能治烂片病吗?

1月11日&#xff0c;“#电影开场后也能退票了#”词条登上微博热搜。 根据央视六套《中国电影报道》&#xff0c;从今年元旦开始&#xff0c;湖南长沙部分影院开启了新型电影保险模式的试点。 在电影开场后30分钟以内&#xff0c;市民如果对电影内容不满意&#xff0c;可借助小…

超维空间S2无人机使用说明书——61、ROS无人机4G远程控制

4G模块使用说明 引言&#xff1a;为了实现对无人机的远程控制&#xff0c;我们采用了4G通信的方案&#xff0c;该方案需要硬件以及相关软件的支持。4G通信是可选择功能&#xff0c;请确认无人机型号是否选配了4G通信。 一、4G通信方案 我们的4G通信主要通过两种方式实现&…

软件测试|如何实现字典的键值互换,你会了吗?

简介 在Python中&#xff0c;字典是一种非常有用的数据结构&#xff0c;它将数据存储为键值对&#xff0c;并且键必须是唯一的。有时候&#xff0c;我们可能需要将字典的键和值互换&#xff0c;以便查找或操作数据更加方便。本文将详细介绍如何在Python中实现字典键值的互换操…

Flink(十二)【容错机制】

前言 最近已经放假了&#xff0c;但是一直在忙一个很重要的自己的一个项目&#xff0c;用 JavaFX 和一个大数据组件联合开发一个功能&#xff0c;也算不枉我学了一次 JavaFX&#xff0c;收获很大&#xff0c;JavaFX 它作为一个 GUI 开发语言&#xff0c;本质还是 Java&#xff…

Servlet-体系结构

一、思考 读者阅读完上一篇关于Servlet基本概念的文章后&#xff0c;我们知道每次实现一个Servlet&#xff0c;都需要覆盖五个接口&#xff0c;我们对除service接口外的其它四个接口&#xff0c;我们通常不会做什么处理。那么&#xff0c;这种实现方式是否有些繁琐呢&#xff…

python_selenium_安装基础学习

目录 1.为什么使用selenium 2.安装selenium 2.1Chrome浏览器 2.2驱动 2.3下载selenium 2.4测试连接 3.selenium元素定位 3.1根据id来找到对象 3.2根据标签属性的属性值来获取对象 3.3根据xpath语句来获取对象 3.4根据标签的名字获取对象 3.5使用bs4的语法来获取对象…