Blender批量修改名称

假如在Blender里按顺序添加了多个mesh,名字后缀按照数字1,2,3…编号,此时又要插入一个新的mesh,那么这个mesh之后的其它mesh名字都要加1,此时该怎么办呢?

比较简单的办法是把新mesh后面的mesh名称一个一个手动加1,如果数量少还可以,如果很多就有点浪费时间了。

Blender自身也提供了批量修改的功能,按Ctrl+F2可以调出批量改名的窗口,如下,
image.png

对于简单的替换这个是没问题的,但对于本文的case则不好操作了。好在Blender提供了执行python脚本的功能,通过python脚本,很容易实现各种批量改名字。

本文讲述如何在Blender里使用Python脚本来实现批量修改名称。主要分为2块:

  1. 批量修改mesh名称
  2. 批量修改动画名称

一 批量修改mesh名称

打开Blender,然后在里面再添加3个立方体,加上默认的,总共有4个立方体,
image.png
其名称依次是
image.png

假设现在要添加一个新的立方体,名字要命名为Cube.002,那么当前的Cube.002和Cube.003要依次改为Cube.003和Cube.004,首先让我们调出Python窗口,按照如下步骤,

image.png

最后变成这样,
image.png
此时我们在电脑里某个地方创建一个python脚本,叫rename.py,其内容如下,

import bpyfor one in reversed(bpy.data.objects):temp = one.name.split(".", 1)if len(temp) == 2:if int(temp[1]) >= 2:one.name = temp[0]+".{:03}".format(int(temp[1])+1)

PS:关键是这个reversed函数,会返回一个反向迭代器,这样可以从后往前去重命名,必须这样做,否则只有最后一个立方体可以命名成功。假如先从Cube.002开始重命名,变成Cube.003,但是此时原先的Cube.003还没修改名字,这样就会有2个Cube.003,blender会阻止这种事情,就会造成Cube.002重命名失败。

然后点击Open按钮打开,接着点击右侧红框里的执行按钮,
image.png

最后就发现立方体名字变了,Cube.002和Cube.003分别加1变成了Cube.003和Cube.004
image.png


二 批量修改动画名称

有了第一节的知识,批量修改动画名称就很简单了,假设每个立方体上都有个动画,对应关系如下,

  • Cube: CubeAction
  • Cube.001: Cube.001Action
  • Cube.002: Cube.002Action
  • Cube.003: Cube.003Action

同样要把Cube.002Action和Cube.003Action里的数字加1,同样的,我们把rename.py里的内容替换为如下,

import bpyfor one in reversed(bpy.data.actions):temp1 = one.name.split(".", 1)if len(temp1) < 2:continuetemp2 = temp1[1].split("Action")if (len(temp2) == 2):if int(temp2[0]) >= 2:one.name = temp1[0]+".{:03}Action".format(int(temp2[0])+1)

执行后显示如下,

image.png

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

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

相关文章

20230912在ubuntu18.04下使用pigz来提高tar命令压缩解压缩的速度

20230912在ubuntu18.04下使用pigz来提高tar命令压缩解压缩的速度 2023/9/15 22:19 https://blog.csdn.net/wb4916/article/details/128447298 20221226编译Toybrick的TB-RK3588X开发板的Android12系统2-SDK预处理 4、单线程压缩。 建议使用&#xff1a;pigz多线程压缩&#xf…

关于 firefox 不能访问 http 的解决

情景&#xff1a; 我在虚拟机 192.168.x.111 上配置了 DNS 服务器&#xff0c;在 kali 上设置 192.168.x.111 为 DNS 服务器后&#xff0c;使用 firefox 地址栏搜索域名 www.xxx.com &#xff0c;访问在 192.168.x.111 搭建的网站&#xff0c;本来经 192.168.x.111 DNS 服务器解…

DBeaver 下载、安装与数据库连接(MySQL)详细教程【超详细,保姆级教程!!!】

本文介绍DBeaver 下载、安装与数据库连接&#xff08;MySQL&#xff09;的详细教程 一、DBeaver 下载 官网下载地址&#xff1a;https://dbeaver.io/download/ 二、安装 1、双击下载的安装包&#xff0c;选择中文 2、点击下一步 3、点击我接受 4、如下勾选&#xff0c;…

javascript检测网页缩放演示代码

一、为什么会提示浏览器显示比例不正常&#xff1f; 在网上冲浪&#xff0c;有时在打某个网站时&#xff0c;会提示你的浏览器显示比例不是100%&#xff0c;建议你将浏览器显示比例恢复为100%&#xff0c;以便获得最佳显示效果。 二、检测网页缩放比例的方法 那么这些网站是如…

基于MSP430 红外避障-遥控小车(电赛必备 附项目代码)

文章目录 一、硬件清单二、模块连接三、程序设计四、项目源码 项目环境&#xff1a; 1. MSP430F55292. Code Composer Studio3. 蓝牙调试助手 项目简介&#xff1a; 小车可分为3种工作模式&#xff0c;每种工作模式都会打印在OLED显示屏上&#xff0c;通过按键转换工作模式。 模…

752. 打开转盘锁

链接&#xff1a; 752. 打开转盘锁 题解&#xff1a; class Solution { public:int openLock(vector<string>& deadends, string target) {std::unordered_set<std::string> table(deadends.begin(), deadends.end());if (table.find("0000") ! t…

华为云云服务器云耀L实例评测 | 华为云云服务器实例新品全面解析

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

