Unity3D天气系统插件UniStorm插件使用说明

一、开始使用

  下载并导入UniStorm插件就可以进行使用了,该资源可以在Assets Store中搜索并下载,也可以评论我会发给你,该插件功能十分强大,内置25种天气类型,并包含音效,完全可以满足我们模拟天气的需求

下载完成并导入后,我们需要在场景中创建一个UniStorm System,具体步骤为在工具栏中点击 Window -> UniStorm -> Create Weather System,创建完成后场景中将出现一个UniStrom System 的预制体,通过该预制体,我们可以对需要的天气进行控制,也能模拟日夜变化

点击预制体,可以看到脚本中有五个栏目,如下图所示

 

 

 下面具体介绍每个工具栏

 

二、Player & Camera

  该设置允许你选择Unistorm的玩家和播放器对象,并且选项会根据你的选择有所调整,该天气系统必须选择Player和Camera对象,它将根据Player和Camera对象的位置确定生成天气的范围

  Player和Camera为必要物体,如果该插件无法找到它们,将会在运行的时候报错,也无法看到天气效果

 

 

 Get Player at Runtime : 是否可以在运行期间获得你的Player,可以通过名字或则标签

Use Runtime Delay:  是否会一直等待进行初始化,直到Player被创建并找到

Use UniStorm Menu: 是否使用UniStorm菜单,该菜单可在运行中通过ESC键触发,功能是选择不同的天气类型

 

三、Time Management

  时间管理允许你控制各种与时间有关的设置,如开始时间,时间流等等

 

 

 Hour、Minute : UniStorm开始的时间,分别控制小时、分钟,该时间会在运行中一直被更新(插件用以模拟日夜更替)

Time Flow: 控制该插件的时间流动(Enable的话分钟和小时数会一直增加)、

Day Length: 白天的长度,设置为4表示该插件模拟一天的时长为4分钟

 Night Length: 夜晚的长度,同上

 

四、Weather Management

  天气管理允许你调整与天气有关的各种设置,比如天气类型、云雾颜色和闪电设置等等,如下图(由于设置太多,截图并不完整)

 

 

Weather Generation: 是否产生天气,如果Disable的话,UniStorm将一直保持一种天气类型,除非使用代码控制其改变

Weather Generation Type: 每小时产生一种天气类型还是每天产生一种

Precipiation Odds:降雨量,X代表月份,Y代表概率

Starting Weather Type:开始的天气类型

Geneartion Distance:控制闪电可以在玩家周围产生的最大距离

 

五、Celestial Setting

  该设置用于控制太阳、月亮、星星和大气的颜色

 

 

全是字面意思,基本上都能看懂,就不解释了 

 

 

六、通过脚本控制UniStorm

  下面是一些常用的脚本,UniStormManager.Instance不能在Start和Awake中调用,不然会提示Null错误

 

  6.1 天气 

  UniStormManager.Instance.ChangeWeatherWithTransition(WeatherType  weatherType);    转换为参数中传入的天气类型
 
  UniStormManager.Instance.ChangeWeatherInstantly(WeatherType weatherType);        立即转换为给定的天气类型(与上面的区别是上面的转换有个过程)
 
  UniStormManager.Instance.RandomWeather();    从天气列表中随机产生一种天气
 
  string CurrentWeatherTypeName = UniStormSystem.Instance.CurrentWeatherType.WeatherTypeName;   获取当前天气类型
 
  
  6.2 时间
  

  UniStormManager.Instance.SetTime (int Hour, int Minute);    设置当时的时间
 
  UniStormSystem.CurrentTimeOfDayEnum CurrentTimeOfDayState = UniStormSystem.Instance.CurrentTimeOfDay      获取当时的时间状态
 
  UniStormManager.Instance.SetDayLength(int MinuteLength);       设置白天的长度
 
  
  6.3 声音
  

  UniStormManager.Instance.SetMusicVolume(float Volume);        设置音乐音量大小,0表示静音, 1 为最大音量
 
  UniStormManager.Instance.SetAmbienceVolume(float Volume);  设置环境音量
 
  UniStormManager.Instance.SetWeatherVolume(float Volume);    设置天气音量
 
 
以上为UniStorm的基本使用方法,更多操作可以查阅官方文档