游戏开发中的人工智能 复习

游戏开发中的人工智能 复习

(个人复习,一些仅是给自己的复习提示(=w=),转载注明出处:http://blog.csdn.net/hcbbt/article/details/42815479)

配套教材:游戏开发中的人工智能


知识点

  1. 移动
    • Bresenham,视线(略),拦截
      // Bresenham
      if (deltaCol > deltaRow) {
          fraction = deltaRow * 2 - deltaCol;
          while (nextCol != endCol) {
              if (fraction >= 0) {
                  nextRow = nextRow + stepRow;
                  fraction = fraction - deltaCol;
              }
              nextCol = nextCol + stepCol;
              fraction = fraction + deltaRow;
              pathRow[currentStep] = nextRow;
              pathCol[currentStep] = nextCol;
              currentStep++;
          }
      } else {
          fraction = deltaCol * 2 - deltaRow; 
          while (nextRow != endRow) { 
              if (fraction >= 0) { 
                  nextCol = nextCol + stepCol; 
                  fraction = fraction - deltaRow; 
              }
              nextRow = nextRow + stepRow;
              fraction = fraction + deltaCol;
              pathRow[currentStep] = nextRow;
              pathCol[currentStep] = nextCol;
              currentStep++;
          } 
      }
      

      // 拦截,类似视线
      void     DoIntercept(void) {
          Vector   u, v;
          Bool     left = false;
          Bool     right = false;
          Vector   Vr, Sr, St;
          Double   tc;
      
          Vr = Prey.vVelocity - Predator.vVelocity;
          Sr = Prey.vPosition - Predator.vPosition;
          tc = Sr.Magnitude() / Vr.Magnitude();
          St = Prey.vPosition + (Prey.vVelocity * tc);
      
          u &
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值