Shadows Spider 2 - GPL rendering engine released

Hi. My C++ GLFW GPL rendering engine has reached a state where it has painting, PBR, SSAO, reflections, transparency, gizmos, gui and more. A video demo is avaliable here and the source is at github. Any feedback would be appreciated. My next big tasks are to improve speed and add rigging and animation.

2/6/17 - Animation / skinning

12/16/16

https://github.com/bergjones/Shadows_Spider

Nice work so far. Do you have an idea about how many hours, months and so on you have spent on this to get it this far?

Probably about a year and a half to get here, maybe 600 hours. A lot of my work didnt make it into this release, and I had to abandon some areas. Still, the work itself is its own reward. I would love to have rigging and animation in the next release.

That is great. I am not a coder. But this is something I have been real interested in lately.

When it comes to rigging and animation are there libraries you can use? Or do you have to code all of that from scratch more or less?

Maybe we can continue this privately I have a zillion questions about the process.

Yes, there’s probably some libs. Feel free to PM me.

Hmm. Is this a RT render engine or production? If production I think the addition of alembic (if not present) is more important than rigging.

Real time. I’m now working on adding Assimp support which will enable animation.

Looked at the website. Interesting. So, if you can import animation, skinning and bones does that mean there is code there to then develop rigging and skinning tools?

ehm why invest in alembic or animation, if you keep it pure a render engine you could use blender for the other part editing / animating etc, would be nice to have additional render engines in blender (eventually alembic gets to blender, and animation allready is in it plus a whole lot more).

Believe it or not, not everyone codes on the supposition that their product will be used alongside Blender. This definitely seems like a learning exercise, and adding cache and rig/animation support would be a big bullet point to add to the résumé.

Multiple object animation / skinning with Assimp is finally here (although not profiled and optimized). Why should you care about this? Well, I show an easy way to go about adding this to any graphics programmer. I wanted to get it out soon, so it still has some bugs like errors in the shadow map for the “elongated cube” and an issue of “tightening” around the joints. Bloom and SSR has also been disabled for now as I work on implementing better options.

https://github.com/bergjones/Shadows_Spider

SSR is now up and running. On to improving the UI and animation blending.


Great work!!

Added third person movement with a controller and its left and right sticks. Turns out that it was harder than it looked, to get the object to move and point the right way.My next move is replacing the teapot with an animated character that blends between a walk, a run, and an idle depending on controller movement.

Added a default water shader. Turns out it was harder than I thought to get everything to work together with the transparency and the SSR but I’m happy with the solution. It can still be greatly improved on and doesn’t refract at all.

I still think there is come confusion going on here. You’re calling this a render engine but it’s looking more like a game engine. Is this a real-time Ray Tracer (thus the reason for calling it a “render engine”) or OpenGL/DirectX/game engine based renderer?

A real time renderer does not make it a “game engine”. An OpenGL or DirectX renderer is every bit as much of a rendering engine as a path tracer is.

This is what I’ve been wondering as well. I’m not entirely sure what I’m looking at, but I like what I’m looking at. I’ve been curious about the possibility of using Armory (when it’s more robust and stable) as a render engine for motion graphics and such, as an alternative to, say, Element 3D. Curious whether something like Armory, or Shadows Spider 2, could be used alternatively as a real-time or near-real-time renderer for non-photorealistic short films, motion graphics, etc.

When words like “animation” and “skinning” appear within the context of a discussion about real-time rendering, it has the effect of sounding like we’re talking about a game engine ‘workflow’ - importing assets, characters, rigs, etc., and preparing them to be controlled in real-time. Is that not the case?

A Real time renderer is anything that displays graphics in real time, be it a game engine or something like Source Filmmaker or anything inbetween. This requires characters and assets to be imported and moved around. I take it one day at a time. There’s a lot more to work on.

Exiting to watch this. Keep us informed.