当前位置: 首页 > news >正文

Unity插件之天气系统UniStorm

首先呢,它是一款强大的动态昼夜天气系统,能够以较快的帧速率创建AAA级动态生成的天气、照明和天空,并且具有300多个可定制的组件,允许用户创建任何可以想象的环境。

第一步:他需要两个物体Camera摄像机、Player播放器

摄像机场景自带的也可以
Player需要创建一个空对象

第二步引用UniStorm

1、

安装后、窗口里面就能找到UniStorm选项;不同的版本创建名称不一样,我的是Create UniStorm(Desktop)桌面版等
有的是Create Weather System;无所谓啦

2、

点击生成的对象UniStorm System会看到下面配置、可以根据标签或者名称配置对应的摄像机和播放器
在这里插入图片描述

3、介绍UniStorm工具栏

3.1 Player & Camera

上面描述了

其他配置配置介绍
Use Runtime Delay使用运行时延迟:控制UniStorm是否等待初始化,直到创建并找到运行时播放器。注意:初始化后,将有一个简短的生成过程,大约需要0.2秒。
Use UniStorm Menu使用UniStorm菜单:
UniStorm Menu KeyUniStorm菜单键,启用菜单后才能打开,在播放时按下配置的按键才能打开菜单

在这里插入图片描述

类型翻译类型翻译类型翻译
Clear万里无云Mostly Clear晴时多云Mostly Cloudy大部多云
Partly Cloudy局部多云;少云Cloudy阴天的Lightning Bugs萤火虫
Blowing Pollen吹花粉Blowing Leaves吹树叶Blowing Pine Needles吹松针
Blowing Snow高吹雪,飞雪Foggy有雾的Overcast阴天的
Hail下冰雹Heavy Rain大暴雨Rain
Light Rain小雨Drizzle下毛毛雨Heavy Snow大雪
SnowLight Snow小雪Thunderstorm雷雨
Thunder Snow雷阵雨Dust Storm尘暴Fire Rain火雨
Fire Storm大火
3.2 Time Management

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

3.2.1 Time Settings
时间设置中文解释
Hour
Minute
Time Flow
Use Real-worid Time使用实时
Day Length日长度
Night Length夜长度
3.2.2 Date setting
日期设置中文解释
Month
Day
Year
3.2.3 Time of Day Sounds Settings

一天中的时间声音设置

每天声音设置中文解释每天声音设置中文解释
Play During Precipitation降水期间播放Time of Day Sounds Min触发一天中某个时间的声音所需的最短秒数
Time of Day Sounds Max触发一天中某个时间的声音所需的最长秒数Time of Day Sounds Volume声音音量
Morning Sounds早晨的声音Day Sounds白天的声音
Evening Sounds晚上的声音Night Sounds夜的声音
3.2.4 Time of Day Music Settings

一天中的时间音乐设置 和上面类似

3.3 Weather Management

天气管理允许你调整与天气有关的各种设置,比如天气类型、云雾颜色和闪电设置等等。

3.3.1 Cloud Settings

云设置

云设置中文解释云设置中文解释
Cloud Shadows云阴影Cloud Shadow Resolution云阴影分辨率
Cloud Speed云速度Cloud Turbulence云湍流
Cloud Quality云质量Cloud Render Type云渲染类型
Cloud Type云类型Cloud Dome Tris Count X云穹三角计数X
Cloud Dome Tris Count Y云穹三角计数YForce Low Clouds强制低云
Low Cloud Height低云高Cloud Color云颜色
Stormy Cloud Color风暴云颜色Cloud Light Color云灯光颜色
Stormy Cloud Light Color风暴云灯光颜色
3.3.2 Fog Settings

雾设置

雾设置中文解释雾设置中文解释
Fog Type雾类型Skybox Fog HeightSkybox雾高度
Use Radial Distance使用径向距离Use Dithering使用抖动
Fog Mode雾模式Fog Color雾颜色
Stormy Fog Color风暴雾颜色Fog Light Color雾灯颜色
Stormy Fog Light Color风暴雾灯光颜色
3.3.3 Weather Settings

天气设置

