第二人生的源码分析(二十)显示人物名称

在第二人生里,每个人物显示都有一个名称,那么这个名称又是怎么样显示出来的呢?怎么样实现的呢?带着这两个问题,下面就去分析第二人生里面的实现代码。它的人物名称显示如下:
蔡军生 2008/01/24 QQ:9073204 深圳
从上面的图片上,可以看到人物的头上有一个名称显示,用来标识人物角色。要显示这个人物名称,肯定是在二维的空间里显示的。每个人都有一个名称显示,很多人在一起时,就需要显示多名称。因此,在第二人生里把名称的显示和角色的显示是分离的。调用下面的代码来显示名称:
1、LLPipeline::renderGeom()
2、render_hud_elements()
3、LLHUDObject::renderAll()
 
这个函数的代码如下:
#001 void LLHUDObject::renderAll()
#002 {
#003       LLHUDObject *hud_objp;
#004      
#005       hud_object_list_t::iterator object_it;
#006       for (object_it = sHUDObjects.begin(); object_it != sHUDObjects.end(); )
#007       {
#008              hud_object_list_t::iterator cur_it = object_it++;
#009              hud_objp = (*cur_it);
#010              if (hud_objp->getNumRefs() == 1)
#011              {
#012                     sHUDObjects.erase(cur_it);
#013              }
#014              else if (hud_objp->isVisible())
#015              {
#016                     hud_objp->render();
#017              }
#018       }
#019 }
在第16行里显示人物的名称。
由于在这个类里会先调用LLHUDObject::addHUDObject()函数添加人物名称显示对象LLHUDText,这样在渲染时就会把名称显示出来。
 

转载于:https://www.cnblogs.com/ajuanabc/archive/2008/01/24/2464157.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值