Resonite-Issues icon indicating copy to clipboard operation
Resonite-Issues copied to clipboard

New Rendering Engine (Sauce)

Open ProbablePrime opened this issue 1 year ago • 10 comments

Is your feature request related to a problem? Please describe.

The Resonite development team is slowed down a lot by our dependence on Unity which has also forced other decisions across Resonite.

Some examples:

  • Custom shaders are difficult to support with Unity with how Resonite presently uses it
  • The classic deferrend renderer is deprecated, and upgrades to other versions of Unity have a tendency to break various things around it in VR
  • Certain problems are extremely hard to diagnose, and give we have no source code we're unable to really pursue
  • The .NET version for Unity isn't really a .NET version at all - it's using a very old version of Mono that's roughly correlated with .NET 4.7
    • It's also a pretty slow implementation, further contributing to Resonite's CPU bound nature
  • Unity's deferred renderer is not as flexible as we'd like in order to support complex shaders

Describe the solution you'd like

To resolve most of these problems we'd like to swap over to a brand new renderer.

The renderer we are targeting right now is has a code name of "Sauce" and is a WIP project by @Geenz and their team at Void Anchor.

Presently Sauce is being developed in collaboration with other community members at Void Anchor to achieve the following:

  • Custom shaders (#632)
  • A clustered forward renderer able to support a similar amount of lights to the current deferred renderer
  • .NET 8 compatibility
    • This may happen sooner with some work on the existing Unity client
  • Better compatibility with multi-process architecture plans (#706)
    • Sauce is running off of a modified version of bevy's rendering engine which is already amenable to this.
    • This may also happen sooner under Unity depending on development priorities and Sauce's progress
  • Mesh shader emulation with compute shaders
  • Compute shaders more generally
  • Enabling (but not shipping with) standalone support (#5)

Describe alternatives you've considered

N/A

Additional Context

I'm making this item, to provide a landing site for people who are confused by what Sauce is etc. There may be another issue but I couldn't find it.

@Geenz @Frooxius Please edit the issue as appropriate. I just wanted to throw something up so we dont get confused users.

Requesters

N/A

ProbablePrime avatar Feb 25 '24 09:02 ProbablePrime