零基础学前端(四)重点讲解 CSS

1. 该篇适用于从零基础学习前端的小白 2. 初学者不懂代码得含义也要坚持模仿逐行敲代码&#xff0c;以身体感悟带动头脑去理解新知识 3. 初学者切忌&#xff0c;不要眼花缭乱&#xff0c;不要四处找其它文档&#xff0c;要坚定一个教授者的方式&#xff0c;将其学通透&#xff…

【数据结构】串的模式匹配:简单的模式匹配算法,KMP算法

欢~迎~光~临~^_^ 目录 知识树 1、什么是串的模式匹配 2、简单的模式匹配算法 3、KMP算法 3.1 算法原理 3.2 C语言实现KMP算法 3.3 求next数组 3.4 KMP算法优化&#xff08;对next数组的优化&#xff09; 知识树 1、什么是串的模式匹配 串的模式匹配是在一个字符串中…

vscode和HBuilderx设置快捷键注释

一、vscode设置快捷键注释 1.打开vscode&#xff0c;使用快捷键&#xff1a;ctrlshiftp mac的话快捷键是&#xff1a;commandshiftp 然后在行中输入snippets 2.选择“新建”&#xff0c;选择将要配置的文件类型&#xff08;以vue类型为例&#xff09;我这里创建的名字为vue.…

使用docker创建minio镜像并上传文件,提供demo

使用docker创建minio镜像并上传文件&#xff0c;提供demo 1. 整体描述2. 环境搭建2.1 windows环境搭建2.2 docker部署 3. spring集成3.1 添加依赖3.2 配置文件3.3 创建config类3.4 创建minio操作类3.5 创建启动类3.6 测试controller 4. 测试操作4.1 demo运行4.2 页面查看4.3 上…

【云计算】虚拟私有网络 VPC

虚拟私有网络 VPC 1.VPC 简介1.1 VPC 相关基本概念1.2 其他相关基本概念 2.VPC 通信场景2.1 VPC 内部互通2.2 VPC 间互通2.2.1 对等连接2.2.2 Transit Gateway 或者云联网 2.3 访问 Internet2.3.1 Internet 网关2.3.2 NAT 网关 2.4 访问本地网络2.4.1 VPN 连接2.4.2 专线接入2.…

pytorch生成CAM热力图-单张图像

利用ImageNet预训练模型生成CAM热力图-单张图像 一、环境搭建二、主要代码三、结果展示 代码和图片等资源均来源于哔哩哔哩up主&#xff1a;同济子豪兄 讲解视频&#xff1a;CAM可解释性分析-算法讲解 一、环境搭建 1&#xff0c;安装所需的包 pip install numpy pandas mat…

原生微信小程序中进行 API 请求

原生微信小程序中进行 API 请求 当在原生微信小程序中进行 API 请求时&#xff0c;封装请求可以提高代码的可维护性和可扩展性。在本篇博客中&#xff0c;我们将一步步介绍如何进一步封装请求&#xff0c;并添加请求超时、拦截器和请求取消功能。 第一步&#xff1a;基本请求封…

混淆矩阵细致理解

1、什么是混淆矩阵 混淆矩阵&#xff08;Confusion Matrix&#xff09;是深度学习和机器学习领域中的一个重要工具&#xff0c;用于评估分类模型的性能。它提供了一个清晰的视觉方式来展示模型的预测结果与真实标签之间的关系&#xff0c;尤其在分类任务中&#xff0c;帮助我们…

【Unity基础】2.网格材质贴图与资源打包

【Unity基础】2.网格材质贴图与资源打包 大家好&#xff0c;我是Lampard~~ 欢迎来到Unity基础系列博客&#xff0c;所学知识来自B站阿发老师~感谢 &#xff08;一&#xff09;网格材质纹理 第一次接触3D物体的话&#xff0c;会觉得好神奇啊&#xff0c;这个物体究竟是由什么组…

基于安卓Java试题库在线考试系统uniapp 微信小程序

本文首先分析了题库app应用程序的需求&#xff0c;从系统开发环境、系统目标、设计流程、功能设计等几个方面对系统进行了系统设计。开发出本题库app&#xff0c;主要实现了学生、教师、测试卷、试题、考试等。总体设计主要包括系统功能设计、该系统里充分综合应用Mysql数据库、…

Ae 效果:CC Particle Systems II

模拟/CC Particle Systems II Simulation/CC Particle Systems II CC Particle Systems II&#xff08;CC 粒子系统 II&#xff09;可用于生成和模拟各种类型的粒子系统&#xff0c;包括火焰、雨、雪、爆炸、烟雾等等。 与 CC Particle World 效果相比有许多类似的属性。最大的…

前端该了解的网络知识

网络 前端开发需要了解的网络知识 URL URL(uniform resource locator,统一资源定位符)用于定位网络服务. URL是一个固定格式的字符串 它表达了: 从网络中哪台计算机(domain)中的哪个服务(port),获取服务器上资源的路径(path),以及要用什么样的协议通信(schema). 注意: 当…

C# wpf 实现桌面放大镜

文章目录 前言一、如何实现&#xff1f;1、制作无边框窗口2、Viewbox放大3、截屏显示&#xff08;1&#xff09;、截屏&#xff08;2&#xff09;、转BitmapSource&#xff08;3&#xff09;、显示 4、定时截屏 二、完整代码三、效果预览总结 前言 做桌面截屏功能时需要放大镜…