Skip to content

Monthly Update: 2018.02.28

George Singer edited this page Feb 28, 2018 · 6 revisions

If you’re new to this list, or need a refresher of what Simula is about, see the links at the bottom of this email for an explanation of the idea. Simula is currently looking for feedback, contributors, and alpha testers. Email me back if you’re interested.

Updating our rendering engine

Simula’s primary engineering task (this month and the next) is to use the Godot game engine to move from our old rendering system (v0.0.0) to our new rendering system (v0.1.0). Accomplishing this will allow us to simultaneously fix:

  • Depth rendering issues
    • Window surfaces will no longer incorrectly render in front of controllers and controller rays.
  • Texturing issues
    • Vive controllers will be appropriately textured.
    • Weird, inexplicable artifacts should go away.
  • Performance issues
    • Simula will be able to escape its 45fps cap.
    • Compositor “stutteriness” will be fixable (although possibly this is caused by OpenVR and out of our short-term control).

It will also give us the ability, in the medium term, to render complex assets and environments from the Godot community, as well as to implement better UX features as the compositor matures.

The trade-off to all of these benefits is that it might take an excruciatingly long amount of time, and require project contributors to take on a cockroach mentality (surviving all obstacles and refusing to die).

Abandoning 0.0.0; focusing on 0.1.0.

I had originally hoped that Simula version 0.0.0 would allow us to get to a point where someone could plausibly use it for more than 1hr/day – to get real work done in VR. Unfortunately, due to the problems outlined above (especially compositor stutteriness), this was just not feasible. Our best bet at this point is to focus on fixing our medium-term problems with rendering, and the rest will more easily fall into place (credit to @Zac Slade for calling this correctly many weeks ago).

Progress this month

  1. Simula Rendering Engine Overhaul (@David Kraeutmann). Simula’s rendering engine overhaul has made progress in the form of SimulaVR/godot-haskell (Haskell bindings for GdNative – still a ways to go but an autogeneration solution is being worked on) and SimulaVR/godot-haskell-plugin (a sample Godot plugin for Haskell that demonstrates how to use the aforementioned bindings).
  2. Simula.nix (@Ludvig Böklin). Simula has also received a build system overhall leveraging more of the power of nix.

Goals for March

This month I’m keeping all of our goals contained in our GitHub Projects page. The most important projects are Godot Rendering and Simula.nix.

Resources & Explanation of the Idea