Redian新闻
>
问个游戏开发相关的问题
avatar
问个游戏开发相关的问题# Programming - 葵花宝典
z*e
1
就是战斗的时候(比如wow里面PvC),战斗结果是server push给client,还是client
不断发请求pooling?
比如说我砍npc一刀,然后不动,因为npc一直在打我,我这边应该能看到hp不断地减以
及npc用的招数,那么这个是靠我client这边不断发请求(比如我这边有个专门负责npc
attack的thread,不断往server发命令,然后server把npc攻击的结果发回来),还是
说client只管listen/pool data,server自己建一个thread自动计算每次npc攻击的结
果,把data放一个queue里面,然后client自己去读?
换句话说类似这样的code,到底在client还是server跑?
while(player.HP>0)
{
result = NPC.StartAttack(); //如果是client端,这个就是往server发请求获得结果
SaveResultToQueue();
sleep(skill.CoolDownTime);
}
我觉得在server上跑更能体现real time的效果,但是在server
avatar
P*e
2
我觉你的假设不对 。
你以为你的资料都在你的电脑上。
实际应该是所有资料都在server,他有攻击模式,只是把显示结果发给client

client
npc

【在 z***e 的大作中提到】
: 就是战斗的时候(比如wow里面PvC),战斗结果是server push给client,还是client
: 不断发请求pooling?
: 比如说我砍npc一刀,然后不动,因为npc一直在打我,我这边应该能看到hp不断地减以
: 及npc用的招数,那么这个是靠我client这边不断发请求(比如我这边有个专门负责npc
: attack的thread,不断往server发命令,然后server把npc攻击的结果发回来),还是
: 说client只管listen/pool data,server自己建一个thread自动计算每次npc攻击的结
: 果,把data放一个queue里面,然后client自己去读?
: 换句话说类似这样的code,到底在client还是server跑?
: while(player.HP>0)
: {

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。