美文网首页Unity编辑器开发分享
[转]脚本获取资源内存和硬盘大小

[转]脚本获取资源内存和硬盘大小

作者: 小小小小小丶敏 | 来源:发表于2017-11-09 17:12 被阅读18次

内存

使用Profiler可以查看某个资源的内存占用情况,但是必须启动游戏,并且待查看的资源已经载入游戏中。我希望的是不启动游戏,也能看到它的内存好做统计。

硬盘

由于unity中的资源压缩格式记录在meta中所以,在文件夹中看到的资源大小是不正确的。打开unity需要选择一个资源,比如Texture、然后在右侧Inspector面板最下面可以看见它真实的硬盘占用。这个数据我也希望那个可以脚本取到,这样我好做统计工具。

在Project视图中先选择一个Texture 然后点击menuitem (“1/1”)即可

    [MenuItem("1/1")]
    public static void menu()
    {
        Texture target = Selection.activeObject as Texture;
        var type = Types.GetType ("UnityEditor.TextureUtil", "UnityEditor.dll");
        MethodInfo methodInfo = type.GetMethod ("GetStorageMemorySize", BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public);
 
        Debug.Log("内存占用:"+EditorUtility.FormatBytes(Profiler.GetRuntimeMemorySize(Selection.activeObject)));
        Debug.Log("硬盘占用:"+EditorUtility.FormatBytes((int)methodInfo.Invoke(null,new object[]{target})));
    }

内存的话unity提供了API Profiler.GetRuntimMemorySize。

硬盘的话unity没有提供,我查看了它的源码需要通过反射可以获取到。如果你还想查看别的资源的硬盘占用,自行查看一下他editor下的代码,用上面这样的代码反射获取出来即可。

Unity3D研究院编辑器之脚本获取资源内存和硬盘大小(二十五) - 雨松MOMO程序研究院 - 1

相关文章

  • [转]脚本获取资源内存和硬盘大小

    内存 使用Profiler可以查看某个资源的内存占用情况,但是必须启动游戏,并且待查看的资源已经载入游戏中。我希望...

  • iOS 获取设备信息

    获取iOS设备信息 获取 当前设备 可用内存 及当前 应用 所占内存 获取物理内存 获取硬盘内存 获取本地 获取网...

  • LruCache源码解析

    在做缓存时,我们首先会做添加和获取缓存功能,而不管是内存缓存还是硬盘缓存,它们的缓存大小都是有限的。当缓存满了之后...

  • 跟踪可用和已用的内存

    #import 1、获取已用内存大小 2、获取可用内存的大小

  • OC中的获取内存大小方式及比较

    获取内存大小 通常获取内存大小有3种方式: sizeof class_getInstanceSize malloc...

  • OC底层原理 04:内存对齐原理

    在探讨内存对齐原理之前,首先介绍下iOS中获取内存大小的三种方式 获取内存大小的三种方式 获取内存大小的三种方式分...

  • iOS底层原理04:内存对齐原理

    在探讨内存对齐原理之前,首先介绍下iOS中获取内存大小的三种方式 获取内存大小的三种方式 获取内存大小的三种方式分...

  • OC底层原理-内存对齐

    在探讨内存对齐原理之前,首先介绍下iOS中获取内存大小的三种方式 获取内存大小的三种方式 获取内存大小的三种方式分...

  • Linux工具 1、gotop 一个TUI图形活动监视器

    1、功能 查看每个CPU的使用率查看硬盘使用的空间大小查看内存使用大小查看虚拟内存使用大小查看CPU温度查看网络带...

  • Objective-C/iOS 获取内存使用

    获取内存总大小: 需要引入头文件: 获取可用内存: 需要引入头文件: 获取当前App使用内存: 同样需要引入头文件...

网友评论

    本文标题:[转]脚本获取资源内存和硬盘大小

    本文链接:https://www.haomeiwen.com/subject/kqrmmxtx.html