(May 2023) Monthly WIP Screenshot Thread

Clean separation between game mechanics and graphics …



Each screenshot was captured from a different version of the Fuze Creek Game:

  1. FCConsole, which renders the game using “ASCII graphics” (very retro!)
  2. FC2D, using top-down 2-D graphics
  3. FC3D, which renders the game in 3-D with perspective, shading, animated clouds, reflective water, animated ripples, and fog

Note: all 3 games are in the exact same state.

Isolating game mechanics from graphics (i.e., the scene graph) has many advantages:

  1. Mechanics and graphics can be debugged independently.
  2. It simplifies saving/restoring game state at runtime.
  3. State updates can be asynchronous: they need not take place on the render thread.
  4. It simplifies implementing multiple views, such as for a mini map or radar display.
  5. It simplifies conversion to a client-server and/or multi-player game.
  6. It simplifies porting games between engines.
14 Likes

The code came from JhonKkk and I modified it to better suit my project

9 Likes

This is very cool.
Care to share some code?

Would love to add it into my Scene Editor.

Glad to make you think this is cool,The code is currently integrated in the project, I need to do some sorting and eventually I will make a simple demo and release it

4 Likes

Not a screen shot exactly (or a lot of them depending on how you look at it)… but I finally did something other than a live stream.

Here is a video of a randomly generated dungeon walkthrough using the current dungeon generator prototype code.

15 Likes

You can now get the code here

1 Like

Working on the rail system of Ialon :grin:

13 Likes

SSR implemented into my scene editor:

14 Likes

Hey, is it possible to get/use your Editor? I am currently searching for stuff I can use to build things and I saw there are a lot of editors in this forum. The only one I found is JMonkey Builder but it seems to be outdated.

1 Like

Hi there, thanks for the interest.
Currently my editor is not yet available but might be in the near future.
There is quite a few things I want to implement before I want to open it to the public.

Nothing new, but I managed to fix some concurrency issues, it’s literally very hard to keep track of a lot of threads and a lot of mutexes :neutral_face:.

For those who are looking for good old days, please bear in mind that this is an old version of jmb, always keep a backup of your work, I might be able to reach a stable version soon.

The editor is currently buildable by java-8 only; because of using a lot of old jfx-based libraries.

7 Likes

Note: without knowing more… that’s a “code smell”. “A lot of threads” is scary enough… but “a lot of mutexes” is a sign of a completely incorrect architecture.

4 Likes

Totally true, I am trying to get rid of them as I can, the problem is the original architecture was based on concurrency by blocking threads which creates a lot of busy loops.

EDIT:
Sure, it would have been better if callbacks are enqueued on the target thread.

Small scene put together with some Kenney assets which will come build into the editor to use.

11 Likes

Did you write your own SSR or are you using something from the community?

Looks nice.

The one from the community.
I am using the code here: GitHub - neph1/SsrFilter: Stand alone SSR filter for jMonkeyEngine3

4 Likes

The only thing I am not sure about @pspeed, is that I don’t know how to specific that a specific spatial should not get Screen space reflections.
Do you by any change know?

I don’t know anything about this SSR filter. I was just shopping around for my own future use of such a thing.

Do you mean that the reflection will also show on the grass? Or do you mean that you’d like some things not to show up in the reflection?

If the former then that’s concerning… but the latter, I’d expect to be limited because “screen space”.

But again, I know nothing about this particular implementation.

Yes, it reflex on everything.
If I place a cube everything will reflect on the cube as well.

You may want to submit an issue on the plugin GitHub page, maybe the author could help. :slightly_smiling_face:

1 Like