(August 2018) Monthly WIP & Screenshot Thread

So after something like 3 months I’m finally back in the game, designing some dynamic reticles for weapons.

These are all one mesh and use the point sprites I was having problems with in the other thread.

There are a few different designs to indicate the the weapon type and dispersion, witheach ever so slightly scaled depending on the weapon size.

The reloading animation is basically just a color change to black and interpolation to orange, then switching to blue once reloaded + scaling up the sprite.

The next step would be adding a zoom scope.


And the final result from that ROV I posted about a few weeks back. It ended up being quite a decent success.

Full Imgur Album with Info

Some crappy underwater images, more are in the album itself. :stuck_out_tongue:

12 Likes

Damn, @MoffKalast! The first gif is sexy ( ͡° ͜ʖ ͡°)

Is it possible to destroy space stations?

1 Like

Yep. And then you can take the sections and make a player controlled station. Or stick them onto your ship for the lulz. Or you can also just have them surrender and take over.

They also split into pieces if you destroy the connecting modules, same as ships.


Edit: And the scope.

I’ve set it up to work by reducing camera fov to about 10 degrees, seems like the way to go.

11 Likes

Not strictly related to jME but still relative to computer graphics, I made a Unity shader for fur simulation:

It consist only in a vertex and a fragment shader, but can be easily extended with basic tessellation giving good results. Unity’s material engine is much more abstract than jME’s one and I still prefer the latter for now :slight_smile:

5 Likes

I can finally contribute something to this thread again :smiley:
My First attempt at proper “semi projective static baked decals” .
Pros: Just 16 Tris to render, easy to batch. Cons: If some geometry behind it should not get the decal (like light being occluded), this is almost not doable here (but with real projective texturing is).

Just one major annoyance: The popping (you see the orange projector box moving unsmooth, that’s because of my throtteling to only update the decal every 5 frames) when new triangles appear. This is probably due to some of my filtering/skipping

And an annoying bug: In the end you see small holes. I’ve been messing around with them for 3 days now, I fixed the other side and now those are reappearing again :smiley: It’s related to the fact that cutting a triangle leads to empty space to be filled and my code sometimes takes the wrong vertex and hence does not fill it properly.

8 Likes

…when you’re the “family IT guy” and your sister needs a crappy website for her restaurant so you don’t have time do useful things :face_with_symbols_over_mouth:, like make obscure shaders or not finish games :

11 Likes

To me it looks like the issues is related to the fact that cutting a triangle leads to empty space to be filled and your code sometimes takes the wrong vertex and hence does not fill it properly. Exploring that may lead to answers.

lol

1 Like

when you’re the “family IT guy” and your sister needs a crappy website

Wow suddenly I feel lucky I just have to explain how to print and that no, I can’t undo the changes hotmail are making to their name/layout.

Guys, we managed to break http://monthly.jmonkeyengine.org. It’s been that way for 3 months and nobody noticed :stuck_out_tongue: Apparently for last 3 months the screenshot thread has been named (month 2018) Monthly WIP & Screenshots Thread, while the monthly gallery viewer picks up threads with “Screenshot” (without ‘s’). I fixed the names of the forum threads now, but this should either be fixed to pick up anything in the Monthly WIP discourse category (if anyone is willing to fix it) or we can just keep going without the ‘s’.

3 Likes

Oh :\ thanks for noticing it

Nicely done. I keep forgetting that that’s a thing honestly. Maybe I’m just blind or something but is there a link to the image gallery somewhere visible? As in the title bar or navigation bar on the side there?

Always wanted to make and play a slot car game that’s been in my head for ever:

Started very simple with “track profile” mesh, that is extruded along, in this case 4, splines. It uses dyn4j, 3D Physics will be overkill, with a custom fictitious tire model. Many future plans.

12 Likes

I’ve implemented the detached threaded mode for bullet.

In this video I run the same TestBrickTower example modified to have 300 brick layers instead of 30, with SEQUENTIAL (0:00), PARALLEL(0:35) and DETACHED(1:06) mode.

Contrary to PARALLEL that runs the physics update in parallel with the rendering but waits for it to be over, the DETACHED mode is completely unbounded.

This means that you can simulate as many physics objects as you want, and they will never hog down you framerate (assuming that you have a multicore cpu).

This means also that you have to be extra carefull to run bullet code only from within the physics thread.

Next step is parallel solvers.

23 Likes

whoa, that makes a massive difference!

That’s awesome!

Note that the SiO2 Zay-ES+Bullet integration is already running decoupled. Physics is updated on the simulation thread which can run as often (or as little) as you like.

Anyway, I’m not sure I understand how this lets you have unlimited objects unless you mean that the physics thread can slog along at 1 FPS while the visuals are still rendering at 60 FPS. At some point, you can only handle so many objects.

The trick with slower physics threads is then interpolation.

How does the fully decoupled version deal with the controls updating the spatials?

1 Like

Initial implementation of parallel solvers (that have been re-added in the bullet master branch), for this video i had to disable tick and collision listeners, since they need some rework to be called in a thread safe manner without slowing down the simulation. I increased the number of brick levels from 300 to 750. (FPS limited to 60 to have a better cpu usage graph)

It runs pretty much the same as detached with single thread solver for my cpu, it might work better for cpus with more cores or maybe for different scenes, i’ll test it further, but for now it doesn’t look worth the effort.



@pspeed

Anyway, I’m not sure I understand how this lets you have unlimited objects unless you mean that the physics thread can slog along at 1 FPS while the visuals are still rendering at 60 FPS. At some point, you can only handle so many objects.

Of course there is no thing as unlimited objects simulation… the detached mode will allow to keep a constant (rendering) framerate while the physics update run as fast as it can, the player won’t notice if a rigidbody skips some updates, as long as it stops at the expected position and doesn’t mess with his framerate and inputs.

Bullet can also compensate slowdowns if you set a proper value for maxSubSteps.

How does the fully decoupled version deal with the controls updating the spatials?

Everything that updates the scenegraph must be called from the update loop, everything that updates the physics space must be called from the physics loop. This is already true for the parallel mode, but you can somehow get away by not doing the latter with only some jerkiness/weird behaviour as result.

2 Likes

Wow that’s amazing man.

So wait, you can only add bodies to physics space in prePhysicsTick? I think we may need an enqueue for that as well then :stuck_out_tongue:

Well I don’t really know anything about the internals of this, but the word parallel solver would imply that it may be more useful for simulating multiple collision events that aren’t in contact with each other. Like two of these towers 50 units apart (or at least far enough that they fall into another major area of the quadtree). You can’t really put two things in parallel if they interact with each other can you?

Deterministic physics ftw. Every brick goes the same place every time.Maths in motion.