The blog of an indie game dev !
Demos, paintings, tutorials and problems

Get all the news !

Never miss out any update.

Level Editor

Hello there!

Another month has passed, and for once, I’ve focused my work mainly on one thing. Remember my last attempt to create dynamic and slightly authored topologies from the last post? Well, I’ve taken it a step further. It’s now evolving into a level editor for Zefyr, and hopefully, other games. While I’ve already designed lots of levels for Zefyr directly within Blender, I’ve noticed some struggles in my workflow. Hopefully, this custom tool could help me iterate faster. I think I’ll use it to create bonus levels.

Anyways, here’s how it looks now:

Direct link: https://www.youtube.com/watch?v=O7Qsb_1pvX8

I – So what can it do ?

Here are the main functionalities:

TOOLS
  • Base topology generated from a flow map and user-authored streamlines
  • Tile brushes created from basic quad and tri tiles
  • Auto creation of missing tile configurations when possible
  • Auto-smooth for normals
  • “Smart” gizmo snapping to the best neighbor to paint
  • Horizontal and vertical radii for brush size
  • Random variations from the tile set when available
  • Erase modifier
  • Selections
  • Entity brushes to create specific objects on the terrain with various parameters (snapping, random rotation, scale variations, propagate normals, …)
  • Scatter/spread mode for entities to quickly create vegetation for example
  • Warping/deform of the level through the underlying grid (FFD). Dynamic repositioning of entities
  • Undo
UI
  • Basic UI and keyboard shorcuts
  • Previews for tile & entity brushes
SAVES
  • Export to binary & ascii fbx
  • Save & load to json format

And I used it “for real” to create a 1st level that I imported into Zefyr! Yay. Finally, I have a fully functional pipeline. Check it out:

OK it’s a bit empty for now, but it’s only a matter of adding other brushes (rocks, vegetation, enemies, rewards, etc…).

II – What will it do ?

Of course, there are bugs, it’s not super stable, and it’s still missing many features, but in the end, it should have the following:

  • GLTF export (not for me at the moment, but if I plan to release this tool one day, it should be here, plus I love their open standard philosophy)
  • Ability to manually draw topology with a single stroke with automatic smart connection to already existing topology
  • Copy-paste (which will be something, given that the underlying topology is never the same)
  • Combining both previous tools: remodel an existing level by hand drawing contours/underlying topology. This one could be a killer feature. I’m still not sure if it’s even possible, but I like the idea
  • Layers
  • Custom properties on entities
  • Placement correction for each entity (move/scale/rotate)
  • Brush/entity/color sampling
  • Vertex color painting (mainly for terrain texture variations)
  • 1D & 2D tile brushes (for electric wires, fences, walls)
  • Add Wave Function Collapse to create general rules for automatic tile placement/validation. Imagine painting a road inside an existing town, and the surroundings would automatically adapt, creating tunnels, bridges, and connections where there should be.
  • This can also lead to smart brushes generating content semi-procedurally to directly paint districts/biomes
  • Also giving smart brushes the ability to spawn entities dynamically on tiles. This should allow painting buildings with windows, air conditioners, antennas, plants, or whatever could be on top of them with a single stroke.
  • Fill tool to repaint/change the look/style of whole areas at once

So this was a big month regarding tools. Oh, and now I’m on bluesky too: https://bsky.app/profile/oneiricworlds.bsky.social. Actually I’ve got way too many social networks.

As always, thank you immensely for your ongoing support! If you want to support me financially (if you don’t already) you can check out my Patreon. Thanks a loooooot !

And that’s it!

Take care.


Posted

in

, ,

by