I made a fun scene using my editor - There are some zombies in the world : )
There are some interesting things about the “Minie” physics, especially the DynamicAnimControl, it’s a great physics engine.
Sometimes I think maybe making an editor is more interesting than making a game.
Since I haven’t decided what kind of game I want to make yet, I’ll probably start by using the
editor to make some fun game scenes and maybe find some inspiration。
This video is a bit long, so I sped it up so you don’t get bored.
From my testing, none of the AI chatbots seem to produce usable results when it comes to shaders, even when I was asking about shaders in bigger engines like Unity or Godot. They get the surface level stuff right, but details fall apart almost immediately.
That’s right, I didn’t get any useful results from the AI tools. Sad but true. Unfortunately, most tutorials in Unity use graphics editors that make life much easier for programmers, but hide much of the shader code, so I had to do a lot of research to put the puzzle pieces together and convert the functions to jMonkeyEngine.
Hi @FoxCC, I watched your video and I noticed that when you change the position/rotation of the character’s bones, there is an IK mechanism that also affects the related bones. So if you change the position of a hand, the position of the arm changes as well. Did you write the algorithm for IK in combination with an ArmatureMask or do you use a DynamicAnimControl from Minie? Great editor by the way!
I didn’t write my own IK algorithm, I just used DynamicAnimControl directly, but I added a DacLink (implemented with New6Dof), which is mainly used to constrain the position and elasticity of the bones.
Actually I didn’t use any special technology, I just integrated all the great things that are already in JME, like: lemur, zay-es, minie, skycontrol…etc. They are all great thing.
(In fact under the hood Tamarin does just that, but it has to have control over exactly how and when)
This might be used for things like
Debug shapes (e.g. a physics engine might draw debug shapes to show where the physics objects truly are. Or the hand joints and attachment points might be rendered on the hand, as in this screenshot) that show without being occluded by the main scene.
A “seeing through walls radar” effect; where some outline of an object might be placed in the 3D world where the true object is and that gets overlaid on the main view.
A pause menu UI that should be rendered even if its technically occluded by the main scene
This may seem like a rarely used and fairly technical thing but I’m particularly happy because JME3-VR was never able to support layered viewports and people were unhappy about it
This month I’ve been working on a few simple assets to make the game world feel more alive and full.
Modeled switches and buttons, little rats roaming around and food items from a vending machine (random fake brands, with dubious nutritional properties that only increase 5% health).
This looks awesome so far.
Did you create your own FPS controller?
Also, what post processing filter are you using to get this look.
It looks very good and old school.
Thanks! Glad you like it
I made my own thick layer on top of JME and I use the akka-actors framework to run all the game logic (incl. physics) in a separate thread(s). I described my process here:
This game is based on that framework.
Specifically for the movement (which I rewrote since that old post) I took a different direction than the common player controller: Instead of a capsule I have a “flying cylinder” and I ray test downwards to measure the distance to the floor, if too high I calculate the acceleration and move it down, otherwise I move it up (steps). This basically overrides all the bullet physics for the player movement with my custom movement.
It’s surely not physically accurate but it feels so much tighter to me and I avoid some problems like unexpected jumps on steps and sticky walls (but I miss riding platforms which I plan to implement).
I used the original quake source as reference so I can strafe jump and all that makes it feel “proper”.
After some experimentation I ended up using two simple filters.
First PosterizationFilter (from jme3-effects) with 32 colors and I keep texture filtering on.
And second I implemented the most basic chromatic aberration filter, but I keep it very subtle (it’s hard to notice, look at the chess tiles in the last part of the video).
You can download the game if you want to try, I will update it with these changes no later than this weekend.