找回密码
 立即注册
查看: 2746|回复: 53

[实例] Unity截图并保存任意目录

  [复制链接]
发表于 2013-2-26 16:38 | 显示全部楼层 |阅读模式
资源信息 Tutorial Information
教程名称: Unity3D截图并保存任意目录(发帖教程)
适用引擎:   (适用引擎,为空默认为Unity)
教程语种: 中文
教程等级: 1
教程格式: 图文(请用IE9以上浏览器访问本版块)
教程作者: 转载自互联网 (如有问题请短消息联系作者或发表回复)
下载地址: (兑换积分)
点击查看原图
美丽分割线
本帖最后由 杨建辉 于 2013-2-26 16:40 编辑

截图并保存至任意目录在游戏或者软件需求中经常会用到,现在就来分享下具体实现:

1.前提条件:仅限于--Pc and Mac Standalone

2.准备工作: ①找到System.Windows.Forms.dll:在unity的安装目录中找到它,如E:\Program Files (x86)\Unity\Editor\Data\Mono\lib\mono\2.0
                    ②设置.NET 2.0集:Untiy默认是.NET 2.0 Subset。在Edit->Project Settings->Player->OtherSettings中修改。

3.具体实现:①任意打开一项目,新建Plugins文件夹,将找到的System.Windows.Forms.dll复制进去
                   ②新建一脚本Screenshot.cs并拽至任一物体上。
                   ③运行后,按Z键进行截图并保存。

4.Screenshot.cs:

using UnityEngine;
using System.Windows.Forms;

public class Screenshot : MonoBehaviour {
    void Update() {
        if (Input.GetKeyDown(KeyCode.Z)) {
            SaveFileDialog saveLog = new SaveFileDialog();
            saveLog.InitialDirectory = "c:\\";
            saveLog.Filter = "Image Files(*.JPG;*.BMP;*.PNG)|*.JPG;*.BMP;*.PNG|All files (*.*)|*.*";

            DialogResult result = saveLog.ShowDialog();
            if (result == DialogResult.OK) {
                string path = saveLog.FileName;
                UnityEngine.Application.CaptureScreenshot(path);

            }
        }
    }
}
5.注意事项:①代码中所有的API均可在Msdn上查阅
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.savefiledialog.aspx
                    ② EditorUtility.SaveFilePanel也可以实现相同功能,只不过必须在编辑器下才可以。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| 发表于 2013-2-26 16:39 | 显示全部楼层
楼主很专业,写得很好!
发表于 2013-4-6 22:17 | 显示全部楼层
犀利啊,楼主,赞一个{:5_412:}
发表于 2014-10-25 20:46 | 显示全部楼层
牛B的一塌糊涂!
发表于 2017-2-10 07:01 | 显示全部楼层
很不错
发表于 2017-2-10 07:13 | 显示全部楼层
楼主是超人
发表于 2017-2-10 07:19 | 显示全部楼层
难得一见的好帖
发表于 2017-2-10 07:41 | 显示全部楼层
不错不错
发表于 2017-2-10 07:07 | 显示全部楼层
LZ真是人才
发表于 2017-2-24 09:43 | 显示全部楼层
楼主是超人
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-4-28 06:03 , Processed in 0.384801 second(s), 31 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表