云设置中文解释云设置中文解释
Weather Generation天气生成Weather Generation Type天气生成类型
Precipiation Odds沉淀赔率
Weather Sounds Volume天气声音音量Temperature Type温度类型
Temperature Curve温度曲线Temperature Fluctuation温度波动
Starting Weather Type起始天气类型All Weather Types所有天气类型
3.3.4 Lightning Settings

闪电设置

闪电设置中文解释闪电设置中文解释
Lightning Light Color闪电灯颜色Lightning Shadow Type雷电阴影类型
Lightning Shadow Strength雷电阴影强度Lightning Shadow Resoultion雷电阴影解析
Min Lightning Seconds最小闪电秒数Max Lightning Seconds最大闪电秒数
Min Lightning Intensity最小雷电强度Max Lightning Intensity最大雷电强度

Lightning Bolts & Strikes
避雷针和撞针

避雷针和撞针设置中文解释避雷针和撞针设置中文解释
Lightning Bolt Color闪电颜色Generation Distance生成距离
Detection Distance检测距离Lightning Strike Layers雷击层
Lightning Fire Tags闪电火灾标签Ground Strike Odds地面打击几率
Lightning Strike Effect雷击效果Lightning Strike Fire雷击火灾

Lightning Flash Patterns 闪电闪光模式
Thunder Sounds 雷声

3.4 Celestial Settings

天体设置

3.4.1 Sun Settings

太阳设置

太阳设置中文解释太阳设置中文解释
Sun Object Color太阳对象颜色Sun Shadow Type太阳阴影类型
Sun Shadow Strength太阳阴影强度Sun Shadow Resoultion太阳阴影解析
Sun Shafts Effect太阳轴效应里面的配置下面单独说
Sun Color太阳颜色Stormy Sun Color暴风雨般的太阳颜色
Use Celestial Light Update使用天光更新Sun Tilt Angle太阳倾斜角度
Sun Revolution太阳革命Sun Intensity Curve太阳强度曲线
Sun Attenuation Curve太阳衰减曲线Sun Size Curve太阳大小曲线

Sun Shafts Effect 太阳轴效应

太阳轴设置中文解释太阳轴设置中文解释
Sun Shafts Intensity太阳轴强度Sun Shafts Color太阳轴颜色
Sun Shafts Blur Size太阳轴模糊大小Sun Shafts Blur lterations太阳轴模糊过滤
3.4.2 Moon Settings

月设置

月设置中文解释月设置中文解释
Moon Shadow Type月影类型Moon Shadow Strength月影强度
Moon Shadow Resoultion月影解析Moon Shafts Effect球轴效应
Moonlight Color月光颜色Moonlight Attenuation Color月光衰减颜色
Moon Tilt Angle月亮倾斜角度Moon intensity Curve月球强度曲线
Moon Size Curve月亮大小曲线
Moon Phase Texture月相纹理Light Intensity灯光强度

Current Moon Phase 当前月相
Moon Phase Color 当前月相颜色
Moon Phase Brightness 当前月相亮度

3.4.3 Atmosphere Settings

大气设置

大气设置中文解释大气设置中文解释
Hemisphere半球Ambient Intensity环境强度
Environment Reflections环境反射Atmosphere Thickness大气厚度
Ambient Sky Color环境天空颜色Stormy Ambient Sky Color风暴环境天空颜色
Ambient Equator Color环境赤道颜色Stormy Ambient Equator Color风暴环境赤道
Ambient Ground Color环境地面颜色Stormy Ambient Ground Color暴风雨环境地面颜色
Sky Color天空颜色Sky Tint Color天空色调
Sky Tint Color天空色调Constellation Type星座类型
Starlight Color星光颜色Star Speed星星速度

3.5 Settings

设置
Platform Controller:平台控制器
Platform Type:平台类型
Profile Management:配置文件管理
UniStorm Profile:UniStorm配置文件
Import Profile:导入资料
Export Profile:导出配置文件

4、脚本开发懒得写了直接看吧

4.1 如果您想包含 UniStorm 命名空间

using UniStorm;

4.2 接口

天气
通过过渡改变天气
无论条件如何,都可以通过天气类型参数的转换速度来更改 UniStorm 的天气。

UniStorm.UniStormManager.Instance.ChangeWeatherWithTransition(UniStorm.WeatherType weatherType);

