(April 2018) Monthly WIP & Screenshot thread

So I have the settings drilled in how I like them… for now. I think these levels are way too big and the straight tunnels may be way too long… but I won’t know for sure until I can see it in 3D. Those settings are all tweakable anyway.

The problem is… now it’s too fun to explore the random space and just keep trying new seeds to see what I get:

seed=0:

seed=1:

seed=2:

seed=3:

seed=4:

11 Likes

I’m working on Light Probes blending. here is the first result.

I have 3 probes aligned in a “corridor” with emissive walls.
At the beginning I use what we have today: the geometry uses the closest probe. So the floor geom only use the central one (the closest probe to it’s “center”) and the cube switches between the 3 probes depending on its position.
You can see a sudden lighting change when the cube switches probe.

At around half of the video I switch to the new mode. The floor now uses the 3 probes and they are blended on a pixel basis. Notice how the reflection parallax is better, However It can’t be perfectly aligned unless I implement oriented box bounds for the probes… work for another day.
However the cube now goes smoothly from one probe to another, with no lighting sudden change.

24 Likes

Wow… ok, that is pretty neat.

I got the idea that we needed proper lighting for corridors type of environment :wink:

I’ve made more progress on my decal projection and effect system, although I had to spend some time going back to rework the foundation to improve performance. Rather than doing everything in the shader, it now generates a mesh for each decal, and the shader just handles the effects and transitioning.

.

23 Likes

very cool!!

1 Like

Noice! I thought we already had this :smile:

Wow, this really looks awesome!

1 Like

Did you make everything yourself? If not, what library(ies) did you use (i.e. procedural noise)?

Also, is it grid based or more organic like what I did in the last monthly WIP & Screenshot thread? I used brute force too.

Edit : Sorry if it wasn’t clear to whom my message was for; I thought that clicking on “reply” would somehow indicate the original message.

To me, it’s not at all clear who you are responding to. Might want to clarify next time.

I think because I’m the OP for this thread, it does not indicate it specifically… and some folks just reply the bottom but talk to someone specific so it’s not clear that every unattributed reply is meant for me either (see comment on Spoxel above).

Yes. There is no noise. Just java.util.Random initialized with a seed.

I originally thought to have overall level archetypes that would serve as the high level structure and then randomly pick one. However, my first archetype was “random radials from a central core where radial tips are randomly connected”… and that will randomly produce almost every overall archetype I could think of.

From there, I do some number of iterations of the brute force “blooming” where I visit every open connection and try to randomly place a part there. I intersperse this with a pass that sees if a square room won’t fit but a trapezoid room will… because that results in a lot of nicely nested structures. I iterate those two steps a few times.

Next will be to do a graph traversal over the level to map out different security zones, key drops, data terminals, loot drops, etc…

5 Likes

This sounds awesome! Can’t wait to see it!

Great work! Actually I would like to give this post 2 likes at least;)

I thought a good goal for “Capture the Hat” would be a scarecrow. So I did that:

Delivering a hat there now gets your team a point (there’s scarecrow with blue and one with red eyes).

11 Likes

Hi guys,

I’m not coding with JME anymore but I still watch these monthly threads with both pleasure and nostalgia. You’re all amazing ^^ please keep up the good work !

Ben

6 Likes

Working on stand-in geometry to confirm that I got my ratios right (and to build out the level mapping in general). I was pretty sure I had it wrong but real geometry seems to confirm it’s ok.

Top view of above map… still missing trapezoid stand-ins:

Closer view of one area:

Still lots of work to do but I’m just trying to get to the point that I can confirm that these levels are too big or not and then start working on mob steering/pathfinding.

18 Likes

Would you use your own solution for pathfinding or use JME3-AI?
Since the latter is working quite well from my experience, you’d just have to generate a NavMesh from your level, I’m not sure how difficult that is.

I’m going to use my own solution. In my opinion there is no reason to generate a navmesh for the whole level as all of the parts are the same. The ‘portals’ between parts can act as waypoints and there will be general avoidance steering beyond that.

How about some vertical love, Paul? Would make the level a bit more interesting.

One thing at a time, man… one thing at a time.