The Eden Project

Hey everyone,

Definitely want Eden to be friendly and usable for people who only do blueprints, and I’d want the base player controller to support walking, driving and flying states. Once that’s established the idea is that you can then parent any model you need to to it (i.e. character, car, spaceship) and tweak movement settings accordingly.

Re sample vehicles, by the time I make my way through this coding marathon I’ll be dying to do some art for a change so I’ll probably do a couple of models just to scratch that itch (I really liked how UDK had three different sample vehicles, each with their own type of movement).

Re multiple planets, absolutely. As you can see in the demo videos at the start of the thread, the very first test I set for myself was to see whether or not I could do infinitely random generation (and the results were better than I expected).

The other thing I’m not sure if I’ve mentioned yet is that I’ll also be building in a city generator, because empty planets are boring! And the voronoi functionality I’ve got going for the planet generation will work just as nicely for generating urban layouts. (I figure if David Braben could do it 23 years ago in Elite: Frontier II there must be something I can do in this UE4 day and age).

While I’m on a roll, I’ve really warmed to the idea of making Eden VR compatible. From the start, my attachment to scifi was always based in the classic serial TV shows like star trek, star gate, farscape and firefly (even Andromeda till it got silly). We’ve had a lot of cool scifi games but most of them don’t really make you feel like you’re running around in a big universe like the shows did (Mass effect and Freelancer had a good crack at it though).

How cool would it be if you could be walking around some random city with your crew, get in a car thingy and drive everyone to your ship, get on board and walk to the bridge, sit in the pilots seat, interact with the ship controls via motion controllers, lift off and escape orbit, then hyperspace to another star system where you basically reversed the process to go down into a different city, all in first person VR?

Just sayin :slight_smile:

I want this bad.

VR Mass Effect here we come.

Nice, i have something of procedural planets too:
[SPOILER]





[/SPOILER]
And i’ve implemented it about year ago. But now i can’t continue it. Reason in that post: Procedural mesh and runtime collision update - C++ - Unreal Engine Forums.
Have runtime LOD and collision update. It works great in standalone and PIE, but not in packaged. Also it interacts with player character without problems and i’ve implemented correct LOD and collision update for network gameplay. Collision in packaged build is disappointed me. Also i have correct object spawner for procedural planets - it spawns any foliage, any buildings. Have prototype of atmosphere and water, also have prototype of in-game terraforming. I’ve done lot of work and what can i do now? Nothing or implement my own PhysX-based runtime collision pipeline to make it work in packaged, but i can’t.
P.S. Заранее извиняюсь за мой английский :slight_smile:

@R4ndom3r - I have some experience with PhysX’s base code, add me on Steam (same name as on here) and maybe we can chat and work through a solution together.

Hey there R4ndom3r,

They look great! Sounds like you’re quite a bit ahead of me as far as adding stuff to the planet goes (good news for me, means all of that stuff is doable!)

Collision is definitely one of the things I’m expecting to be more difficult than the other stuff I’ve already got done. My first plan of attack will be to try not using mesh collision at all, but instead to give each actor access to the planets height generating algorithms, so that they can effectively ask “what is the altitude of the terrain under my lat/lon position” and react accordingly . Height generated purely from math is very fast to access, but because I’m wanting to mix between different terrain patterns using the bitmap based biomes from the voronoi images at the start of this thread I’ll probably run into some performance challenges there (but I’ll cross those bridges when I get to them).

How do you find the performance of procedurally spawned foliage? That’s the one that I expect will be the most challenging, and collision will be an issue there too (can’t have people driving through trees…)

Just spawn some trees and grass and see what happened. If you going to spawn over 500k meshes on planet, even with culling it will freeze every 0.5-1 seconds (i have not researched this problem, but found a solution). The solution is compounding big amount of single meshes to large “lod-blocks” of foliage and spawn that “blocks” (seems like landscape LODs). From 500k meshes i’ve reached about 500-1000 big lod-meshes. I’ve added culling distance too. But you can calculate foliage runtime like heights of planet - it’s good solution too and i’ve implemented it too (based on coherent noise with displacement for coords matching every time). It’s only performance issue and i wanted to avoid “spawn-calls”, thats reason why i’ve implemented “lod-blocks”.
Not using collision is good choise, but what about interplanet interaction? At the beginning of my project i wanted to “ramming planets” and even did simulation with destruction meshes - it uses in-engine implementation of collision as far as i know. And collision interface provides good stuff (events, for example) to manage any kind of interaction (terraforming, ramming and even integration with physics-based fluids). I don’t want to refuse it