立即改变天气
无论条件如何,立即将 UniStorm 的天气更改为天气类型参数。

UniStorm.UniStormManager.Instance.ChangeWeatherInstantly(WeatherType weatherType);

随机天气
无论条件如何,从 UniStorm 的所有天气类型列表中生成随机天气类型

UniStorm.UniStormManager.Instance.RandomWeather();

当前天气类型
获取当前天气类型的名称

string CurrentWeatherTypeName = UniStorm.UniStormSystem.Instance.CurrentWeatherType.WeatherTypeName;

获取天气预报名称
获取预报天气类型的名称

string WeatherForecastName = UniStorm.UniStormManager.Instance.GetWeatherForecastName();

获取天气预报时间
获取预报天气发生变化的时间

int WeatherForecastHour = UniStorm.UniStormManager.Instance.GetWeatherForecastHour();

更改天气效果状态
根据 ActiveState 布尔值禁用或启用所有 UniStorm 粒子效果,但不影响其发射量。

UniStorm.UniStormManager.Instance.ChangeWeatherEffectsState(bool ActiveState);

更改天气声音状态
根据 ActiveState 布尔值禁用或启用所有 UniStorm 天气声音,但不影响其当前音量。

UniStorm.UniStormManager.Instance.ChangeWeatherSoundsState(bool ActiveState);

温度
获取当前 UniStorm 温度

int CurrentTemperature = UniStorm.UniStormSystem.Instance.Temperature;

时间
分钟
获取当前 UniStorm 分钟

int CurrentMinute = UniStorm.UniStormSystem.Instance.Minute;

小时
获取当前的 UniStorm 时间

int CurrentHour = UniStorm.UniStormSystem.Instance.Hour;

日期
设置 UniStorm 的日期

UniStorm.UniStormManager.Instance.SetDate(int Year, int Month, int Day);

时间
设置 UniStorm 的时间

UniStorm.UniStormManager.Instance.SetTime (int Hour, int Minute);

当前时间状态
获取当前时间状态

UniStorm.UniStormSystem.CurrentTimeOfDayEnum CurrentTimeOfDayState = UniStorm.UniStormSystem.Instance.CurrentTimeOfDay;

设置日长
设置 UniStorm 一天的长度(以分钟为单位)

UniStorm.UniStormManager.Instance.SetDayLength(int MinuteLength);

设置夜间长度
设置 UniStorm 夜晚的长度(以分钟为单位)

UniStorm.UniStormManager.Instance.SetNightLength(int MinuteLength);

当前星期几
获取当前 UniStorm 一周中的某一天,例如星期一、星期二、星期三等。

System.DayOfWeek CurrentDayOfWeek =  UniStorm.UniStormManager.Instance.GetDate().DayOfWeek;

当前日期
获取当前 UniStorm 日期

System.Date CurrentDate =  UniStorm.UniStormManager.Instance.GetDate().Date;

大小
设置音乐音量
使用 0(完全静音)到 1(全音量)之间的值设置 UniStorm 的音乐音量。

UniStorm.UniStormManager.Instance.SetMusicVolume(float Volume);

设置环境音量
使用 0(完全静音)到 1(全音量)之间的值设置 UniStorm 的环境音量。

UniStorm.UniStormManager.Instance.SetAmbienceVolume(float Volume);

设置天气音量
使用 0(完全静音)到 1(全音量)之间的值设置 UniStorm 的天气音量。

UniStorm.UniStormManager.Instance.SetWeatherVolume(float Volume);

季节
当前季节
获取当前季节

UniStorm.UniStormSystem.CurrentSeasonEnum currentSeason = UniStorm.UniStormSystem.Instance.CurrentSeason;

系统
更改相机源
更改 UniStorm 使用的玩家相机和玩家变换。如果您需要更改或更新播放器的相机,这非常有用。

UniStorm.UniStormManager.Instance.ChangeCameraSource(Transform PlayerTransform, Camera CameraSource);

活动
建议在启动时分配事件,而不是在更新函数中使用事件。

时间更改事件
为 OnHourChangeEvent 设置一个事件,该事件可以每小时调用函数。

