# 3Dmodel2png **Repository Path**: playsa/3-dmodel2png ## Basic Information - **Project Name**: 3Dmodel2png - **Description**: 3D模型转PNG序列帧 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2026-01-28 - **Last Updated**: 2026-02-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 3D模型动画帧导出工具 (3D Model to PNG Exporter) 一个基于Unity的3D模型动画帧序列导出工具,支持将动画片段导出为高质量图片序列,适用于游戏开发、动画制作、内容创作等场景。 ## 功能特性 ### 核心功能 - **帧序列导出**:将3D模型动画导出为PNG或JPG图片序列 - **批量导出**:支持配置多个导出任务,一次性批量处理 - **多角度导出**:支持8方向(2D精灵模式)和自定义相机角度 - **透明背景**:可选择透明背景并保留Alpha通道 - **灵活配置**:支持自定义分辨率、帧率、输出格式等参数 ### 高级功能 - **2D精灵模式**:自动生成8方向精灵表,适合2.5D游戏开发 - **批量处理**:预设多个导出任务,自动按顺序处理 - **动画预览**:可在导出前预览当前帧效果 - **URP支持**:完美支持Unity Universal Render Pipeline ## 系统要求 - **Unity版本**:2021.3 LTS 或更高版本 - **渲染管线**:Universal Render Pipeline (URP) 推荐 - **.NET版本**:.NET Standard 2.1 - **目标平台**:Windows 10/11 (其他平台需调整) ## 快速开始 ### 1. 导入项目 将项目克隆或下载到本地: ```bash git clone https://gitee.com/hakeyouchongke/3-dmodel2png.git ``` ### 2. 打开项目 使用Unity Hub打开项目目录,等待Unity完成编译和依赖导入。 ### 3. 配置导出参数 在场景中找到或创建FrameSequenceExporter组件,配置以下参数: | 参数 | 说明 | 默认值 | |------|------|--------| | 输出宽度 | 图片像素宽度 | 1024 | | 输出高度 | 图片像素高度 | 1024 | | 帧率 | 动画帧率 (FPS) | 30 | | 总帧数 | 导出的总帧数 | 60 | | 图片格式 | PNG/JPG格式选择 | PNG | ### 4. 开始导出 - 点击Unity编辑器中的"Play"按钮运行场景 - 或在组件上调用`StartExport()`方法开始导出 - 导出完成后自动打开输出文件夹 ## 使用指南 ### 单个动画导出 1. 在场景中创建一个空物体,添加`FrameSequenceExporter`组件 2. 绑定目标模型和Animator组件 3. 设置要导出的动画片段名称 4. 配置输出参数 5. 点击运行并导出 ### 批量导出 1. 创建`BatchFrameExporter`组件 2. 在Inspector面板中添加多个导出任务 3. 配置每个任务的参数 4. 启用`exportOnStart`实现自动批量导出 5. 设置任务间隔时间`delayBetweenJobs` ### 2D精灵模式导出 1. 启用`eightDirectionExport`选项 2. 选择`exportAllDirections`导出全部8个方向 3. 或手动选择需要导出的方向 4. 设置俯仰角`pitchAngle`(推荐30度) 5. 批量导出后获得完整的精灵表资源 ## 动画资源说明 项目包含以下类型的动画资源: | 分类 | 描述 | |------|------| | 单手武器 | 攻击、奔跑、跳跃、格挡等基础动作 | | 弓箭 | 远程攻击动作 | | 敌人攻击 | 敌人AI攻击模式 | | 梯子 | 上下攀爬动作 | | 受击 | 受伤和击退动画 | | 对话 | NPC交互动作 | 所有动画均提供原地版(InPlace)和位移版两种版本。 ## 配置选项详解 ### 导出设置 (ExportSettings) ``` 基础参数: - outputWidth/Height : 输出图片分辨率 - frameRate : 动画采样帧率 - totalFrames : 总导出帧数 - folderName : 输出文件夹名称 渲染参数: - antiAliasing : 抗锯齿级别 (2x/4x/8x) - transparentBackground : 透明背景开关 - includeAlpha : 保留Alpha通道 - imageFormat : 图片格式 (PNG/JPG/TGA) 相机参数: - renderCamera : 渲染用相机 - targetObject : 目标模型对象 - autoAdjustCamera : 自动调整相机距离 - cameraDistance : 相机距离 ``` ### 2D导出模式 (Eight Direction Export) ``` 导出方向(罗盘方向): - Front (前) : 0° - Front-Right : 45° - Right : 90° - Back-Right : 135° - Back : 180° - Back-Left : 225° - Left : 270° - Front-Left : 315° ``` ## 项目结构 ``` Assets/ ├── Scripts/ │ ├── FrameSequenceExporter.cs # 核心导出组件 │ └── BatchFrameExporter.cs # 批量导出管理 ├── Editor/ │ ├── FrameExporterEditor.cs # 编辑器扩展 │ └── BatchFrameExporterEditor.cs # 批量导出编辑器 ├── DoubleL/ │ ├── Demo/ # 演示场景和动画 │ ├── Model/ # 3D模型资源 │ └── Animations/ # 动画片段 ├── Scenes/ │ └── SampleScene.unity # 示例场景 └── Settings/ └── URP-*.asset # URP配置 ``` ## 常见问题 **Q: 导出图片是黑的?** A: 检查相机设置,确保光照已正确配置,背景色不是纯黑。 **Q: 动画不连贯?** A: 调整帧率设置,确保与原动画帧率匹配。 **Q: 如何导出透明背景PNG?** A: 启用`transparentBackground`和`includeAlpha`选项。 **Q: 支持自定义输出路径吗?** A: 支持,修改`exportPath`参数自定义输出目录。 ## 技术支持 - **Gitee仓库**: https://gitee.com/hakeyouchongke/3-dmodel2png - **问题反馈**: 请在Gitee Issues中提交 ## 许可证 本项目基于MIT许可证开源。 ## 致谢 感谢所有为项目提供反馈和建议的用户。