模拟远程机器人运动

时间:2013-02-17 22:30:54

标签: c# sockets xna client-server system.net.sockets

我正在完成一项由我的导师给出的作业,他在那里向我展示了一个使用Java开发的演示项目,但我没有任何java经验,但我对C#的经验很少,我必须完成给定的要求,如

  1. 使用套接字技术
  2. 客户端/服务器通信协议
  3. 方案: 需要设计一些机器人世界,其中包含一些机器人要去探索的未知物体。所以我知道这将是某种动画,如2D游戏,我可以使用microsoft XNA进行开发,并使用C#设计远程控制接口,并使用System.Net.Sockets技术传递参数值来移动机器人

    注意:我知道在Xbox中使用System.Net.Sockets时存在限制,但此项目仅在PC中使用。

    我的问题:是否有人对我的作业有任何想法或评论是否有可能。如果有可能请指导我一些指南。如果不可能,请指导我完成我的任务的技术,例如不同的编程环境或工具???? enter image description here

1 个答案:

答案 0 :(得分:1)

这是可能的。

我建议将问题分解成一些不同的部分。

模拟 - 这纯粹模拟了机器人的位置及其周围的环境。使用此任务完全忽略与图形相关的任何内容。专注于所涉及的数学。例如如果我的机器人在这里并且那里有一块岩石,我的机器人是否会碰到岩石? 由于它是一个2D应用程序,您可能能够通过大量的假设和简化来逃避。例如机器人和岩石都可以通过正方形或圆形来模拟。

(圆圈特别容易处理,因为它基本上只涉及检查机器人中心与岩石中心之间的距离是否足够大。)

网络 - 创建两个简单的控制台应用,让他们通过套接字API进行通信。一旦你有了这个工作,那么将它集成到XNA游戏将更加明显。

UI - 您可以(最终)专注于图形和用户输入。听起来这可以通过常规Spritebatch绘制调用和输入读取方法(如键盘,鼠标或GamePad)来实现。