UniStorm.UniStormSystem.Instance.OnHourChangeEvent.AddListener(() => YourFunctionEvent());

OnDayChange事件
为 OnDayChangeEvent 设置一个可以每天调用函数的事件。

UniStorm.UniStormSystem.Instance.OnDayChangeEvent.AddListener(() => YourFunctionEvent());

当月变化事件
为 OnMonthChangeEvent 设置一个可以每月调用函数的事件

UniStorm.UniStormSystem.Instance.OnMonthChangeEvent.AddListener(() => YourFunctionEvent());

OnYearChange事件
为 OnYearChangeEvent 设置一个事件,可以每年调用函数

UniStorm.UniStormSystem.Instance.OnYearChangeEvent.AddListener(() => YourFunctionEvent());

天气变化事件
为OnWeatherChangeEvent设置一个事件,可以在每次天气变化时调用函数

UniStorm.UniStormSystem.Instance.OnWeatherChangeEvent.AddListener(() => YourFunctionEvent());

其他
改变月相颜色
更改 UniStorm 的月相颜色。更新后的颜色将在中午 UniStorm 的月亮更新时应用。

UniStorm.UniStormManager.Instance.ChangeMoonPhaseColor(Color MoonPhaseColor)

相关文章:

Unity插件之天气系统UniStorm

首先呢,它是一款强大的动态昼夜天气系统,能够以较快的帧速率创建AAA级动态生成的天气、照明和天空,并且具有300多个可定制的组件,允许用户创建任何可以想象的环境。 第一步:他需要两个物体Camera摄像机、Player播放器…...

Java使用xlsx-streamer和EasyExcel解决读取超大excel文件数据处理方法

前言 最近有个项目在生产环境做数据导入时,发现开始执行导入任务会出现cpu狂飙的情况。几番定位查找发现是在读取excel的时候导致此问题的发生,因此在通常使用的为POI的普通读取,在遇到大数据量excel,50MB大小或数五十万行的级别的…...

智能驾驶规划控制理论学习04-基于车辆运动学的规划方法

