游戏开发论坛

 找回密码
 立即注册
搜索
查看: 7481|回复: 10

游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个线

[复制链接]

2

主题

12

帖子

12

积分

新手上路

Rank: 1

积分
12
发表于 2010-5-19 10:55:00 | 显示全部楼层 |阅读模式
望高手指教。

就像魔兽世界里的怪物或NPC,没事就是在一个范围内走来走去的,等玩家靠近之后就会被盯上。
莫非是一个NPC一个线程?
服务器端,每一个怪物或每一个NPC都对应一个实例对象这个是肯定的吧。。。

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2010-5-19 16:16:00 | 显示全部楼层

Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

通常所有对象共用一个线程。

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2010-5-23 22:12:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

2

主题

12

帖子

12

积分

新手上路

Rank: 1

积分
12
 楼主| 发表于 2010-5-28 14:49:00 | 显示全部楼层

Re: 游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

确实是一个棘手的问题。
比如,一张地图内加载了20000个对象(怪物或智能NPC),当一个人物走动的时候把坐标传到了服务器,服务器是不是要遍历全部20000个对象,看看是否有在人物附近的,然后告诉客户端,或者告诉怪物攻击该人物
这样来说的话,运算量是不是非常巨大。

14

主题

66

帖子

77

积分

注册会员

Rank: 2

积分
77
发表于 2010-5-29 17:38:00 | 显示全部楼层

Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

为什么不考虑优化呢?比如玩家多少范围才会触发几个npc的ai.其他都还在睡眠~

2

主题

12

帖子

12

积分

新手上路

Rank: 1

积分
12
 楼主| 发表于 2010-5-29 19:34:00 | 显示全部楼层

Re: Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC

godkiller007: Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个线程?

为什么不考虑优化呢?比如玩家多少范围才会触发几个npc的ai.其他都还在睡眠~


那你这个“几个”和“其他”是怎么得来的?
还不是要检索一遍吗?

14

主题

66

帖子

77

积分

注册会员

Rank: 2

积分
77
发表于 2010-5-30 15:42:00 | 显示全部楼层

Re: Re: Re:游戏里的智能NPC或怪物是怎么管理的,难道一个N

DevGame: Re: Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个线程?



那你这个“几个”和“其他”是怎么得来的?
还不是要检索一遍吗?


这是遍历的问题,比如说人物都有具体的位置,我上边说了一定范围,比如以玩家上下左右20个范围为标准,我只遍历这80个位置是否有东西,如果有npc,则根据npc的id启动npc管理器里面的具体这几个npc.

当然我说的不一定是标准,游戏需要我们灵活实现,这就看你怎么想了。大致想法,不一定对。

19

主题

52

帖子

52

积分

注册会员

Rank: 2

积分
52
发表于 2010-6-2 15:27:00 | 显示全部楼层

Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

当然全部遍历了,速度足够的

0

主题

13

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2010-6-3 11:22:00 | 显示全部楼层

Re: 游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

7楼所说正解.
如果场景大,同时在这场景的人数又多,那么全部遍历实在不可取.
并不是说不能这么搞,但这样一来效率就低了.

362

主题

3023

帖子

3553

积分

论坛元老

Rank: 8Rank: 8

积分
3553
发表于 2010-6-11 17:26:00 | 显示全部楼层

Re:游戏里的智能NPC或怪物是怎么管理的,难道一个NPC一个

不要把线程看得那么重。其实只有在底层上才需要关心线程。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-8 15:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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