gpt4 book ai didi

erlang - 角色模型和碰撞检测

转载 作者:行者123 更新时间:2023-12-04 03:16:30 25 4
gpt4 key购买 nike

我只是在考虑Erlang用于游戏服务器的可能性。 (哦,我不是Erlang专家,只是考虑阶段),这意味着使用Actor模型进行游戏模拟。当然,最大的吸引力是其并发分布在多个节点上。

我当前的巨大问题是我应该如何执行多角色交互(例如碰撞检测)。 (这只是一个例子)

尽管碰撞检测在任何游戏中都是必不可少的,但是在Actor Model的本质上,它看起来效率不高甚至没有意义,因为它需要全局同步的状态查询并在所有目标actor上进行更新。而且,如果我使用任何同步,它都将覆盖Erlang Actor 模型的所有优点。

当然,如果我正确地使用空间分区,一次针对 Actor 的目标可能会更小,但这只是一种优化,而不是主要的答案。还是这个问题的正确答案?通过减少交互参与者的数量来减小同步范围?

最佳答案

将 map 拆分成较小的部分,然后让每个部分成为自己的进程(您甚至可以将其拆分得太多,以至于每个图块都是自己的进程)。尝试移动的玩家会向图块/子图发送一条消息,说它要去那里,图块会回答是否正确。由于一次仅由图块/子图处理一个消息,因此避免了冲突。多个子图/图块可以同时处理消息,因此它仍然是一个并发程序。

关于erlang - 角色模型和碰撞检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10370717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com