游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: oいばらの

一个AI的问题:如何跟随

[复制链接]

1

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2008-9-27 09:19:00 | 显示全部楼层

Re: 一个AI的问题:如何跟随



在跟随的时候一直调用这个方法 把要跟随的对象的坐标传进来他就会一直看着被跟随者
现在好了 跟随者直接按朝向移动就行了
void Hero:ook(const Vector3   lookDirection)
{
        this->mDirection = lookDirection - this->getPosition() ;
        this->mDistanceWhither = this->mDirection.normalise();

        Vector3 src = this->mNode->getOrientation() * Vector3::NEGATIVE_UNIT_Y ;

        Ogre:uaternion quat = src.getRotationTo(mDirection) ;
        this->mNode->yaw(Radian(quat.y)) ;
}

1

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2008-9-27 09:22:00 | 显示全部楼层

Re:一个AI的问题:如何跟随


上面的 Look 方法有点错了  这个是好的

void Look(const Vector3   lookDirection)
{
        this->mDirection = lookDirection - this->getPosition() ;

        this->mDistanceWhither = this->mDirection.normalise();

        Vector3 src = this->mNode->getOrientation() * Vector3::UNIT_Z ; //Vector3::UNIT_Z 这个是初始朝向

        Ogre:uaternion quat = src.getRotationTo(mDirection) ;

        this->mNode->yaw(Radian(quat.y)) ;
}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-21 05:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表