一种基于制造技术

技术编号:39654476 阅读:6 留言:0更新日期:2023-12-09 11:23
本发明专利技术涉及一种基于

【技术实现步骤摘要】
一种基于Unity3D在雪地上滚雪球的痕迹生成方法及终端


[0001]本专利技术涉及
Unity3D
应用
,尤其涉及一种基于
Unity3D
在雪地上滚雪球的痕迹生成方法及终端


技术介绍

[0002]在
3D
游戏中有时会碰到场景中是一片白茫茫的雪地,在这片雪地上可能会有滚雪球的操作

通常滚雪球的时候会在雪地上留下拖尾痕迹,也许两侧与雪球的前端也会存在因为雪球挤压而出现的小雪堆

现有的雪地痕迹与四周小雪堆的生成往往是采用
Shader
实现,结合曲面细分技术可以细分雪地网格,读取雪球位置绘制痕迹,根据笔刷留下痕迹的颜色深浅来控制雪地的痕迹凹陷与雪堆突起

为了使雪堆突起更加真实美观往往要利用曲面细分技术将网格细分到较为精细的程度,而曲面细分技术对于设备有较高的要求,且由此生成的拖尾痕迹风格在
Q
版画风中也并不适用

另外对于雪地拖尾痕迹来说,通常使用的是直接将雪球位置映射到画布上,利用笔刷绘制而成,如果需要痕迹的渐变消失就会比较麻烦,需要检测当前绘制过的痕迹再修改区域颜色进行淡出处理

[0003]因此,上述技术存在以下缺点:
[0004]缺点1:应用到曲面细分技术,对设备要求较高,中低端设备无法使用

[0005]缺点2:直接使用笔刷绘制痕迹路径图,在需要渐渐淡出痕迹时不便操作

>
技术实现思路

[0006](

)
要解决的技术问题
[0007]为了解决现有技术的上述问题,本专利技术提供一种基于
Unity3D
在雪地上滚雪球的痕迹生成方法及终端,能够优化在雪地上滚雪球生成拖尾痕迹所带来的性能消耗,降低了设备要求

[0008](

)
技术方案
[0009]为了达到上述目的,本专利技术采用的一种技术方案为:一种基于
Unity3D
在雪地上滚雪球的痕迹生成方法,包括:
[0010]S1、
制作雪球模型

小雪堆模型

痕迹面片和雪地模型,对所述雪地模型中用于所述雪球模型的活动区域进行网格精细化处理,将所述雪球模型

小雪堆模型

痕迹面片和雪地模型导入至
Unity3D
中;
[0011]将所述小雪堆模型的位置预设至雪球模型的前侧和左右两侧,将所述小雪堆模型的初始缩放值设置为0,并制作用于存放所述小雪堆模型和痕迹面片的对象池;
[0012]S2、
在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,实时更新所述雪球模型的位置,利用所述对象池在所述雪球模型的左右两侧实时生成所述小雪堆模型,位于所述雪球模型前侧的小雪堆随着所述雪球模型的位置变化做同步移动,使其位置保持于所述雪球模型的前侧,并随着所述所述雪球模型的滚动同步做滚动动作;
[0013]利用正交相机获取所述雪球模型滚动过程中的当前位置,在所述当前位置处生成所述痕迹面片,将所述正交相机拍摄的信息传入至
Unity 3D
的渲染器纹理
RenderTexture
中,并通过着色器
shader
控制渲染器纹理
RenderTexture
中所述痕迹面片的颜色,使所述痕迹面片在视觉上呈现凹陷效果;
[0014]S3、
基于所述小雪堆模型和痕迹面片的已生成时间,将所述小雪堆模型进行缩小处理,同时通过笔刷痕迹工具对所述痕迹面片的颜色进行淡化处理,之后与所述小雪堆模型一同回收至所述对象池

[0015]本专利技术采用的另一种技术方案为:一种基于
Unity3D
在雪地上滚雪球的痕迹生成终端,包括存储器

处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0016]S1、
制作雪球模型

小雪堆模型

痕迹面片和雪地模型,对所述雪地模型中用于所述雪球模型的活动区域进行网格精细化处理,将所述雪球模型

小雪堆模型

痕迹面片和雪地模型导入至
Unity3D
中;
[0017]将所述小雪堆模型的位置预设至雪球模型的前侧和左右两侧,将所述小雪堆模型的初始缩放值设置为0,并制作用于存放所述小雪堆模型和痕迹面片的对象池;
[0018]S2、
在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,实时更新所述雪球模型的位置,利用所述对象池在所述雪球模型的左右两侧实时生成所述小雪堆模型,位于所述雪球模型前侧的小雪堆随着所述雪球模型的位置变化做同步移动,使其位置保持于所述雪球模型的前侧,并随着所述所述雪球模型的滚动同步做滚动动作;
[0019]利用正交相机获取所述雪球模型滚动过程中的当前位置,在所述当前位置处生成所述痕迹面片,将所述正交相机拍摄的信息传入至
Unity 3D
的渲染器纹理
RenderTexture
中,并通过着色器
shader
控制渲染器纹理
RenderTexture
中所述痕迹面片的颜色,使所述痕迹面片在视觉上呈现凹陷效果;
[0020]S3、
基于所述小雪堆模型和痕迹面片的已生成时间,将所述小雪堆模型进行缩小处理,同时通过笔刷痕迹工具对所述痕迹面片的颜色进行淡化处理,之后与所述小雪堆模型一同回收至所述对象池

