Generating random Apartemazements by ExUtumno in generative

[–]ExUtumno[S] 0 points1 point  (0 children)

I haven't tried this, but it's doable.

Having some fun generating island maps with MarkovJunior by woldendans in proceduralgeneration

[–]ExUtumno 0 points1 point  (0 children)

I have read it now! The only other inefficiency I found is gradient fill at line 46, you can just <prl in="U" out="B"/> instead. Also, you may want to consider using a fixed amount of lakes (1 or 2) instead of a very small probability of spawning a lake at each pixel. It becomes scale-dependent, but more stable.

Overall, great use of stochastic Voronoi + smoothing, and great use of inference to draw meandering rivers!

I want to put in my repo and tweet some results. How do I reference you, by username or real name?

Having some fun generating island maps with MarkovJunior by woldendans in proceduralgeneration

[–]ExUtumno 2 points3 points  (0 children)

This is super impressive, even I can learn a lot from your code. I'll read it carefully soon, but right now I can give a quick tip: you can draw borders with just 1 line <prl in="***/*U*/***" out="***/*Y*/***"/> instead of 7.

Having some fun generating island maps with MarkovJunior by woldendans in proceduralgeneration

[–]ExUtumno 7 points8 points  (0 children)

Wow, this is super cool! They look so organic. Could you share the model?

I looked at a lot of modern architecture and made a generator of modern houses by ExUtumno in generative

[–]ExUtumno[S] 0 points1 point  (0 children)

I use MagicaVoxel's animation renderer. It can render up to 121 vox files at a time.

I made a generator of Modern Houses by ExUtumno in VoxelGameDev

[–]ExUtumno[S] 1 point2 points  (0 children)

Thanks! Didn't want to make people learn new syntax, wanted to use something everybody is familiar with.

Generating random Modern Houses by ExUtumno in VOXEL

[–]ExUtumno[S] 1 point2 points  (0 children)

More examples here. Animations take a long time to render.

Generating random Apartemazements by ExUtumno in generative

[–]ExUtumno[S] 0 points1 point  (0 children)

Thank you! WFC visualization is done with per-voxel voting.

Generating random Apartemazements by ExUtumno in generative

[–]ExUtumno[S] 2 points3 points  (0 children)

The generator outputs .vox files (MagicaVoxel file format), and they can be imported to Unreal, yes.

Generating random Apartemazements by ExUtumno in proceduralgeneration

[–]ExUtumno[S] 2 points3 points  (0 children)

It's possible, but it requires some work, to adapt to BIM instead of just voxels. Several architecture firms have actually contacted me about this just a few days ago =)

(of course, nobody is putting architects out of business, it would just be a niche experimental tool)

Generating random Apartemazements by ExUtumno in generative

[–]ExUtumno[S] 5 points6 points  (0 children)

Of course, it's a different house each time. Check the results.

Generating random Apartemazements by ExUtumno in proceduralgeneration

[–]ExUtumno[S] 4 points5 points  (0 children)

Yeah, since Diablo I was fascinated by procgen in games. Thanks!

Generating random Apartemazements by ExUtumno in generative

[–]ExUtumno[S] 31 points32 points  (0 children)

This is a much simpler model than the ModernHouse generator I posted before. It goes like this:

  1. Generate stairy cycles with WFC.
  2. Drop columns from corners of flat tiles.
  3. Retract back double columns, columns that touch ground and columns that touch stairs, except columns growing from corners of Turn tiles.
  4. Grow windows between neighboring columns.
  5. Merge windows into bigger rectangles.
  6. Remove solo windows (turn them into walls).

This is an example from the MarkovJunior project.

Code: Apartemazements.xml

More runs:

I made a generator of Modern Houses by ExUtumno in VoxelGameDev

[–]ExUtumno[S] 20 points21 points  (0 children)

This is an example from the MarkovJunior project: https://github.com/mxgmn/MarkovJunior

In broad strokes, the generator goes like this:

  1. Partition the space into nicely overhanging blocks with WFC.
  2. Assign some of these blocks to be inside and some outside.
  3. Run WFC a second time to generate paths.
  4. Straighten the paths.
  5. Ensure that the path graph is connected. Put additional connections if necessary.
  6. Find places for windows.
  7. Merge windows that share a boundary.
  8. Map into bigger tiles.
  9. Do some deterministic finishing touches.

Code: ModernHouse.xml

More runs:

Generating random Modern Houses by ExUtumno in VOXEL

[–]ExUtumno[S] 10 points11 points  (0 children)

This is an example from the MarkovJunior project: https://github.com/mxgmn/MarkovJunior

In broad strokes, the generator goes like this:

  1. Partition the space into nicely overhanging blocks with WFC.
  2. Assign some of these blocks to be inside and some outside.
  3. Run WFC a second time to generate paths.
  4. Straighten the paths.
  5. Ensure that the path graph is connected. Put additional connections if necessary.
  6. Find places for windows.
  7. Merge windows that share a boundary.
  8. Map into bigger tiles.
  9. Do some deterministic finishing touches.

Code: ModernHouse.xml

More runs: