proceduralgeneration | Unsorted

Telegram-канал proceduralgeneration - procedural generation

99

Created by @r_channels

Subscribe to a channel

procedural generation

After 4 years of developing procedural generators, I've finally released my game Vagabond in Early Access!

https://redd.it/139ik00
@proceduralgeneration

Читать полностью…

procedural generation

Applying a Distorted Voronoi Map to a Perlin Noise Map

Hi! I'm completely new to game development but have a background in software engineering. I've been brain storming for a game idea that would allow a player to choose what biomes are in what spots on a finite voxel map. I have following requirements:

1. The initial height map will be generated by a low frequency/contrast Perlin noise function so that there are some small hills and shallow valleys, but not much. The idea is it's barren.
2. The map will be divided into random undeclared biome sections of relatively equal size using a voronoi map (or something similar). Whether the biome map is procedurally generated does not matter too much to me (the map bounds will be finite so there's no decisive reason it should need to be tileable).
3. The player should be able to choose one of the undeclared biome sections and choose which biome should go there. As a first pass there are no limitations on which biome can border another.
4. When the player chooses a biome, either a corresponding Perlin noise function is applied to that section of the map, or the parameters of the initial noise function are modified in that section to match the selected biome, and blended on the edges in a way that is reasonable. For example, if the user chooses to place a mountains biome, then higher hills and valleys should be placed in that section. If a Plains section is placed, then the opposite.
5. The terrain is not modifiable in any other way, no mining, building etc.

The main issue I'm having with processing all of this is figuring out how to do a look up of what section of the voronoi map a voxel vector is in when rendering, and how to preform the blend so that when a plain is placed next to a mountain, there is a reasonable blended slope for 1-3 tiles around the perimeter based on what the neighboring biome's topography is like

Any insights or ideas on how to approach this would be super helpful! I attached an image for a visual description.

https://preview.redd.it/hp7ihjetz1ya1.png?width=841&format=png&auto=webp&v=enabled&s=6fe31ae399b72eaa97c5cca9879d8fa0b885decd

https://redd.it/138wpa8
@proceduralgeneration

Читать полностью…

procedural generation

Procedural One Click Cyberpunk Effect Generator - Blender
https://redd.it/138o1yd
@proceduralgeneration

Читать полностью…

procedural generation

Blender Tutorial - How to Create Procedural Realistic Rock Generator
https://youtu.be/nBnw7-Q3Rgk

https://redd.it/138k2nf
@proceduralgeneration

Читать полностью…

procedural generation

Is there an Infinitely Reproducible Technique for the Wave Function Collapse?

I know there are videos of infinite wave function collapse worlds on Youtube, but they all seem to use some re-creating technique such as back-propagation to "fix" issues that come up that are caused by lack of information / conflicting states in surrounding tiles. On top of that generation seems to depends on what order of chunks you generate, since there is more than one solution to the combination of tile states, and this doesn't seem to be possible to lock down to "reproducibility" with hash functions or anything.

The only way I can think of doing this is to ensure that what is generated is being generated in chunks, and the tiles on the edges of the chunk are essentially blank-canvas tiles that accept any tiles adjacent to it. That way in a finite space you can run a reproducible chunk, and can guarantee the states of other chunks don't invalidate the current chunk's state.

​

Is there any other way of doing this? For instance, is there a mathematically proven formula for determining how "far away" you need to generate from the current tile to ensure there can no longer be any backpropagation issues? Or is there another algorithm similar to the wave function collapse that actually is able to be reproducible infinitely?

https://redd.it/1384ts3
@proceduralgeneration

Читать полностью…

procedural generation

Made a game with generative puzzle pieces
https://redd.it/137tqgp
@proceduralgeneration

Читать полностью…

procedural generation

Blender Tutorial - Procedural Modeling Masterclass Space Station Generator
https://youtu.be/EvQtPV-rwws

https://redd.it/137h3in
@proceduralgeneration

Читать полностью…

procedural generation

Ever wonder what happens when you combine worley (or voronoi) noise + fractional brownian motion + domain warping?

https://redd.it/137382y
@proceduralgeneration

Читать полностью…

procedural generation

Periodic Dune Sea

https://redd.it/136yfou
@proceduralgeneration

Читать полностью…

procedural generation

procedurally generated levels 🧿 in a mathy, intercellular space: Nucleo! 🦠
https://youtu.be/GJaYVFgXMAY

https://redd.it/136miyx
@proceduralgeneration

Читать полностью…

procedural generation

Enabling ChatGPT World Building in Spatial Terminal Engine
https://redd.it/135zfkh
@proceduralgeneration

Читать полностью…

procedural generation

Three body problem cell automata field
https://youtube.com/shorts/W-11uKlyOg0?feature=share

https://redd.it/135kkxc
@proceduralgeneration

Читать полностью…

procedural generation

Cell automata archipelago map
https://youtube.com/shorts/fwvHwLnuQY8?feature=share

https://redd.it/134wwkn
@proceduralgeneration

Читать полностью…

procedural generation

Building Procedural Dungeons with GPT-4 AI Descriptions...

I'm using basic BSP then A* to go door to door (stoner walk, friend of drunken walk), with some variations for hallways. (I asked ChatGPT to crap out some hallway generation code, and I got some looking like colons? lol...)

I've got three room types currently, and each can be further modified by cellular automata on the inside a certain percentage of the time.

I'm feeding that information (and what's in the room) to ChatGPT-turbo API and getting back descriptions for rooms with a bit of coherency.

