cancel
Showing results for 
Search instead for 
Did you mean: 

Engine for research

CelisM
Explorer
What's up folks!


I'm a PhD student researching human perception of light and colours (yes I'm aware of the research call 🙂 ). I'm looking to investigate the perception of these aspects when viewed with an HMD (more specifically the Rift CV1). I have some experience with rendering, however I have no experience with game/VR engines. I'd like to use an engine that is capable of rendering as realistic as possible (HDR, PBR, spectral) but it seems to me this is simply too slow to use in VR. So my question is threefold:

1) Which engine yields the most realistic images? Hardware is not really an issue here (university fuuunds). 

2) Most likely the results of the engine from Q1 won't cut it, so I'm thinking of rendering photorealistic spherical renders and viewing them with a Rift (no parallax I know). Ideally, I could walk around in a scene with the engine from Q1 and, with a press of a button, render such a sphere (with an external renderer such as Octane) and view it when ready (hopefully this is in the order of seconds). Is this AT ALL possible and if so, which engine would be best?

3) I'd also like to be able to let matlab change parameters in the engine while running (such as polygon count, tone mapping, maybe load another spherical render, ...). Again, is this at all possible and if so, which engine would you people suggest?



Thanks for taking your time to read this and thanks in advance for the feedback/ideas!
Michiel
4 REPLIES 4

zboson
Superstar
This is a good question. Your work sounds very interesting. Do you mind if I ask which University. What kind of PhD degree exactly will you be getting? Visualization? I work with several people with PhDs in Visualization.

1.)  This answer is a question of effort. Let's consider Unity 5 and Unreal 4. Out of the box Unreal produces more realistic looking images than Unity.  But Unity is getting better quick. Check out this real-time video from Unity
https://www.youtube.com/watch?v=GXI0l3yqBrA

I'm sure you can tweak Unity to be as realistic as Unreal if you are willing to spend the time. Probably in a year or two Unity will be a lot more realistic by default.  Unity seems to have the most momentum in funding. 

Also my friend said that at SIGGRAPH 2016 that several papers and talks involved Unity and he heard none using Unreal. Unity is apparently more popular with researchers. I am a researcher using Unity. Unity is incredibly easy to use and get results with. My colleague recently implemented a kind of ray-tracer in Unity using shades. With shades using HLSL you have as much power as you want. 

You can also make a plugin (DLL) for Unity to use native compiled code. I do that in my project to read simulations data from a commercial fire and explosion simulator my work has created. With a DLL you can optimize even further. 

2.) If you want physical based rendering which solves the rendering equation I would write it yourself. That would be an interesting project.

I would like to extend this to use a HMD with head-tracking and maybe position tracking.  The Oculus SDK probably shows ways to do this. With Vive look into OpenVR.

Let me know how your project goes. I am very curious to see the results.

cybereality
Grand Champion
Unity and Unreal are the two engines with native official Oculus support. Though you could technically use other engines (or write your own) the cost in effort is probably not worth it unless you are a huge AAA company. Personally, I like Unity a lot due to it's ease of use. However, if you are set on getting the best graphics possible out-the-box, then you should probably look at Unreal. 

zboson
Superstar
Another engine which I find highly interesting is Unigine
https://en.wikipedia.org/wiki/Unigine

I have not used this yest but the visual quality is about the best I have seen. It's more for serious games and industry and has a lot of support for VR including caves which are more common in industry (but hopefully HMDs start to replace caves which is what i am trying to do). It claims that it supports the Rift.

CelisM
Explorer
Hi guys, thanks for the advice and sorry for the late reply. To answer your question: I'm affiliated with the KU Leuven (university Leuven, Belgium). My research is quite fundamental; it revolves around colour perception. This is useful for applications where correct colour representation is crucial such as retail and previewing colours during the design stage. We already know that correct colour reproduction is impossible most of the time (due to limited dynamic range and colour gamut) but maybe all factors relate to each other in such a way that our perception (or at least certain aspects of it) remains unchanged.

How will we go about this, you ask? By building extremely simple scenes (we begin with just a coloured patch illuminated by an incandescent behind a diffuser), digitally replicating them and asking lots of test subjects about the colour they perceive. Gradually, we increase the complexity of the scene (patch roughnesses, geometries, more complex light sources, ...), see how colour perception alters and whether proven perception models still fit while applying the limitations of current HMD technology (less chromatic adaptation due to reduced FOV? lightness/brightness perception with limited dynamic range? ...).

Back on topic: yeah I already figured Unity and Unreal would be suggested. As you said it is a mattter of effort, not sure yet what I'm going to pick. I can however assure you I'm not going to build a renderer myself :D. I lack the programming background for that. Right now I'm looking into luxrender, though Octane is GPU accelerated. I'm not sure whether the latter is really physically based though... Anybody ever heard from BlenderVR? 

Thanks again for the advice so far!