版权声明:本文为博主原创文章,未经博主允许不得转载。
转载请注明出处!
近期才发现Unity3D还有一个访问硬件设备信息的类SystemInfo。
概述:
UnityEngine.SystemInfo类中的属性都是只读属性,存储着运行平台的一些硬件信息,找出底层平台和硬件的功能,如:设备的名称、设备的类型、显卡的类型,显卡的名称、显卡供应商(制造商)、系统内存大小、显存大小、支持的渲染目标数量等等。我们也可以检查支持哪些RenderTexture(渲染纹理)格式(SupportsRenderTextureFormat),CPU有多少可用的线程的(processorCount)等等。
SystemInfo类中的静态变量:
中文显示:
Rendering.CopyTextureSupport copyTextureSupport:(只读)支持多种复制纹理功能的情况。
string deviceModel:(只读)设备的模型或模式。
string deviceName:(只读)用户定义的设备名称。
DeviceType deviceType:(只读)返回程序运行所在的设备类型(PC电脑、掌上型等)。
string deviceUniqueIdentifier:(只读)设备的唯一标识符。每一台设备都有唯一的标识符。
int graphicsDeviceID:(只读)显卡的唯一标识符ID。
string graphicsDeviceName:(只读)显卡的名称。
Rending.GraphicsDeviceType graphicsDeviceType:(只读)显卡的类型。
string graphicsDeviceVendor:(只读)显卡的供应商。
int graphicsDeviceVendorID:(只读)显卡供应商的唯一识别码ID。
string graphicsDeviceVersion:(只读)显卡的类型和版本。
int graphicsMemorySize:(只读)显存大小。
bool graphicsMultiThreaded:(只读)是否支持多线程渲染?
int graphicsShaderLevel:(只读)显卡着色器的级别。
int maxTextureSize:(只读)支持的最大纹理大小。
NPOTSupport npotSupport:(只读)GPU支持的NPOT纹理。
string operatingSystem:(只读)操作系统的版本名称。
int processorCount:(只读)当前处理器的数量。
int processorFrequency:(只读)处理器的频率。
string processorType:(只读)处理器的名称。
int supportedRenderTargetCount:(只读)支持渲染多少目标纹理。
bool supports2DArrayTextures:(只读)是否支持2D数组纹理。
bool supports3DTextures:(只读)是否支持3D(体积)纹理。
bool supportsAccelerometer:(只读)是否支持获取加速度计。
bool supportsAudio:(只读)是否支持获取用于回放的音频设备。
bool supportsComputeShaders:(只读)是否支持计算着色器。
bool supportsGyroscope:是否支持获取陀螺仪。
bool supportsImageEffects:(只读)是否支持图形特效。
bool supportsInstancing:(只读)是否支持实例化GPU的Draw Call。
bool supportsLocationService:是否支持定位功能。
bool supportsMotionVectors:是否支持运动向量。
bool supportsRawShadowDepthSampling:(只读)是否支持阴影深度。
bool supportsRenderTextures:(只读)是否支持渲染纹理。
bool supportsRenderToCubemap:(只读)是否支持立方体纹理。
bool supportsShadows:(只读)是否支持内置阴影。
bool supportsSparseTextures:(只读)是否支持稀疏纹理。
bool supportsStencil:(只读)是否支持模版缓存。
bool supportsVibration:是否支持用户触摸震动反馈。
int systemMemorySize:(只读)系统内存大小。
string unsupportedIdentifier:不支持运行在当前设备的SystemInfo属性值。
官方文档英文显示:
Support for various Graphics.CopyTexture cases (Read Only). | |
The model of the device (Read Only). | |
The user defined name of the device (Read Only). | |
Returns the kind of device the application is running on (Read Only). | |
A unique device identifier. It is guaranteed to be unique for every device (Read Only). | |
The identifier code of the graphics device (Read Only). | |
The name of the graphics device (Read Only). | |
The graphics API type used by the graphics device (Read Only). | |
The vendor of the graphics device (Read Only). | |
The identifier code of the graphics device vendor (Read Only). | |
The graphics API type and driver version used by the graphics device (Read Only). | |
Amount of video memory present (Read Only). | |
Is graphics device using multi-threaded rendering (Read Only)? | |
Graphics device shader capability level (Read Only). | |
Maximum texture size (Read Only). | |
What NPOT (non-power of two size) texture support does the GPU provide? (Read Only) | |
Operating system name with version (Read Only). | |
Number of processors present (Read Only). | |
Processor frequency in MHz (Read Only). | |
Processor name (Read Only). | |
How many simultaneous render targets (MRTs) are supported? (Read Only) | |
Are 2D Array textures supported? (Read Only) | |
Are 3D (volume) textures supported? (Read Only) | |
Is an accelerometer available on the device? | |
Is there an Audio device available for playback? | |
Are compute shaders supported? (Read Only) | |
Is a gyroscope available on the device? | |
Are image effects supported? (Read Only) | |
Is GPU draw call instancing supported? (Read Only) | |
Is the device capable of reporting its location? | |
Are motion vectors supported. | |
Is sampling raw depth from shadowmaps supported? (Read Only) | |
Are render textures supported? (Read Only) | |
Are cubemap render textures supported? (Read Only) | |
Are built-in shadows supported? (Read Only) | |
Are sparse textures supported? (Read Only) | |
Is the stencil buffer supported? (Read Only) | |
Is the device capable of providing the user haptic feedback by vibration? | |
Amount of system memory present (Read Only). | |
Value returned by SystemInfo string properties which are not supported on the current platform. |
SystemInfo类中的函数:
bool SupportsRenderTextureFormat( format);
输入一个渲染纹理的格式,判断设备是否支持这种格式
bool SupportsTextureFormat( format);
输入一个纹理的格式,判断设备是否支持这种格式。