[发明专利]一种虚拟角色的视野剔除方法和服务器有效
| 申请号: | 201710244220.2 | 申请日: | 2017-04-14 |
| 公开(公告)号: | CN106898051B | 公开(公告)日: | 2019-02-19 |
| 发明(设计)人: | 龚逸玲 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
| 主分类号: | G06T19/00 | 分类号: | G06T19/00;G06T11/00 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
| 地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 虚拟 角色 视野 剔除 方法 服务器 | ||
1.一种虚拟角色的视野剔除方法,其特征在于,包括:
服务器将障碍物投影到第二虚拟角色的投影平面上,得到所述障碍物在所述投影平面上的凸多边形,所述障碍物处于第一虚拟角色和所述第二虚拟角色之间;
所述服务器对所述凸多边形进行光栅化处理;
所述服务器根据光栅化处理的结果确定所述凸多边形是否完全覆盖所述第二虚拟角色在所述投影平面上所占的投影面积;
若所述凸多边形完全覆盖所述第二虚拟角色的投影面积,所述服务器将所述第二虚拟角色从所述第一虚拟角色的视野范围内剔除掉,向客户端发送第一视野剔除结果,所述第一视野剔除结果包括:所述第二虚拟角色从所述第一虚拟角色的视野范围内剔除;
若所述凸多边形没有完全覆盖所述第二虚拟角色的投影面积,所述服务器向所述客户端发送第二视野剔除结果,所述第二视野剔除结果包括:所述第二虚拟角色处于所述第一虚拟角色的视野范围内;
其中,所述服务器对所述凸多边形进行光栅化处理,包括如下步骤:
步骤1、所述服务器获取所述凸多边形的所有顶点的位置坐标;
步骤2、所述服务器根据坐标轴方向从所述所有顶点的位置坐标中选择出第一坐标值和第二坐标值,所述第一坐标值、所述第二坐标值为根据所述坐标轴方向确定的最大坐标值和最小坐标值,或所述第一坐标值、所述第二坐标值为根据所述坐标轴方向确定的最小坐标值和最大坐标值;
步骤3、所述服务器从所述第一坐标值开始沿着所述凸多边形的边分别按照顺时针方向和逆时针方向遍历所述凸多边形的各个顶点,在遍历各个顶点的过程中,对遍历后的顶点进行连线后组成的图形进行光栅化,直至最终到达所述第二坐标值时完成光栅化处理。
2.根据权利要求1所述的方法,其特征在于,在所述服务器将障碍物投影到第二虚拟角色的投影平面上步骤之前,所述方法还包括:
所述服务器获取所述第一虚拟角色在虚拟场景内的第一位置坐标;
所述服务器根据所述第一虚拟角色所采用的视角判断从所述第一位置坐标到第二位置坐标之间的直线上是否存在障碍物,所述第二位置坐标是所述第二虚拟角色在所述虚拟场景中的位置坐标;
若从所述第一位置坐标到所述第二位置坐标之间的直线上不存在障碍物,所述服务器向所述客户端发送第三视野剔除结果,所述第三视野剔除结果包括:所述第二虚拟角色在所述第一虚拟角色的视野范围内;
若从所述第一位置坐标到所述第二位置坐标之间的直线上存在障碍物,触发执行如下步骤:服务器将障碍物投影到第二虚拟角色的投影平面上。
3.根据权利要求1所述的方法,其特征在于,所述步骤3,包括:
步骤31、所述服务器从所述第一坐标值开始,沿着所述凸多边形的边分别按照顺时针方向和逆时针方向获取到第三坐标值和第四坐标值,所述第三坐标值对应的顶点、所述第四坐标值对应的顶点都与所述第一坐标值对应的顶点相邻;
步骤32、所述服务器将所述第一坐标值赋值给顺时针当前顶点Vcw,将所述第三坐标值赋值给顺时针下一顶点Vcwn,所述Vcwn=next(Vcw),所述服务器将所述第一坐标值赋值给逆时针当前顶点Vccw,将所述第四坐标值赋值给逆时针下一顶点Vccwp,所述Vccwp=prev(Vccw);
步骤33、所述服务器对第一线段和第二线段在所述凸多边形内组成的公共部分进行光栅化处理,所述第一线段包括:所述Vcw对应的顶点和所述Vcwn对应的顶点之间的连线,所述第二线段包括:所述Vccw对应的顶点和所述Vccwp对应的顶点之间的连线;
步骤34、所述服务器从所述Vcwn和所述Vccwp中选择出与所述第一坐标值之间差值的绝对值最小的坐标值,若所述Vcwn与所述第一坐标值之间差值的绝对值最小,则沿着所述凸多边形的边按照顺时针方向找到第五坐标值,将所述第三坐标值赋值给所述Vcw,将所述第五坐标值赋值给所述Vcwn,然后重新执行步骤33,所述第五坐标值对应的顶点与所述第三坐标值对应的顶点相邻;若所述Vccwp与所述第一坐标值之间差值的绝对值最小,则沿着所述凸多边形的边按照逆时针方向找到第六坐标值,将所述第四坐标值赋值给所述Vccw,将所述第六坐标值赋值给所述Vccwp,然后重新执行步骤33,所述第六坐标值对应的顶点与所述第四坐标值对应的顶点相邻;当所述Vcw和所述Vccw的取值都不等于所述第二坐标值时,重新执行步骤33和步骤34,当所述Vcw或所述Vccw的取值等于所述第二坐标值时完成光栅化处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710244220.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种标签锁定装置
- 下一篇:一种带有冗余功能的门禁主机设备





