怎样实现局域网内实现多个主机同时显示相同的三维场景?

Tonyfengliang 2004-05-03 10:39:06

就象当初的红警和星际这样的游戏是那样实现互连!
单指局域网内,每个单机上运行的程序,可以创建一个主机。然后局域网类的运行同样机器的主机可以加入这个主机。然后进行游戏。
现在我仅仅只需要实现,局域网内的台机器能够同时显示一个三维场景,并且同步更新,然后任意一台机器发送更新指令,所有的机器实现更新场景,实现多台机器同步的动态漫游。
我该如何设计,并且采用什么样的技术途径。

我现在的想法就是:
1)写一个程序,不分客户端和服务器端。创建主机的就是服务器端,其他都是客户端。
2)利用最原始的聊天程序类似的通讯机制,一个用于管理连接的Listen Socket 连接以后的Client Socket。然后由服务器端传递更新的场景视点信息进行更新
3)问题:我是否需要线程池进行随时线程等待。避免不同步!

...全文
52 5 点赞 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Tonyfengliang 2004-07-12
有没有详细一点.
网络游戏开发的机制介绍啊!
  • 打赏
  • 举报
回复
kofightas 2004-05-09
不要用dplay
用winsock就行,用udp通讯。
把每帧的数据封包,然后用sendto()传送就行了。当然要加上反馈和应答机制,最好对数据校验和加密。
如果对性能要求高的话必然要线程池的。否则WSAselect()模型是最简单易用的。
顺便求数据封包的代码,我最近也在做联网游戏,正为数据传送头痛呢。
  • 打赏
  • 举报
回复
Tonyfengliang 2004-05-09
能不能介绍一下Directplay?
  • 打赏
  • 举报
回复
DarthVader 2004-05-04
组播 或者你去看一个叫NDK的开发包
  • 打赏
  • 举报
回复
gcz5212314 2004-05-04
用DirectPlay吧
  • 打赏
  • 举报
回复
相关推荐
发帖
游戏开发
加入

8060

社区成员

游戏开发相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2004-05-03 10:39
社区公告
暂无公告