SystemInfo类-Unity(转载)

来源:互联网 发布:windows多线程编程 编辑:程序博客网 时间:2024/06/06 20:10

原地址:http://www.cnblogs.com/Platform/p/5584207.html
作者:茫茫江浸月

SystemInfo类中的属性都是只读属性,存储着运行平台的一些信息,主要是显卡和设备信息,如:设备的名称、设备的类型、显卡的类型,显卡的名称、显卡供应商(制造商)、系统内存大小、显存大小、支持的渲染目标数量等等。

using UnityEngine;using System.Collections;using System.Collections.Generic;public class GameControllerScript: MonoBehaviour{    //指定输出文本框    public UnityEngine.UI.Text messageText;    //存储临时字符串    System.Text.StringBuilder info = new System.Text.StringBuilder();    void Start()    {            //将输出文本框置空        messageText.text = "";        info.AppendLine("设备与系统信息:");        //设备的模型        GetMessage("设备模型",SystemInfo.deviceModel);        //设备的名称        GetMessage("设备名称",SystemInfo.deviceName);        //设备的类型        GetMessage("设备类型(PC电脑,掌上型)",SystemInfo.deviceType.ToString());        //系统内存大小        GetMessage("系统内存大小MB",SystemInfo.systemMemorySize.ToString());        //操作系统        GetMessage("操作系统",SystemInfo.operatingSystem);        //设备的唯一标识符        GetMessage("设备唯一标识符",SystemInfo.deviceUniqueIdentifier);        //显卡设备标识ID        GetMessage("显卡ID",SystemInfo.graphicsDeviceID.ToString());        //显卡名称        GetMessage("显卡名称", SystemInfo.graphicsDeviceName);        //显卡类型        GetMessage("显卡类型",SystemInfo.graphicsDeviceType.ToString());        //显卡供应商       GetMessage("显卡供应商", SystemInfo.graphicsDeviceVendor);        //显卡供应唯一ID       GetMessage("显卡供应唯一ID", SystemInfo.graphicsDeviceVendorID.ToString());        //显卡版本号        GetMessage("显卡版本号",SystemInfo.graphicsDeviceVersion);        //显卡内存大小        GetMessage("显存大小MB",SystemInfo.graphicsMemorySize.ToString());        //显卡是否支持多线程渲染        GetMessage("显卡是否支持多线程渲染",SystemInfo.graphicsMultiThreaded.ToString());        //支持的渲染目标数量        GetMessage("支持的渲染目标数量", SystemInfo.supportedRenderTargetCount.ToString());        //输出        messageText.text = info.ToString();    }    void Update()    {        //退出        if (Input.GetKeyUp("escape"))        {            if (Input.GetKeyUp("escape"))            {                Application.Quit();            }        }    }    void GetMessage(params string[] str)    {        if(str.Length==2)        {            info.AppendLine(str[0]+":"+str[1]);        }    }  }

(1)在Unity3D编辑器中运行的结果:
这里写图片描述

(2)在Windows中的运行的结果:
这里写图片描述

(3)在Android中的运行的结果:
这里写图片描述