• 渲染和填充MobileMenuListItem


      在MobileMenuElement中有var vector2D VpPos,VpSize;  分别是列表的位置和大小。然后在MobileMenuListItem中有Height和Width。分别表示每一个item的长度和宽度。

      在MobileMenuListItem中可以填充这些元素。

      我自己定义了一种文字var array<AntDrawText> Parts;

      AntDrawText是自定义的文字类,里面的Render(Canvas,Alpha);//是文字的渲染函数

      function RenderItem(MobileMenuList List,Canvas canvas,float DeltaTime)

      {

          local AntDrawText Part;

          local float Percentage,AlphaVal;   //我们定义了一个百分比和显示的Alpha值,目的是为了让人员名单两边以渐变的形式消隐

          super.RenderItem(List,Canvas,DeltaTime);

          Percentage=FMax(0,VpPos.Y)/Clip.Y;     //纵轴在屏幕的百分比

          AlphaVal=1.f;

          if(Percentage<0.2f)    //如果是在顶部20%区域

          {

                           AlphaVal=FMin(1,0.5f*Percentage);   
          }

          else

          {

            Percentage=FMax(0,VpPos.Y+height)/Canvas.ClipY; //下部的话,我们得算上其宽度

            if(Percentage>0.8)

            {

              Percentage=1-Percentage;

              AlphaVal=FMin(1,Percentage*5.0f);
            }

            
          }  

          foreach Parts(part)

          {

            Part.Render(Canvas,FClamp(AlphaVal,0,1));
          }


      }

  • 相关阅读:
    UVa 10474
    UVa 1339
    UVa 1368
    UVa 1585
    UVa 1586
    ACM中Java高效输入输出封装
    Ajax中Get请求与Post请求的区别
    AJAX——核心XMLHttpRequest对象
    PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
    PHP类方法重写原则
  • 原文地址:https://www.cnblogs.com/NEOCSL/p/3127157.html
Copyright © 2020-2023  润新知