基于三维引擎实时模拟太阳角度变化的方法、系统及设备技术方案

技术编号:38850860 阅读:12 留言:0更新日期:2023-09-17 09:59
本发明专利技术公开了一种基于三维引擎实时模拟太阳角度变化的方法、系统及设备,属于三维可视化技术领域。所述方法包括:将孪生模型导入到三维引擎中,设置用以模拟太阳光的平行光;根据当前日期时间求出太阳直射点纬度;基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间;计算太阳倾斜角和太阳高度角;将求出的太阳倾斜角和太阳高度角在三维引擎中分别设置为平行光的x轴旋转值和平行光的y轴旋转值;对场景进行渲染,系统将基于当前日期时间在场景中模拟出实时的阳光效果。本发明专利技术能够实现三维场景与现实场景的光照情况相吻合,实时模拟出真实的太阳光效果,增强了整个场景的实时性与沉浸感。增强了整个场景的实时性与沉浸感。增强了整个场景的实时性与沉浸感。

【技术实现步骤摘要】
基于三维引擎实时模拟太阳角度变化的方法、系统及设备


[0001]本专利技术涉及一种基于三维引擎实时模拟太阳角度变化的方法、系统及设备,属于三维可视化


技术介绍

[0002]目前,数字孪生技术的使用范围越来越广泛,在孪生场景展示中,几乎都会用到阳光元素来照亮整个场景。对于场景中的阳光元素,现有的制作方案是在三维引擎中采用固定的平行光来模拟阳光,然后在三维场景中进行渲染模拟。采用这种模拟方式渲染出来的阳光效果因没有对接到实时数据,导致场景画面中阳光的位置和角度并不会根据实际时间进行切换变化,无法实时展示孪生场景的阳光效果,影响了整个画面的实时性与沉浸感。

技术实现思路

[0003]为了解决上述问题,本专利技术公开了一种基于三维引擎实时模拟太阳角度变化的方法、系统及设备,该方法能够将场景光照效果与现实光照效果同步,在场景中实时模拟出真实的太阳光效果,增加整个场景的实时性与沉浸感。
[0004]本专利技术解决其技术问题采取的技术方案是:一种基于三维引擎实时模拟太阳角度变化的方法,包括以下步骤:将孪生模型导入到三维引擎中,设置用以模拟太阳光的平行光;根据当前日期时间求出太阳直射点纬度;基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间;计算太阳倾斜角和太阳高度角;将求出的太阳倾斜角和太阳高度角在三维引擎中分别设置为平行光的x轴旋转值和平行光的y轴旋转值;对场景进行渲染,系统将基于当前日期时间在场景中模拟出实时的阳光效果。
[0005]进一步地,所述根据当前日期时间求出太阳直射点纬度,具体包括:若当前日期时间为春分到秋分,即3月21日至9月23日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为秋分到冬至,即9月23日至12月22日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为冬至到次年春分,即12月22日至次年3月21日,太阳直射点纬度
为:;式中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14。
[0006]进一步地,所述基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间,具体包括:通过经纬度查询网站获取孪生场景所在地理位置的纬度;将太阳直射点纬度和孪生场景所在地理位置的纬度代入下式,求出当日昼长:;其中,h为当日昼长,φ为孪生场景所在地理位置的纬度,δ为太阳直射点纬度,π为3.14;将当日昼长带入下式,求出日出时间:;然后将日出时间与当日昼长带入下式,求出日落时间:。
[0007]进一步地,所述计算太阳倾斜角和太阳高度角,包括:计算太阳倾斜角:将孪生场景的纬度与太阳直射点的纬度带入下式,求出当前太阳倾斜角:;计算太阳高度角:将当日昼长带入下式,求出每分钟的太阳高度角:;将获取到的当前时间、每分钟的太阳高度角b以及日出时间s1代入下式,求出当前太阳高度角:;其中,c为当前太阳高度角,hour为当前小时数,minute为当前分钟数,s1为日出时间。
[0008]第二方面,本专利技术提供一种基于三维引擎实时模拟太阳角度变化的系统,其特殊之处在于,包括:模型导入模块,用以将孪生模型导入到三维引擎中,设置用以模拟太阳光的平行光;太阳直射点纬度获取模块,用以根据当前日期时间求出太阳直射点纬度;第一计算模块,用以基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间;第二计算模块,用以计算太阳倾斜角和太阳高度角;
赋值模块,用以将求出的太阳倾斜角和太阳高度角在三维引擎中分别设置为平行光的x轴旋转值和平行光的y轴旋转值;场景渲染模块,用以用以对场景进行渲染,系统将基于当前日期时间在场景中模拟出实时的阳光效果。
[0009]进一步地,所述太阳直射点纬度获取模块具体用于:若当前日期时间为春分到秋分,即3月21日至9月23日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为秋分到冬至,即9月23日至12月22日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为冬至到次年春分,即12月22日至次年3月21日,太阳直射点纬度为:;式中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14。
[0010]进一步地,所述第一计算模块具体用于:通过经纬度查询网站获取孪生场景所在地理位置的纬度;将太阳直射点纬度和孪生场景所在地理位置的纬度代入下式,求出当日昼长:;其中,h为当日昼长,φ为孪生场景所在地理位置的纬度,δ为太阳直射点纬度,π为3.14;将当日昼长带入下式,求出日出时间:;然后将日出时间与当日昼长带入下式,求出日落时间:。
[0011]进一步地,所述第二计算模块具体用于:计算太阳倾斜角:将孪生场景的纬度与太阳直射点的纬度带入下式,求出当前太阳倾斜角:;计算太阳高度角:将当日昼长带入下式,求出每分钟的太阳高度角:;将获取到的当前时间、每分钟的太阳高度角b以及日出时间s1代入下式,求出当前
太阳高度角:;其中,c为当前太阳高度角,hour为当前小时数,minute为当前分钟数,s1为日出时间。
[0012]第三方面,本专利技术还提供一种计算机设备,包括:存储器,用以存储计算机程序;处理器,用以执行所述计算机程序时实现如上所述基于三维引擎实时模拟太阳角度变化的方法的步骤。
[0013]本专利技术的专利技术构思及有益效果如下:实时获取计算机日期时间与孪生场景的纬度信息,通过计算机计算得出太阳在当前日期的直射点纬度信息,然后通过纬度信息我们可以得出日出日落时间,最后综合所有信息就可以得出太阳在每个时间点的旋转角度,将角度值赋予到三维场景平行光的X轴、Y轴、Z轴旋转值中,随着时间的推移整个场景的光影也会实时变化,从而与现实场景的光照情况相吻合,实时模拟出真实的太阳光效果,增加了整个场景的实时性与沉浸感。
附图说明
[0014]图1是实施例一的一种基于三维引擎实时模拟太阳角度变化的方法流程示意图;图2是实施例二的一种基于三维引擎实时模拟太阳角度变化的系统结构示意图;图3是实施例三的一种计算机设备结构示意图;图4是太阳倾斜角示意图;图5是太阳高度角示意图。
具体实施方式
[0015]下面结合附图与实施例对本专利技术做进一步说明:为能清楚说明本专利技术方案的技术特点,下面将通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。下文的公开提供了许多不同的实施例用来实现本专利技术的不同结构。为了简化本专利技术的公开,下文中对特定例子的部件和设置进行描述。此外,本专利技术可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本专利技术省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本专利技术。...