目录 一、线性二自由度汽车模型(自行车模型) 1、二自由度模型概述 2、不同参考点下的状态空间方程 3、前向仿真 二、运动基元生成方法 1、杜宾斯曲线(Dubins Curve) 2、Reeds Shepp Curve 三、多项式曲线(Poly…...

一键查看:大厂网站都用了啥技术栈,有图有真相。

本次我们采用Wappalyzer插件来看下国内大厂的网站都采用了什么技术架构,文章最后由Wappalyzer的安装方法。 今日头条网站 淘宝网站 哔哩哔哩 京东商城 花瓣网 CSDN 国务院 网易 58同城 腾讯网 如何安装Wappalyzer 用Edge浏览器即可...

C语言-指针(下)

文章目录 前言    文章目录 前言 一、指针运算 1.指针-整数 2.指针-指针 3.指针关系运算 二、野指针 1.概念 2.野指针的成因 1.未初始化 2.指针越界访问 3.指针指向的空间释放 3.避免野指针 1.指针初始化 2.小心指针越界 3. 指针变量不再使用时,及时置NULL 总结 …...

尚硅谷JavaScript高级学习笔记

01 准备 JavaScript中函数是对象。我们后续描述构造函数的内存模型时,会将构造函数称为构造函数对象。 02 数据类型 typeof 运算符来查看值的类型,它返回的是类型的字符串值 会做数据转换 03 相关问题 04数据_变量_内存 05相关问题1 06相关问题2 …...

六、长短时记忆网络语言模型(LSTM)

为了解决深度神经网络中的梯度消失问题,提出了一种特殊的RNN模型——长短期记忆网络(Long Short-Term Memory networks, LSTM),能够有效的传递和表达长时间序列中的信息并且不会导致长时间前的有用信息被忽略。 长短时记忆网络原理…...

Filter过滤器+JWT令牌实现登陆验证

一、背景 我们需要在客户端访问服务器的时候给定用户一定的操作权限,比如没有登陆时就不能进行其他操作。如果他需要进行其他操作,而在这之前他没有登陆过,服务端则需要将该请求拦截下来,这就需要用到过滤器,过滤器可以…...

SQL学习十八~十九

...

2024 AI 辅助研发的新纪年

随着人工智能技术的持续发展与突破,2024年AI辅助研发正成为科技界和工业界瞩目的焦点。从医药研发到汽车设计,从软件开发到材料科学,AI正逐渐渗透到研发的各个环节,变革着传统的研发模式。在这一背景下,AI辅助研发不仅…...

【牛客】HJ87 密码强度等级 CM62 井字棋

题目一:密码强度等级 题目链接:密码强度等级_牛客题霸_牛客网 (nowcoder.com) 本题主要考察C语言中逻辑分支语句,基本语句以及对各种特殊字符 ,ASCII值以及条件表达中的逻辑运算符关系运算符各自功能的理解,以及基本使用&#x…...

【论文速读】 | DeGPT:通过大语言模型优化反编译器输出

本次分享论文为:DeGPT: Optimizing Decompiler Output with LLM 基本信息 原文作者:Peiwei Hu, Ruigang Liang, Kai Chen 作者单位:中国科学院信息工程研究所;中国科学院大学网络空间安全学院 关键词:反向工程&…...

【DP】蓝桥杯第十三届-费用报销

#include<iostream> #include<algorithm> #include<cstring> #include<set> #include<queue> using namespace std; const int N1010; int dp[N][5010];//dp[i][j]:选到第i个物品是否能取到价值j&#xff1b; int month[13]{0,31,28,31,30,31,30…...

15. C++泛型与符号重载

【泛型编程】 若多组类型不同的数据需要使用相同的代码处理&#xff0c;在C语言中需要编写多组代码分别处理&#xff0c;这样做显然太过繁琐&#xff0c;C增加了虚拟类型&#xff0c;使用虚拟类型可以实现一组代码处理多种类型的数据。 虚拟类型是暂时不确定的数据类型&#…...

老司机都懂的!【打赏】完美运营的最新视频打赏系统

完美运营的最新视频打赏系统优于市面上95%的打赏系统&#xff0c;与其他打赏系统相比&#xff0c;功能更加强大&#xff0c;完美运营且无bug。支付会调、短链接生成、代理后台、价格设置和试看功能等均没有问题。 以上为原简介&#xff0c;经测试验证。成功搭建并可以正常进入…...

JavaWeb笔记 --- 二、Maven

二、Maven Maven概述 所有的IDE创建的Maven项目都可以使用 Maven简介 Maven模型 Maven常用命令 Maven生命周期 Maven坐标 依赖管理 dpendencies&#xff1a;依赖 依赖范围...

【C++】C++11---右值引用和移动语义

目录 1、什么是左值引用和右值引用2、左值引用与右值引用比较3、右值引用使用场景和意义4、右值引用引用左值的分析5、完美转发 1、什么是左值引用和右值引用 传统的C语法中就有引用的语法&#xff0c;而C11中新增了的右值引用语法特性&#xff0c;所以从现在开始我们之前学习…...

消息队列-kafka-消息发送流程(源码跟踪) 与消息可靠性

官方网址 源码&#xff1a;https://kafka.apache.org/downloads 快速开始&#xff1a;https://kafka.apache.org/documentation/#gettingStarted springcloud整合 发送消息流程 主线程&#xff1a;主线程只负责组织消息&#xff0c;如果是同步发送会阻塞&#xff0c;如果是异…...

机器学习笔记 计算机视觉中的测距任务常见技术路线

一、计算机视觉中的测距任务 测距是计算机视觉中的一项关键任务,涉及测量物体和相机之间的距离。这些信息可用于多种应用,包括机器人、自动驾驶汽车和增强现实。测距技术有很多种,包括主动式和被动式,每种技术都有自己的优点和局限性。主动测距技术,例如飞行时间、结构光和…...

云计算 3月8号 (wordpress的搭建)

项目wordpress 实验目的&#xff1a; 熟悉yum和编译安装操作 锻炼关联性思维&#xff0c;便于以后做项目 nginx 编译安装 1、安装源码包 [rootlinux-server ~]# yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel [rootlinux-server ~]# wget http://nginx.…...

【CSS】(浮动定位)易忘知识点汇总

浮动特性 加了浮动之后的元素,会具有很多特性,需要我们掌握的. 1、浮动元素会脱离标准流(脱标&#xff1a;浮动的盒子不再保留原先的位置) 2、浮动的元素会一行内显示并且元素顶部对齐 注意&#xff1a; 浮动的元素是互相贴靠在一起的&#xff08;不会有缝隙&#xff09;&…...

Vitual Box虚拟机打开后,键盘鼠标失效

Vitual Box虚拟机打开后&#xff0c;键盘鼠标失效 作者在使用Vitual Box虚拟机软件时&#xff0c;偶然发现打开VitualBox后&#xff0c;鼠标和键盘均无法使用。 你以为是“主机热键”引起的&#xff1f;NO&#xff01; 废话少说 直接上干货&#xff1a; 在VitualBox设置下有…...

宠物空气净化器值得入手吗?选购宠物空气净化器关注哪些方面?

一开始养猫时&#xff0c;每天看着可爱的猫咪在家里快乐奔跑&#xff0c;让人心情愉悦。然而&#xff0c;作为铲屎官都知道&#xff0c;猫咪会掉毛&#xff0c;特别是在换毛期间&#xff0c;地板、沙发上都会有一大堆猫毛&#xff0c;甚至衣服也可能沾满猫毛。养猫家庭中&#…...

前端发起请求,后端模型需处理很久,怎样设置前端直接完成请求响应,后端计算完在返回结果给前端?

在这种情况下&#xff0c;可以采用异步处理的方式来解决。具体步骤如下&#xff1a; 前端发起请求&#xff1a;前端向后端发送请求&#xff0c;但是不等待后端处理完成而是立即得到响应。 后端异步处理&#xff1a;后端接收到请求后&#xff0c;不立即进行处理&#xff0c;而是…...

DDD领域驱动设计

一、什么是领域驱动设计DDD 领域驱动设计&#xff08;Domain-Driven Design&#xff0c;DDD&#xff09;是一种软件开发方法论&#xff0c;它提出了一组关于如何设计和构建软件系统的原则和方法。 二、DDD的诞生是为了解决哪些问题 对复杂业务领域的理解不足&#xff1a;传统…...

网络编程第1天

OSI的七层网络模型有哪些&#xff0c;每一层有什么作用&#xff1f; &#xff08;1&#xff09;应用层 负责处理不同应用程序之间的通信&#xff0c;需要满足提供的协议&#xff0c;确保数据发送方和接收方的正确 应用层提供的协议&#xff1a; HTTP&#xff1a;超文本传输…...

Springboot--整合Logback 日志框架(Maven)

文章目录 前言一、Logback 日志框架介绍&#xff1a;二、整合&#xff1a;2.1 引入jar2.2 logback.xml 文件配置&#xff1a;2.3 日志输出&#xff1a;2.3.1 方式一&#xff1a;2.3.2 方式二&#xff1a; 2.3 日志输出结果展示&#xff1a; 三、扩展&#xff1a;3.1 日志输出格…...

【考研数学】李林《880》vs 李永乐《660》完美使用搭配

没有说谁一定好&#xff0c;只有适不适合自身情况&#xff0c;针对自身弱点选择性价比才最高。 两者侧重点不同&#xff0c;660适合强化前期&#xff0c;弥补基础的不足&#xff0c;880适合强化后期&#xff0c;题型全面&#xff0c;提高我们对综合运用知识的能力。 选择习题…...

Java面试之消息中间件

消息队列 优缺点 特点 解耦异步削峰缺点 系统可用性降低 兜底:代码中try、catch 异常捕捉后直接进行数据库操作,或者 搭建高可用集群,Kafka集群、RocketMQ集群提高复杂度 消息重复(消费端的幂等性设计)、消息丢失(主要集中RabbitMQ)、消息的顺序(业务:1,下单 2,支付 3,发…...

网工学习 DHCP配置-接口模式

网工学习 DHCP配置-接口模式 学习DHCP总是看到&#xff0c;接口模式、全局模式、中继模式。理解起来也不困难&#xff0c;但是自己动手操作起来全是问号。跟着老师视频配置啥问题没有&#xff0c;自己组建网络环境配置就是不通&#xff0c;悲催。今天总结一下我学习接口模式的…...