游戏开发论坛

 找回密码
 立即注册
搜索
查看: 6521|回复: 12

【求助】2D游戏中怪物追赶主角的算法

[复制链接]

2

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2009-1-20 11:12:00 | 显示全部楼层 |阅读模式
【求助】2D游戏中怪物追赶主角的算法(简单的判断x,y大小,然后自增除外,不美观),我用的是势函数,就是导弹跟踪那个帖子的算法,但发现当角度在几个不同的象限时,追赶速度不一致

0

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2009-1-20 16:42:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

每间隔一小段时间判断一下主角的当前坐标也可以实现,不用搞的那么复杂吧,
我写东西都是尽量用最简单的思想解决复杂的东西,要是我做的话,我就间隔一段时间判断一次追踪目标的坐标,修正自己的状态.

2

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2009-1-20 16:55:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

你能说具体点吗,你说的方法是不是:
if(追踪.x<被追踪.x)
   追踪.x++;
if(追踪.x>被追踪.x)
   追踪.x--;
if(追踪.y<被追踪.y)
   追踪.y++;
if(追踪.y>被追踪.y)
   追踪.y--;
我原来是这样做的,不美观,而且当怪物数量不止一个时,会排队追踪
大哥能给个代码,或者举个例子吗

31

主题

278

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
发表于 2009-1-20 17:49:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

速度

2

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2009-1-20 18:14:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

那位大哥帮帮忙啊,这个问题两天了都没有解决,HELP ME

0

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2009-1-20 18:18:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

莫非是45度的地图?

代码都是特定的,说说意思吧

target_x, target_y;//目标当前
my_x, my_y; //自己当前
moveto_x,moveto_y;//当前时刻跟随的目的点

totaldis = target 与 my 的直线距离
mindis = 自己与目标的最小追踪距离
moveto_x = target_x - ( mindis * ( target_x - my_x ) / totaldis );
大概是这样,没有太仔细算,
不如果需要排队的话我的思路是把地图切块用寻路算法求出路径,把追踪者按dis排队然后对应上块,这么做好像没什么意义...

31

主题

278

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
发表于 2009-1-20 18:18:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

从速度这一块去想,应该很简单啊

0

主题

7

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2009-1-20 18:31:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

1:
  用速度算出当前的坐标,
  再确定移动的目标点,改变目标点移动, 这里还可以加一个判断如果新的目标点根迁移目标点距离不是很远的话可以暂时不改变移动目的点
  间隔一段时间,
goto 1;

2

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2009-1-20 19:11:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

小神和SLZero大哥啊,我是初学者,这两天被这问题卡住了
你们说的速度是跟势函数有关吗,速度怎么算坐标啊,
能给个代码吗,或者在详细点,代码加每一步的注释

2

主题

13

帖子

13

积分

新手上路

Rank: 1

积分
13
 楼主| 发表于 2009-1-20 19:19:00 | 显示全部楼层

Re:【求助】2D游戏中怪物追赶主角的算法

小神和SLZero大哥有QQ吗,可以的话加QQ请教一下你们,可以把问题说的详细些
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-20 09:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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