【技术保护点】

【技术特征摘要】
1.一种基于三维引擎实时模拟太阳角度变化的方法,其特征在于,包括以下步骤:将孪生模型导入到三维引擎中,设置用以模拟太阳光的平行光;根据当前日期时间求出太阳直射点纬度;基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间;计算太阳倾斜角和太阳高度角;将求出的太阳倾斜角和太阳高度角在三维引擎中分别设置为平行光的x轴旋转值和平行光的y轴旋转值;对场景进行渲染,系统将基于当前日期时间在场景中模拟出实时的阳光效果。2.如权利要求1所述的一种基于三维引擎实时模拟太阳角度变化的方法,其特征在于,所述根据当前日期时间求出太阳直射点纬度,具体包括:若当前日期时间为春分到秋分,即3月21日至9月23日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为秋分到冬至,即9月23日至12月22日,太阳直射点纬度为:;其中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14;若当前日期时间为冬至到次年春分,即12月22日至次年3月21日,太阳直射点纬度为:;式中,δ为太阳直射点纬度,n为当前日期与3月21日的相差天数,π为3.14。3.如权利要求1所述的一种基于三维引擎实时模拟太阳角度变化的方法,其特征在于,所述基于太阳直射点纬度和孪生场景所在地理位置的纬度,求出当日昼长、日出时间和日落时间,具体包括:通过经纬度查询网站获取孪生场景所在地理位置的纬度;将太阳直射点纬度和孪生场景所在地理位置的纬度代入下式,求出当日昼长:;其中,h为当日昼长,φ为孪生场景所在地理位置的纬度,δ为太阳直射点纬度,π为3.14;将当日昼长带入下式,求出日出时间:;然后将日出时间与当日昼长带入下式,求出日落时间:。
4.如权利要求1所述的一种基于三维引擎实时模拟太阳角度变化的方法,其特征在于,所述计算太阳倾斜角和太阳高度角,包括:计算太阳倾斜角:将孪生场景的纬度与太阳直射点的纬度带入下式,求出当前太阳倾斜角:;计算太阳高度角:将当日昼长带入下式,求出每分钟的太阳高度角:;将获取到的当前时间、每分钟的太阳高度角b以及日出时间s1代入下式,求出当前太阳高度角:;其中,c为当前太阳高度角,hour为当前小时数,minute为当前分钟数,s1为日出时间。5.一种基于三维引擎实时模拟太阳角度变化的系统,其特征在于,包括:模型导入模块,用以将孪生模型导入到...

【专利技术属性】
技术研发人员:朱春华高晓东王彩宇
申请(专利权)人:山东捷瑞数字科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1