My latest dev log...

​

https://reddit.com/link/134zlkj/video/g4r28ewyy9xa1/player

Possible level 1 generation...

https://preview.redd.it/lipthk61z9xa1.png?width=1621&format=png&auto=webp&v=enabled&s=5c575cfa7117fa60011aed49df19ff7acaf8ff29

Mid-level...

https://preview.redd.it/87r81203z9xa1.png?width=1621&format=png&auto=webp&v=enabled&s=070872320d52eb675315a6c65032fbf86d96db16

Oh, man, you've gone too deep!

​

https://preview.redd.it/mqp2j955z9xa1.png?width=1621&format=png&auto=webp&v=enabled&s=b3b905569ac27f818b1038702a956c7b07137fb7

Finally have line of sight and field of view working together...

​

https://reddit.com/link/134zlkj/video/scron6t7z9xa1/player

I'm not a full-time coder, and I'm definitely standing on the shoulders of giants who came before me, but I'm scratching the code together to build a truly endless dungeon.

​

I've got a unique game mechanic to hide my lack of artistic skills by using letter monsters haha... Seriously, though, the mobs will be AI generated too, I think. Not the stats part, but the names and descriptions likely...

https://preview.redd.it/tusmmxqgz9xa1.png?width=973&format=png&auto=webp&v=enabled&s=340e35267e68a1a6cd7658099e8cb65004d6aadc

Still a lot of work to do, but I'm porting over a lot of my work on a D&D tabletop dungeon generator, so it's going smoothy.

​

Feedback appreciated.

https://redd.it/134zlkj
@proceduralgeneration

Читать полностью…

procedural generation

Scalar field simulation
https://youtu.be/ZZM_SDHglZM

https://redd.it/134xdq6
@proceduralgeneration

Читать полностью…

procedural generation

Using Voronoi polygons for simplified continent generation

Hello, I am currently doing my own work on generating continents and such using procedural methods. Sure, the easiest method would be to use Perlin Noise and such, but they don't really feel like actual continents, do they? The mountain ranges don't actually look like such when zoomed out, and it pales in comparison to actual tectonically-simulated maps.

The tectonics simulations have a different problem: Generation time. It takes forever to generate a decent map with this method, especially on less powerful computers. This may get compounded with more moving parts, as is often needed when one wants to have a good result.

I have decided to take matters into my own ambitious hands and make a solution: Edge-based tectonics abstraction. The principle works as such:

1. The map will be divided into various regions with hard borders. Voronoi Tessellation works well here.
2. Said borders will contain data, at minimum IDs, of the regions that share it.
3. The regions store data, most likely 2d vectors, representing the speed of the plate.
4. In the generation process, each border instance compares the speed vectors of its parents with their relative positions to determine whether it is a Convergent, Divergent, Transform, or None boundary. The magnitude of the differences will determine the 'strength' of said border
5. The areas immediately surrounding these borders will then be generated according to the type of boundary it is, as well as the relative strength of these features, such as island chains, mountain ranges, rift valleys, and potentially even earthquake events in and around the area.

Of course, when I set out to try and build this system to demonstrate it, I ran into some problems. My first problem is that I am an amateur programmer at best, so it would be a challenge to build a voronoi generator by myself, especially if I want the data on the borders. That latter part, from what I have heard, would be easier to get if I used Delaunay Triangulation to generate my Voronoi diagram. Unfortunately, I am big dumb in my brain hole, so I can't wrap my head around that, either.

Fortunately for me, the internet came in clutch with the Oskar Sigvardsson Delaunay Unity Library with the vast majority of the work done for me!

However, it's part of the rest of the work that stumped me, because lucky me, the program that makes the Voronoi diagram with the included edge data only includes the ID for one of the two regions it's shared with. When I dug deeper, it was made readily apparent that the intermediary struct that is used for making the edges loses that specific part of the data.

I can not possibly hope to build the solution into this, so I take to this place to get some help on this. How can I change this to incorporate the data that I want?