[0021](

)
有益效果
[0022]本专利技术的有益效果是:
[0023]①

在雪地模型中仅对雪球模型活动的区域进行网格精细化处理,非雪球模型活动区域则无需网格精细化处理,避免了曲面细分技术带来的设备限制,也通过场景区分避免全部网格进行精细化处理导致模型资源过大;
[0024]②

通过预先制作好的雪球模型

小雪堆模型和痕迹面片,能够自定义其
Q
版风格,更加适用于
Q
版画风

[0025]③

通过对象池的回收机制,可以降低实时生成小雪球模型和痕迹面片所带来的性能消耗;
[0026]④

雪球模型的拖尾痕迹渐变消失是基于痕迹面片进行操作的,而非笔刷绘制,可更灵活地控制当前拖尾痕迹的隐藏功能

附图说明
[0027]图1为本专利技术的一种基于
Unity3D
在雪地上滚雪球的痕迹生成方法的流程图;...

【技术保护点】

【技术特征摘要】
1.
一种基于
Unity3D
在雪地上滚雪球的痕迹生成方法,其特征在于,包括:
S1、
制作雪球模型

小雪堆模型

痕迹面片和雪地模型,对所述雪地模型中用于所述雪球模型的活动区域进行网格精细化处理,将所述雪球模型

小雪堆模型

痕迹面片和雪地模型导入至
Unity3D
中;将所述小雪堆模型的位置预设至雪球模型的前侧和左右两侧,将所述小雪堆模型的初始缩放值设置为0,并制作用于存放所述小雪堆模型和痕迹面片的对象池;
S2、
在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,实时更新所述雪球模型的位置,利用所述对象池在所述雪球模型的左右两侧实时生成所述小雪堆模型,位于所述雪球模型前侧的小雪堆随着所述雪球模型的位置变化做同步移动,使其位置保持于所述雪球模型的前侧,并随着所述所述雪球模型的滚动同步做滚动动作;利用正交相机获取所述雪球模型滚动过程中的当前位置,在所述当前位置处生成所述痕迹面片,将所述正交相机拍摄的信息传入至
Unity 3D
的渲染器纹理
RenderTexture
中,并通过着色器
shader
控制渲染器纹理
RenderTexture
中所述痕迹面片的颜色,使所述痕迹面片在视觉上呈现凹陷效果;
S3、
基于所述小雪堆模型和痕迹面片的已生成时间,将所述小雪堆模型进行缩小处理,同时通过笔刷痕迹工具对所述痕迹面片的颜色进行淡化处理,之后与所述小雪堆模型一同回收至所述对象池
。2.
根据权利要求1所述的基于
Unity3D
在雪地上滚雪球的痕迹生成方法,其特征在于,所述
S2
中在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,利用所述对象池在所述雪球模型的左右两侧实时生成所述小雪堆模型包括:在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,所述雪球模型的缩放值基于预设规则随着滚动距离逐渐增大,并利用所述对象池在所述雪球模型的左右两侧实时生成所述小雪堆模型
。3.
根据权利要求1所述的基于
Unity3D
在雪地上滚雪球的痕迹生成方法,其特征在于,所述
S1
还包括:在雪球模型的中心下方设置第一碰撞体,在所述小雪堆模型的中心设置第二碰撞体,在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,所述雪球模型的第一碰撞体与其前侧及其左右两侧的小雪堆模型的第二碰撞体不会产生接触;所述
S2
还包括:若在雪球模型滚动过程中,所述第一碰撞体与之前生成的所述小雪堆模型的第二碰撞体发生碰撞,则回收所述小雪堆模型至所述对象池中
。4.
根据权利要求1所述的基于
Unity3D
在雪地上滚雪球的痕迹生成方法,其特征在于,所述
S2
之后还包括:
S21、
判断所述所述雪球模型滚动过程产生的拖尾痕迹是否需要逐渐消失;若是,执行
S3
;若否,则保存已生成的所述小雪堆模型和痕迹面片,不执行
S3。5.
根据权利要求1所述的基于
Unity3D
在雪地上滚雪球的痕迹生成方法,其特征在于,
所述
S2
中在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,实时更新所述雪球模型的位置包括:在所述雪球模型的滚动过程中,小雪堆模型的缩放值与雪球模型的缩放值按预设比例相关联,实时更新所述雪球模型的位置,记录上一帧所述雪球模型的位置,计算上一帧所述雪球模型的位置与当前帧所述雪球模型的位置之间的距离,若所述距离大于预设值,则执行后续步骤生成小雪堆模型和痕迹面片
。6.
一种基于
Uni...

【专利技术属性】
技术研发人员:林薇林东兰薛飞吴镇瑜唐光宇闫乃永卢学明
申请(专利权)人:宝宝巴士股份有限公司
类型:发明
国别省市:

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

1