技术新讯 > 休闲运动,玩具,娱乐用品的装置及其制品制造技术 > 一种实时游戏角色和服装染色方法与流程  >  正文

一种实时游戏角色和服装染色方法与流程

  • 国知局
  • 2024-08-22 14:22:39

本发明涉及游戏开发,特别涉及一种实时游戏角色和服装染色方法。

背景技术:

1、在电子游戏发展成熟的当下,包括运行在手机、个人电脑、游戏主机等设备的网络游戏和单机游戏,可定制化的游戏角色已经成为了吸引玩家的重要手段,其中角色身体、服装等各种部位的染色功能是角色定制化的重要组成部分。

2、传统的实时染色算法是基于材质系统的染色方法,在gpu计算游戏画面中的像素颜色时,通过调整原来颜色的色相、饱和度和亮度的方法,也就是hsl颜色(指通过色相、饱和度、亮度来表示颜色)和rgb颜色(指通过红绿蓝三原色来表示颜色)相互转换的算法,来实现染色功能。这种方法能够满足最基础的染色功能,但产生的颜色效果不够丰富、颜色范围受限,而且在实时计算中存在gpu计算复杂度偏高的问题,从画面表现和游戏运行效率方面影响玩家体验,因此,本申请提供了一种实时游戏角色和服装染色方法来满足需求。

技术实现思路

1、本发明要解决的技术问题是提供一种实时游戏角色和服装染色方法以解决现有的颜色效果不够丰富、颜色范围受限以及gpu计算复杂度偏高的问题。

2、为解决上述技术问题,本发明提供如下技术方案:

3、一种实时游戏角色和服装染色方法,包括以下步骤:

4、s1.1,客户端响应用于控制游戏角色和服装染色的命令;

5、s1.2,cpu通过材质系统修改传递给gpu的染色控制参数;

6、s2.1,在gpu中,通过读取角色或者服装的材质中的一张遮罩贴图,确定当前计算的像素点是否需要进行染色计算;

7、s2.2,对当前像素点计算饱和度,记录其结果为原色饱和度,计算染色颜色的饱和度,记录其结果为染色饱和度;

8、s2.3,对当前像素点进行去色计算,将去色的结果根据参数原色的去色程度与原色做插值计算;

9、s2.4,将去色计算的结果和染色颜色相乘,并将该颜色饱和度进行调整,得到初步染色颜色;

10、s2.5,根据饱和度调整参数,在原色饱和度和染色饱和度之间做插值计算,得到目标饱和度;

11、s2.6,将初步染色颜色的饱和度通过计算修改为最终饱和度,得到最终颜色;

12、s3,将最终颜色作为计算的结果传递给后续其他的像素颜色计算中使用,或者直接输出显示在屏幕上。

13、在一种可能的实现方式中,所述s1.2中的控制参数包括染色颜色、原色的去色程度、饱和度调整参数。

14、在一种可能的实现方式中,所述2.2中饱和度的计算方法为saturate(饱和度)=1-(原色rgb中最小的亮度/原色rgb中最大的亮度)。

15、在一种可能的实现方式中,所述s2.3中去色的计算方法为:去色颜色=dot{原色,f l oat3(0.3,0.59,0.11)}。

16、在一种可能的实现方式中,所述s2.4中饱和度调整的计算方法为:将原色rgb中最小亮度的对应通道数值设置为0,将原色rgb中最大亮度的对应通道数值设置为1。

17、在一种可能的实现方式中,所述2.6中饱和度修改的计算方法为:最终颜色=纯白色(1)*最终饱和度+初步染色颜色*(1-最终饱和度)。

18、本发明与现有技术相比,至少具有如下有益效果:

19、通过将hsl颜色和rgb颜色相互转换的算法进行优化,使用简单的乘法来化简其中复杂的色相变换计算,并同时完成亮度的计算,因为化简算法而丢失的细节,则合并到饱和度的计算中,从而兼顾性能消耗和效果细节,且不会带来额外的制作成本。

技术特征:

1.一种实时游戏角色和服装染色方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种实时游戏角色和服装染色方法,其特征在于,所述s1.2中的控制参数包括染色颜色、原色的去色程度、饱和度调整参数。

3.根据权利要求1所述的一种实时游戏角色和服装染色方法,其特征在于,所述2.2中饱和度的计算方法为saturate(饱和度)=1-(原色rgb中最小的亮度/原色rgb中最大的亮度)。

4.根据权利要求1所述的一种实时游戏角色和服装染色方法,其特征在于,所述s2.3中去色的计算方法为:去色颜色=dot{原色,float3(0.3,0.59,0.11)}。

5.根据权利要求1所述的一种实时游戏角色和服装染色方法,其特征在于,所述s2.4中饱和度调整的计算方法为:将原色rgb中最小亮度的对应通道数值设置为0,将原色rgb中最大亮度的对应通道数值设置为1。

6.根据权利要求1所述的一种实时游戏角色和服装染色方法,其特征在于,所述2.6中饱和度修改的计算方法为:最终颜色=纯白色(1)*最终饱和度+初步染色颜色*(1-最终饱和度)。

技术总结本发明提供一种实时游戏角色和服装染色方法,属于游戏开发技术领域;包括以下步骤:S1.1,客户端响应用于控制游戏角色和服装染色的命令;S1.2,CPU通过材质系统修改传递给GPU的染色控制参数;S2.1,在GPU中,通过读取角色或者服装的材质中的一张遮罩贴图,确定当前计算的像素点是否需要进行染色计算;S2.2,对当前像素点计算饱和度,记录其结果为原色饱和度,计算染色颜色的饱和度,记录其结果为染色饱和度;S3,将最终颜色作为计算的结果传递给后续其他的像素颜色计算中使用,或者直接输出显示在屏幕上。本发明不仅可在保持足够丰富的染色效果的同时保持高效的运行效率,提供更好的用户体验,而且对于游戏开发者来说能够有效降低成本。技术研发人员:温健滔,潘岐贤,罗培羽,康南,谢嘉受保护的技术使用者:广州四三九九信息科技有限公司技术研发日:技术公布日:2024/8/20

本文地址:https://www.jishuxx.com/zhuanli/20240822/278426.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。