当前位置: 首页 > 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.…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

关于uniapp展示PDF的解决方案

在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项&#xff1a; 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库&#xff1a; npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

论文阅读:Matting by Generation

今天介绍一篇关于 matting 抠图的文章&#xff0c;抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法&#xff0c;已经有很多的工作和这个任务相关。这两年 diffusion 模型很火&#xff0c;大家又开始用 diffusion 模型做各种 CV 任务了&am…...