(October 2023) Monthly WIP Screenshot Thread

Here’s a screenshot of CompareLoaders, my test app for MonkeyWrench. It allows easy visual comparisons between a model loaded with MonkeyWrench (on the left) and the same model loaded with jme3-plugins (on the right).

Discuss MonkeyWrench in its Forum topic.

The model shown is “CesiumMan” from Khronos’s glTF-Sample-Models project. AGI has licensed the model under a Creative Commons Attribution 4.0 International License.

16 Likes

Great progress!
Why don’t they look the same if it’s the same model?

1 Like

Why don’t they look the same if it’s the same model?

I this case, I think it’s just perspective, emphasized by shadows. Perhaps I should switch to orthographic projection.

I notice that the texture of the model of the left is smoother. Looking at the faces gives me that impression

2 Likes

I’m code complete on a game that completely doesn’t relate to a 3D engine. I re-created Pyramid 2000 from TRS-80 out of the 80’s.

It is a text adventure, I use ToneGodGUI for the Gui library. It works out great and I have no issues with this simple layout.

Next things I’m going to do is I’ve been using Jackson for Json files but now JME supports JSON inside the engine. I’m going to strip out jackson and convert it over to JME

I’m using latest JME engine from Github, with my changes from multiple window support.

14 Likes

Not really a screenshot, but today i needed a rts style camera so i tried to make a video tutorial out of it. It is my first video/tutorial ever created. I have to say it is super hard to speak and code at the same time, even if the code does not require much problem solving.

9 Likes

Amen to that! I do it every week in the live stream and it still trips me up.

3 Likes

Here’s a short video showing a new enemy I’m working on implementing into my game “The Afflicted Forests”. This video also shows a snail-trail like feature that I plan to attach to to a few different enemies to spread the affliction around the world, since that’s a major theme of my game.

I was able to speed up my typical implementation process thanks to the Wes animation library, and I got this guy into my game much faster than I typically would have in the past.

Now I just need to give the guy hit-boxes using attachment nodes (that way the hit-boxes will follow animations), and then pair each attack animation with its own combat ability. The default behavior for NPCs in combat is to cycle through all of their abilities (casting the abilities with highest priority first, as long as targets are within range and the ability is not on cooldown). So as long as each new enemy I add has a few simple abilities, they will operate somewhat dynamically by default. And in the future, i can come back to add more complex combat behavior for each specific enemy, that way they will continue to evolve and I can reuse many of the same enemies at higher levels without them feeling quite as stale.

13 Likes

I’m making a skill for my game character, a mage magic skill.

18 Likes

transparency

First step toward a better translucency filter.
Got the basics working. Still a workaround in place.

23 Likes

Two new characters arriving to the game. From a store of course :wink:. I know how to 3D model but… who has time for that…

Added support for the gamepad below. Will check SDL_GameControllerDB to see if I understand it and make use of it. That way I don’t have to buy and test with every controller in existence. :joy:

9 Likes

Take a look at this thread if you haven’t yet:

3 Likes

OFFTOPIC, I’m sorry, but I don’t want to open another thread…

I look currently into SDL2GDX and that handles controller just like I want it. No matter if it is XBoxOne XBox360, Nintendo Switch or Playstation all have the buttons in the same order which is very nice and makes life a piece of cake.

I currently try to figure out how I can integrate them nicely into my jMonkeEngine game, I might just ignore what jMonkeyEngine is doing and do it myself, but that would mean no Lemur for me.

There is a way to replace the gdx controller stuff with this Sdl2Gdx but have to figure out how I could do that.

Something like this due the Sdl2Gdx README

project(":desktop") {
    dependencies {
        implementation "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
        implementation "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-desktop"
-       implementation "com.badlogicgames.gdx:gdx-controllers-desktop:$gdxVersion"
-       implementation "com.badlogicgames.gdx:gdx-controllers-platform:$gdxVersion:natives-desktop"
    }
}

project(":core") {
    dependencies {
        implementation "com.badlogicgames.gdx:gdx:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-box2d:$gdxVersion"
        implementation "com.badlogicgames.gdx:gdx-controllers:$gdxVersion"
+       implementation "uk.co.electronstudio.sdl2gdx:sdl2gdx:1.0.4"
    }
}

will see, but I think I’m mainly on my own here anyway. If I manage to get that into jMonkeyEngine, I let you know, if I just manage to use it and ignore the InputManager of jMonkeyEngine then there is not much value I can provide and I wont post an update.

1 Like

It should be possible to wire this up. Maybe with a little effort.

InputMapper is just registering a RawInputListener with InputManager. So if we can figure out how to somehow deliver events to that listener then it would be fine.

…but in a separate topic it might be nice to discuss how to improve JME to make hooking these things in a bit easier in the future. Like manager InputManager with an app state the users can replace or something.

Ahem… this sounds like pretty much like what I already did

You can ignore/cut the navigation part (which require a modified Lemur) and take a look at the rest.

2 Likes

In prep for the in-game Halloween Party (Friday 27-Oct-2023 9PM GMT-4), I’m making a series of videos about the state of the game. Up first: world scale.

12 Likes

Hi pspeed, after I add multiple different global illumination techniques in the future (LightProbeVolume (but this technique is not suitable for sandbox dynamic worlds), Light Propagation Volumes (suitable for open sandbox games), SDF DDGI (suitable for various game types), and some other GI techniques like VxGI, etc), would you be interested in using some of the global illumination techniques in Mythruna? And give me feedback on their performance so that I can better optimize them.
I noticed Minecraft has a few GI techniques, so I thought it would be good to do a comparison…

1 Like

I’m focused on features right now. It will be 2+ years before I start to retouch visuals.

Mythruna uses none of JME’s stock shaders as it has its own shaders and uses baked lighting. So it’s a pretty major overhaul to do what you ask. I’m interested… but not until I actually have a game.

3 Likes

I’m working on an open-world sandbox-y virtual world platform and would like to be addressing graphics sooner rather than later. I should be in a place where I can start those experiments quite soon, and I’m targeting PBR and other physically realistic techniques.

3 Likes

I look forward to your work, and look forward to seeing the actual performance and visual improvements from GI technologies in your game. But before that, I have some porting work to complete. :wink:

4 Likes