Blender脚本开发

简介: Blender脚本开发

Blender是一款开源的模型编辑工具,能够支持脚本语言的开发,对于批量的模型处理,借助脚本,能够减少手工的操作。
Blender的脚本使用python语言进行开发,使用python的API,同时能够调用Blender的API。

Blender的API地址:
https://docs.blender.org/api/2.80/
在Blender中使用脚本的步骤,先切换到脚本编辑界面:
image.png
中间空白区域,就是python脚本的编写位置,点击“模版”,可以查看一些提前预置的脚本。
image.png
以打开文件的模版为例,打开后,直接点击右侧“运行脚本”,可以看到打开了选择文件的窗口。
image.png
使用Blender的API,都需要import bpy,才能对模型文件进行操作。
一个简单的根据文件夹,选择其中的.dae格式模型,导出成.glb模型格式代码:

import  os

import bpy

#定义删除场景中的模型文件,实现导入一个删除一个

def remove_file():

    objs = bpy.data.objects

    for (k,v) in  objs.items():

        bpy.data.objects.remove(v)

data_path ="输入路径"

out_path="输出路径"

file_list = os.listdir(data_path)

remove_file()

#遍历其中的dae模型

dae_list = [item for item in file_list if item.endswith('.dae')]

for item in dae_list:

   dae_path =  os.path.join(data_path, item)

   #dae模型导入

   bpy.ops.wm.collada_import(filepath=dae_path)

   #glb模型导出

  out_dae_path = os.path.join(out_path, item.replace(".dae",'.glb'))

 bpy.ops.export_scene.gltf(export_format='GLB',filepath=out_dae_path)

   remove_file()

以上python语言格式显示不正常,请根据编辑器进行调整。
对于一些Blender的操作,在使用时,编辑器的左下方会显示对应的命令提示,可以直观了解一下API的使用。

image.png

相关文章
|
自然语言处理 C++
探究C/C++编码世界:从字符编码到中文处理之艺(二)
探究C/C++编码世界:从字符编码到中文处理之艺
458 2
|
缓存 Ubuntu Linux
WSL2(4) Ubuntu中无法使用snap解决办法
WSL2(4) Ubuntu中无法使用snap解决办法
908 0
|
异构计算 计算机视觉 测试技术
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
1921 0
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
|
XML 域名解析 JSON
【RESTful】RESTful API 接口设计规范 | 示例
【RESTful】RESTful API 接口设计规范 | 示例
12252 0
【RESTful】RESTful API 接口设计规范 | 示例
|
编解码 搜索推荐 图形学
Premiere2023精简版一键下载无须激活版PR下载
Adobe公司Premiere 简称为pr,这是一款适用于电影、电视和 Web 的业界领先视频编辑软件,通过它不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理,还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效果预设等操作,功能十分的全面强大。当然,不仅如此其中不但内置了海量的素材供用户自由使用来更好的帮助你制作出精美的影片和视频,还能根据自己的需求直接与Ps、Au、Ae等程序进行无缝协作。PR 最新版本号是 2023,新增功能主要有丰富、直观的导入和导出模式,具有 Frame.io 集成的新审阅工作区,离线语音转文本新增
1345 0
|
10月前
|
测试技术 API
在性能测试中,怎样设置合理的迭代次数?
在性能测试中,迭代次数的合理设置至关重要,它直接影响到测试结果的准确性和可靠性。
548 57
|
负载均衡 监控 网络协议
深入理解并实现负载均衡技术
【5月更文挑战第23天】本文探讨了负载均衡技术,旨在应对互联网高并发需求。负载均衡通过分散请求至多台服务器,提升系统性能和可靠性。核心是负载均衡器,其工作流程包括接收请求、解析、选择服务器、转发及返回响应。负载均衡技术分类包括反向代理(如Nginx、HAProxy)、DNS、IP(如LVS)和应用层负载均衡。实现时,以Nginx为例,需安装、配置反向代理、分发策略并启动服务。监控和优化是持续过程。负载均衡技术将持续发展,适应云计算和大数据时代。
|
11月前
|
机器学习/深度学习 自然语言处理 计算机视觉
深度学习中的迁移学习技术
【10月更文挑战第11天】 本文探讨了深度学习中的迁移学习技术,并深入分析了其原理、应用场景及实现方法。通过实例解析,展示了迁移学习如何有效提升模型性能和开发效率。同时,文章也讨论了迁移学习面临的挑战及其未来发展方向。
springboot整合mybatis-plus及mybatis-plus分页插件的使用
这篇文章介绍了如何在Spring Boot项目中整合MyBatis-Plus及其分页插件,包括依赖引入、配置文件编写、SQL表创建、Mapper层、Service层、Controller层的创建,以及分页插件的使用和数据展示HTML页面的编写。
springboot整合mybatis-plus及mybatis-plus分页插件的使用
|
并行计算 编译器 C#
"CMake高手进阶秘籍:解锁高级技巧,实践最佳策略,让你的项目构建如丝般顺滑,效率飙升!"
【8月更文挑战第11天】CMake是现代软件开发的关键构建系统,其跨平台与灵活配置特性简化了复杂项目的构建流程。本文探讨CMake的高级技巧与最佳实践,包括升级至最新版本以利用新功能;采用面向目标的编程方法,增强项目清晰度与可维护性;运用CMake预设统一多平台构建配置;掌握调试技巧快速定位问题;集成代码检查与格式化工具保障代码质量;以及启用并行构建提升构建效率。通过这些策略,开发者能够更高效地管理大型项目。
306 3