首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >课程设计:汽车与道路

课程设计:汽车与道路
EN

Stack Overflow用户
提问于 2012-03-22 22:20:00
回答 2查看 450关注 0票数 0

我正在尝试找出设计Car和Road对象的最佳方法,用于我正在进行的游戏设计。

这个想法是让AI汽车(以及玩家控制的汽车)在道路上穿越虚线或直线时识别。我希望能够为Unity3D构建一个带有适当标志和子对象的可变车道,这样汽车就可以识别它们在哪里,何时以及如何轮流穿越或轮流等等。

例如,道路可以只有一个方向,也可以是两个方向。对于每个方向,可以有多条车道。车道允许汽车相互超越(意思是车道之间的虚线)。如果是双向道路,则在两条车道之间有一条线-可选的,理想情况下,如果在任何方向上有多条车道,则分隔定向车道的线是直的。默认情况下,应该有一个根据isOvertakingAllowed布尔标志绘制线条的标志。

最重要的部分是,汽车对象需要知道他们在什么车道上,或者他们是否在车道分隔线上,以及这种分隔线是什么类型(允许或不允许超车)。对我来说,这是最难的部分。

任何帮助都是非常感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-25 02:33:39

在gamasutra上有一个article,描述了用于露天的模型,以及不同的智能体(标准汽车,赛车,行人……)可以用到它。它可能会给你一些指点或想法。

票数 1
EN

Stack Overflow用户

发布于 2012-03-22 22:41:44

我建议你实现一个Lane,它有一个行进的方向。然后实现一个Road,它有一个点的集合,一个定义它的形状和距离的路径,以及一个跟随该路径的Lane对象集合。道路是单行道还是双行道就成了他们有哪些车道以及有多少车道的问题。

在这种情况下,CarRoad上沿着它所在的车道沿给定的方向行进。它只能切换到具有兼容行驶方向的其他车道(即与汽车方向相同的车道),除非汽车掉头。

您可能还在Road中有一个称为Intersection的特殊点,它是多个Lanes的连接点,并以某种方式指定当CarIntersection时可以转换到哪个Lanes或从哪个Car转换。

这是一个粗略的轮廓,但我认为这些是你所呈现的对象之间的基本关系,应该让你开始。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9824159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档