Re the foliage, sounds promising… Re ramming planets, lol, no I won’t be doing anything like that sorry :slight_smile:

Having said that, because I’m using clipmaps (or at least, my version of them) it’s very easy to say “Ok, give me collision, but only for the 3 closest lod octaves” (or whatever). In fact I tried it already, but the collision generated by default by the proc mesh component was very poor quality so I guess I’ll have to spin some code of my own to do that.

Re progress, for tonight I had to keep slogging away at getting the normals between lod octaves synched, it’s turning into a tough job but I seem to still be making progress (albeit of the slow variety). Needs doing but, so… shrugs

Hello ioFlow Studios
What you’re doing with the planet -sized terrain looks interesting and rather promising. I did build a system for planets that work good from an orbital view and procedural texturing a while back Content by MaxStudios - UE Marketplace if you’re interested I could look into coming up with a system to texture and populate your generated planet with vegetation according to your height data, climate zones and so on.

Hi cronos3k,

Thanks! I love your planetarium asset too, it’s such a great looking planet :slight_smile:

TBH been so busy coding hadn’t even thought about the possibility of teaming up with other people… open to suggestions though. I’ll send you PM, probably easier to chat about it there.

Also, now that you’ve got me thinking about texturing I remembered that I’ve got an (older UDK) example of the type of details I’d like to be able to do down at ground level in Eden.

I did this demo video for a (huge) video tute series I made for my last job, it’s pretty low res sorry but you get the idea :slight_smile:

No foliage and a bit rough in places, but I’m looking forward to seeing how much better I can do things in UE4 for eden…

Woohoo :slight_smile:

Finally got the normals across the lods lining up nicely together:

It was REALLY hard (I’m not as clever as people think I am).

P.S. the light grid lines you can see are just the default texture pattern in the default material.

Here’s the corresponding wireframe so you can see what’s going on under the surface:

Big win, gonna be a good weekend… (mwuhahahaha)

Thought I’d do a little video showing how the mesh can update in real time when you change the noise settings.

It’s not real smooth on my old laptop with screen recording software running, but that’s ok. When you edit like this eden has to update all meshes planet wide every time one of the noise settings change.

But in game it only has to make the meshes once, then they can just sit there until they need to change resolution based on the players distance from them which is staggered by the lod system so it’s MUCH higher performance.

Wow omg

Can you fly around on the planet now? :open_mouth:

I can’t say I totally understand whats going on here but I sure do respect your perseverance and dedication. It’s very rad reading through your months of progress and seeing everything develop!

Not yet.

Got a long weekend this weekend though, and player controller is top of the list now (need to see how it all runs in game before I pile a bunch more stuff on top of it).

Couple more youtubes of testing live edit on my (faster) work machine instead of my laptop:

You got featured on launcher Spotlight Project, congrats! Nice work, I’ve been wishing for this for quite some time.

Good day.
I am interested in this project. I really want to use it. But I do not know if the access to it, whether it is possible to download from somewhere.
Can I take part in this project as a developer?

Yay :slight_smile:

Done seem to got collision sorted out…

Still all very rough around the edges but a big milestone.

Might start thinking about putting more detailed explanations up on my blog and just post youtube links here (for anyone who’s interested in how this stuff works).

Next major milestone: try and make a good enough demo to win a dev grant with…

Bit of a blast from the past sorry, but I stumbled across an old executable from my first attempt to create eden 8 years ago (in Irrlicht 3D):

This was before I nearly got some basic texturing going (using antigrain geometry would you believe it, the same library I’m using now).

Lot’s of problems visible in the video obviously, but still not too bad as tech demo from nearly a decade ago :slight_smile: