我一直在看一些有关程序化生成地牢的算法和文章。问题是,我正在尝试建造一间带房间的房子,而这些房间似乎不符合我的要求。
首先,地牢有走廊,房屋有大厅。虽然最初看起来似乎一样,但大厅不过是不是房间的区域,而走廊是专门设计用来将一个区域连接到另一个区域的。
房屋的另一个重要区别是,您必须具有特定的宽度和高度,并且必须用房间和大厅填充整个物件,而使用地牢则要有空白空间。
我认为房子的大厅介于地牢走廊(可带您进入其他房间)和地牢中的空白空间(未在代码中明确定义)之间。
更具体地说,要求是:
- 有一组预定义的房间,
我无法即时创建墙壁和门。 - 房间可以旋转但不能调整大小
,因为我有一组预定义的房间,所以我只能旋转它们,不能调整它们的大小。 - 房屋尺寸已设定,必须完全填充房间(或大厅),
即我想用可用的房间填充14x20的房屋,以确保没有可用空间。
以下是一些图片,可以使它更加清晰:
如您所见,在房子里,“空空间”仍然是可步行的,它将您从一个房间转移到另一个房间。
因此,说了这么多之后,也许一所房子只是一个真正非常紧凑且带有走廊的地牢。还是比地牢更简单。也许那里有东西,但我还没有找到,因为我真的不知道要搜索什么。
这就是我希望得到您帮助的地方:您能否给我一些有关如何设计此算法的指导?关于将采取什么步骤有什么想法?如果您创建了地下城生成器,您将如何修改它以满足我的要求?您可以根据需要特定或通用。确实,我正在寻找您的大脑。