reactivedrop_public_src icon indicating copy to clipboard operation
reactivedrop_public_src copied to clipboard

Projects - TileGen

Open BenLubar opened this issue 3 years ago • 3 comments

  • [ ] Method of compiling tileset to bsp file
  • [ ] Entity that moves tiles around to create playable space at runtime
  • [ ] MissionChooser support for generating and distributing a layout

BenLubar avatar Jun 18 '22 20:06 BenLubar

Moving brushes? The lighting would look very strange

jhh8 avatar Jun 19 '22 09:06 jhh8

The idea is that the speed might be worth the graphical trade-off. It's the kind of thing that will have to be made before I know if it's worth including.

BenLubar avatar Jun 19 '22 15:06 BenLubar

upon some further brainstorming, I think there's potential here, assuming we can:

  • edit vbsp, vvis, and vrad to handle a map with no seal (pretending that it just has a seal around its bounding box)
  • figure out how to take a BSP file and move/rotate brush model 1 (worldspawn)
  • figure out how to take two BSP files and merge brush model 1 (worldspawn) so it contains all the brushes from both
  • generate a bsp file with just a skybox seal preferrably without needing vbsp/vvis/vrad, etc.
  • generate a bsp file on demand (using pre-baked lighting and remapping entity IDs similar to func_instance from individual room bsps) in a deterministic way
  • (the rest of these are definitely possible and potentially even easy)
  • make tilegen tiles explicitly entire rooms, separated by doors or at least doorways (this is how warframe handles pre-baked lighting; the doorways are usually darker than the rest of the rooms)
  • handle placing "tiles" that are arbitrary shapes and at arbitrary orientations by making rooms snap together via doors rather than snapping to a grid
  • tilegen door entity support for hammer
  • special "door rooms" that handle placement of actual asw_door in the map to avoid having multiple doors spawn in the same place now that rooms can be rotated arbitrarily

BenLubar avatar Jun 16 '24 21:06 BenLubar