https://redd.it/1391ohw
@proceduralgeneration

Читать полностью…

procedural generation

Quick performance preview of my hobby procedural city engine (C++) on the Steam Deck

A quick preview of the performance on the Steam Deck (apologies for the youtube link but the video is 600mb and it's not practical on my data package to currently upload this >1 time): https://youtu.be/kWwDXNQ6w3Q

https://redd.it/138kkj0
@proceduralgeneration

Читать полностью…

procedural generation

Thanks to the community feedbacks we released a new version of our procedural walk engine demo!

https://redd.it/138kim7
@proceduralgeneration

Читать полностью…

procedural generation

Brilliant procedural work

https://redd.it/138cdmy
@proceduralgeneration

Читать полностью…

procedural generation

Procedural generation thesis topics

Hi, I'm looking for my honor's thesis (tfg) research topics about procedural generation in videogames for things like levels, assets,... (whatever really). I would like to innovate in some capacity in this field of study but I do not know what are the current problems or limits as of late. If anyone knows about it or has any mediums of searching for this information please DM me or ping me.

Thank you beforehand!

https://redd.it/137watu
@proceduralgeneration

Читать полностью…

procedural generation

splish splash bubble bath
https://redd.it/137thx5
@proceduralgeneration

Читать полностью…

procedural generation

Procedural Volumetric Clouds
https://www.wedesoft.de/software/2023/05/03/volumetric-clouds/

https://redd.it/1372lo5
@proceduralgeneration

Читать полностью…

procedural generation

This absolute banger from last decade
https://www.youtube.com/watch?v=sWblpsLZ-O8

https://redd.it/13727s9
@proceduralgeneration

Читать полностью…

procedural generation

Procedural Content Generation via Knowledge Transformation (PCG-KT)

I did a writeup on a new paper just published on PCG-KT that shows a lot of potential because can use AI to transfer knowledge from different domains for a new way to do PCG.

You can find the original research paper here: https://arxiv.org/pdf/2305.00644.pdf

And my humble writeup here:
https://airesearchnews.com/unleashing-game-worlds-with-knowledge-transformation-a-new-era-for-procedural-content-generation/

I hope you find it as interesting as I did.

https://redd.it/136tac9
@proceduralgeneration

Читать полностью…

procedural generation

Procedural generation without repetitions

Hi there!

I'm refining some old projects, and there is a few ehnancements I would like to do.

Lets say I have a random generator that generates random runes (Like https://fontmeme.com/fuentes/fuente-angerthas-moria/) from a given seed:

> int a = randForSeed.nextInt(1-3);

> if (a == 1) {

> start drawing from the top left corner

> } else if (a == 2)

> start drawing from the top center

> } else if (a == 3)

> start drawing from the top right-corner

> }

> then draw a diagonal, or straight down, using another randForSeed.nextInt(1-x)

Other example: generate random books: I have a list of titles

>The $color $type of...

>The $color $type with...

then a list of colors, and a list of types. Selecting a random one from each, would result in

> The black tome of...

> The red manual of...

> The red guide of...

> etc.

Question is... how can I be sure no repetitions are produced? No same runes are generated, and I have no duplicate book tittles?

I could brute force it: check if the generated element is already generated, and reroll the randoms, generating another. There should be not much collisions, but looks like the dirty way.

In another generator I used a list of consecutive values, and then shuffled it to get a random (non repeating sequence). But I dont really know how to integrate this in a more complex algorithm. For example in the books example, I could generate a list of 0 to n-1 colors (0..10) shufle it, and then pick the color for the next book from this list, using the next value in the shuffled list. But somehow looks like a cheap solution.

Hope my english is clear enough... Any ideas?

https://redd.it/1360jb6
@proceduralgeneration

Читать полностью…

procedural generation

bubble bath
https://redd.it/135vnmp
@proceduralgeneration

Читать полностью…

procedural generation

Wave Function Collapse - Dance Floor and Sewer World
https://www.youtube.com/watch?v=m2bBWO_ObQ8

https://redd.it/135eaz3
@proceduralgeneration

Читать полностью…

procedural generation

Blender Tutorial - Procedural Modeling Masterclass Space Station Generator
https://www.youtube.com/watch?v=XjqsutyNgDo

https://redd.it/1353po1
@proceduralgeneration

Читать полностью…

procedural generation

Bad Apple!! cell automata bacterial culture
https://youtu.be/70r2AK0xU2Q

https://redd.it/134zwiw
@proceduralgeneration

Читать полностью…

procedural generation

Cell automata diffusion height map
https://youtube.com/shorts/SS68kMcbHMQ?feature=share

https://redd.it/134xg34
@proceduralgeneration

Читать полностью…
Subscribe to a channel