Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "procedural generation"
-
So, I've been following a tutorial and explanatory series on YouTube about procedural terrain generation.
I dare saying it's going quite well!20 -
1) Built an entire SoC around a MIPS CPU. Fixed bugs in the CPU. Created hardware, busses, firmware, wrote Linux drivers, ported Linux.
2) Still working on a C++ abstraction framework for heterogenous computations for 4 years. About to solve / create a prototype for GPGPU and maybe even HDL code generation. Utilizes dynamic dispatch for scalar, SSE, AVX and other targets. I started this only because I did not like the performance of procedural noise algorithms utilized in a game prototype I started in 2015.
3) Created a game in 5 months to drag myself out of depression. Feeling success while your job sucks is soooo goooodd...13 -
Well, I was Always into Computers and Games and stuff and at some point, I started wondering: "why does Computer Go brrr when I Hit this Button?".
It was WinAPI C++ and I was amazed by the tons of work the programmers must have put into all this.
13 year old me was Like: "I can make a Game, cant be too hard."
It was hard.
Turns out I grabbed a Unity Version and tried Things, followed a tutorial and Made a funny jet Fighter Game (which I sadly lost).
Then an article got me into checking out Linux based systems and pentesting.
*Promptly Burns persistent Kali Live to USB Stick"
"Wow zhis koohl".
Had Lots of fun with Metasploit.
Years pass and I wrap my head around Javascript, Node, HTML and CSS, I tried making a Website, worked Out to some extent.
More years pass, we annoy our teacher so long until he opens up an arduino course at school.
He does.
We built weather stations with an ESP32 and C++ via Arduino Software, literally build 3 quadrocopter drones with remote Control and RGB lighting.
Then, Cherry on the top of everything, we win the drone flying Contest everyone gets some nice stuff.
A couple weeks later my class teacher requests me and two of my friends to come along on one of their annual teacher meetings where there are a bunch of teachers from other schools and where they discuss new technology and stuff.
We are allowed to present 3D printing, some of our past programming and some of the tech we've built.
Teachers were amazed, I had huge amounts of fun answering their questions and explaining stuff to them.
Finally done with Realschulabschluss (Middle-grade-graduation) and High school Starts.
It's great, we finally have actual CS lessons, we lesen Java now.
It's fuckton of fun and I ace all of it.
Probably the best grades I ever had in any class.
Then, in my free time, I started writing some simple programs, firstvI extended our crappy Greenfoot Marsrover Project and gave it procedural Landscape Generation (sort of), added a Power system, reactors, Iron and uranium or, refineries, all kinds of cool stuff.
After teaching myself more Java, I start making some actual projects such as "Ranchu's bag of useful and not so useful stuff", namely my OnyxLib library on my GitHub.
More time passes, more Projects are finished, I get addicted to coding, literally.
My days were literally Eat, Code, sleep, repeat.
After breaking that unhealthy cycle I fixed it with Long Breaks and Others activities in between.
In conclusion I Always wanted to know what goes on beneath the beautiful front end of the computer, found out, and it was the most amazing thing ever.
I always had constant fun while coding (except for when you don't have fun) and really enjoyed it at most times.
I Just really love it.
About a year back now I noticed that I was really quite good at what I was doing and I wanted to continue learning and using my programming.
That's when I knew that shit was made for me.
...fuck that's a long read.5 -
One of the coolest projects I've worked on recently was this little adventure game I made for a game jam a while back, It was made from scratch with Golang and C over two days. It also features procedural level generation (that technically should allow the user to walk in one direction for at least 7 decades).7
-
Think I am going to try out my first stuff for my game engine in 2D. The games I have the most fond memories of were 2D. Sure I like what has happened on the 3D side. But it would be fun to recreate some of my favorite 2D games. Except with one caveat: procedural generation. Never play the same game twice. For testing purposes I will have a seed system to regenerate the same worlds. I would have played these games so much longer if they had been based on a seed for generation of content.
I also like the idea of weapons and armor never being exactly the same. Sure they can look similar, but on close inspection you could see differences. It will be fun to start with base models and then add imperfections and differences.
Another issue I have with fantasy games is always leveling up the weapon by buying something better. Sure we have improvement systems though smithing and magic, but some weapons are always better than others. I wanted to have a game where weapons could be improved by usage and upgrades. Kill 1000 trolls and the weapon gets imbued with trollbane. Kill a dragon and the blood infuses and it deals fire damage. So a player could start out with the family sword and end up with a god tier weapon at the end of the game. Make weapons become legendary. Not because it has more power, but because trolls recognize the blade and the wielder and are scared shitless.
Terrain in 2D should be a lot easier to generate. Weapons, armor, etc should be easier to modify and generate. This should give me the grounding I need to develop the algorithms for a future 3D system. Godot is currently stronger in 2D than 3D. That will change in the next couple of years as more focus is put on the engine. There is no reason I cannot experiment with mixing 2D and 3D as well.
Holy shit, I was just thinking I cannot imagine the amazing shit they could have done with the games I played as a kid with 2D physics!
Haha, something they had in the older games was actual gambling. You could bet on monster fights and slot machines in game. I wonder if that takes a hard hit with ESRB now?
Currently stuck in tutorial hell. Learning how the engine works and seeing what features are available. I get more excited each video I watch. The engine is packed with goodies and the addons are crazy good.
tldr: First project will be short game in 2D. Will explore procedural content.13 -
So I came across this meme and it got me thinking.
We say that if our universe is truly infinite, we are bound to find a place that is the exact replica of our local cosmic neighborhood eventually if we keep looking.
But procedurally generated worlds like minecraft have that determinism to their world structure(with an initial seed to calculate everything) where you can predict how the local neighborhood would look like at any distance, no matter how far.
So would it be correct to say that it's not guarenteed that in a game like minecraft where the world is generated procedurally with a deterministic algorithm, will be such that you can find the exact same local neighborhood from one seed in any other seed?18 -
FUCK ME IN MY INDICES.
FUCK THE GPUS IN THEIR INDICES.
I mean... I understand (roughly) why the meshes are sent to gpu in this form, but at the same time...
...there's a reason why first thing I did when I was coding my procedural geometry generation library, was abstracting away all of that stuff...
...sadly, as many useful things, when I was looking for that lib on the start of this contract, I couldn't find it. and I was like "doesn't matter, this is a simple thing, using the library would be just a lazy overkill anyway".
well, fuck.
two hours of playing around with two fucking triangles, trying to figure out which indexes are pointing to the correct vertices in a list containing FOUR outline paths.
(lower inner, upper inner, lower outer, upper outer, exacly in this order).
i mean, yeah, it's actually pretty straightforward stuff... for someone not as dumb as me =D
you just have two offsets, one that jumps you to start of the upper path, another that jumps you to the start of the outer path, then it's just
0 + upOffset to get the vertex extruded upwards from the zeroth of the inner path, or
0 + outOffset to get the zeroth from the outer outline, or
0 + outOffset + upOffset, to get the one extruded from zeroth outer vertex...
and so on.
simple stuff, then you just replace the zero with loop control var, put them in the right order, and voilá! walls!
except... whatever, why am I describing in such detail, not necessary, you're not my rubber duck =D
in short, figuring out which fuckin vertex is which, when the list contains ...well, any number of points, and you need to plug the gap between last and first points of the paths, where you need to wrap around the list...
...has proven to be surprisingly hard for me.
funny how much I love doing these things with meshes, despite how bad I am at doing them, which makes me hate doing them despite loving it =D2 -
" Under the hood... the program is using a mix of condition-based learning, procedural generation of sentences/questions, and relational queries based on weighted 'topic' identifiers. It can create its own original statements and questions. It is real-time, and it really does 'think' (an internal dialogue feedback loop)." = If Statement
I saw this in the description for an app aclled "Real AI"