Search Unity

Jove 2.0: DX11 Rendering System (Alpha Release)

Discussion in 'Assets and Asset Store' started by Aieth, Aug 17, 2014.

  1. JecoGames

    JecoGames

    Joined:
    Jan 10, 2013
    Posts:
    135
    Oh right,I'm not sure about self shadowing either:b
     
  2. Play_Edu

    Play_Edu

    Joined:
    Jun 10, 2012
    Posts:
    722
    awesome stuff. When you
    Release
    this assets?
     
  3. FogGobbler

    FogGobbler

    Joined:
    Mar 25, 2009
    Posts:
    147
  4. FogGobbler

    FogGobbler

    Joined:
    Mar 25, 2009
    Posts:
    147
    @ bac9-flcl : Have you had time to look at the little PBR texture packing-utility? Would be a great time saver :) .
     
  5. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    I'll consider that technique later on when it comes to particles :) We're still pretty far away from that decision though, lots of things to be done!
    Thanks!
    Jove cannot render self shadowing particles at the moment. Particles and other transparent objects can shade opaque objects though, and particles can be lit.
    I have a whole folder called "GI_pics_for_Steve" :p I hope to make you a customer ;)
    Apparently it is released now as FogGobbler said :)
    https://www.assetstore.unity3d.com/en/#!/content/12531
     
  6. 8Infinite8

    8Infinite8

    Joined:
    Jul 27, 2013
    Posts:
    112
  7. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    Thanks for the links, I've seen them all before though :) SHAO needs a lot of precomputed data, but it is one of the techniques I've been eye'ing for possible use when I get to human shading later on.
     
    8Infinite8 likes this.
  8. 8Infinite8

    8Infinite8

    Joined:
    Jul 27, 2013
    Posts:
    112
    Great! Do you have a road map for your SSRR implementation? My main area of interest is in VR and the Oculus Rift DK2 use. Most SSRR techniques I've seen so far have been very slow when rendering in stereo. Anything for VR now has to hit the standard of 75hz which is a huge benchmark to meet.

    UE4's newest release with the SSRR fix can just about manage it in stereo but it's still low on the DK2. 30fps or so on a GTX680.
     
    Last edited: Aug 26, 2014
  9. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    8infinite8 - I share your interest in VR although i'm stuck with the DK1 atm, i can tell you Jove works with the Oculus Unity SDK so long as it is built (As you probably know, Oculus are intending to include a directx11 fix for Unity use in the next SDK update), and it enjoys significant speed updates from sharing shadows (as far as i can tell) and turning any Unity displays off during play. It is still quite slow however and i'm sure there are further optimisations that could be made to improve performance. The example scene with Jove would hit your specified frame rate no problem but anything heavy (I guess my working scene is irresponsibly overloaded with mesh complexity, shader use and texture sizes to be honest) is not so up to it - I dont see that as a final conclusion however, maybe some multi-camera considered optimisations are possible which is what VR support in Jove could amount to.

    You folk will have to forgive my ignorance here as I only vaguely know what i'm talking about but anyone currently testing the alpha might be able to comment on this pm i just sent Aieth that i should have probably posted in here anyways

    I added something about a Skyshop-style utility to convert .hdr panoramas into suitable cubemaps too.

    I can give interested partys instructions on how to use Vray to bake lightmaps

    Does anyone using Jove have suggestions, opposition to anything i suggested? None of it's really particularly urgent other than the initial sugestion for the shader as, at least for now, it will add support for good looking static GI, AO and lighting, and the primitive light probe suggestion was for a quick and dirty integration of dynamic objects with it

    What i'm intending to show off is Jove running some actual 'gameplay' as such, as well as being a possible go-to for straightforward and very pretty archviz - VR support going hand in hand with that (Assuming I can get VR working a lot more quickly and to my satisfaction I could provide interested partys with demos of this)
     
  10. lazygunn

    lazygunn

    Joined:
    Jul 24, 2011
    Posts:
    2,749
    Oop yes, another nice feature would be to only bake static objects in the reflection probes

    At the moment I have to group all the dynamic objects inside max if I want to switch all the dynamic objects off quickly for probe baking
     
  11. Jakob-R

    Jakob-R

    Joined:
    Jul 15, 2014
    Posts:
    42
  12. blueivy

    blueivy

    Joined:
    Mar 4, 2013
    Posts:
    632
    @Jakob R. Ugh I can't wait to get started with jove. The visuals it produces are jaw dropping!
     
  13. Cyrien5100

    Cyrien5100

    Joined:
    Oct 17, 2012
    Posts:
    145
    Really looks like a very good UE4 :) (or CGI)
    Just add some GI (large shadows are a little flat) and it's perfect !
    Do you think you can implement Far Field AO or Distance Field AO?
     
  14. 8Infinite8

    8Infinite8

    Joined:
    Jul 27, 2013
    Posts:
    112
    Jakob R. - Looks like great training material! Very cool. Will certainly purchase a long with Jove 2.0

    The shadows look great! Unity take note!!
     
  15. Steve-Tack

    Steve-Tack

    Joined:
    Mar 12, 2013
    Posts:
    1,240
    On that subject, the upcoming Materializer asset looks like it's going to support the texture packed formats for the various Unity PBR solutions. From watching the video, Materializer looks like sort of a dDo type of thing, but tightly integrated into Unity.
     
  16. Steve-Tack

    Steve-Tack

    Joined:
    Mar 12, 2013
    Posts:
    1,240
    And I guess Sony's Morpheus is designed for 90Hz.

    I went to Unite in Seattle, and one of the VR sessions was more of a general talk by some VR veterans. They're saying that going with more simple and/or abstract graphics may be more appropriate for VR until rendering hardware and optimization techniques catch up a bit more. Hitting high frame rates is far more important in VR. Of course it's going to get even more challenging as the screen resolutions increase. Going with a ton of graphical fidelity in something like Jove while maintaining 75 fps could be a particularly tough challenge.

    The session is online now. It's "The Reality of Authoring in the Virtual Frontier":
    http://unity3d.com/unite/archive/2014

    On a side note, I'm sure the PBR and GI sessions are of interest to anybody on this thread too.
     
  17. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    It's on the list of things to do :p I'll see if I can't work it in for the next release.
    Looking awesome, especially the second last picture. Can't wait for more :)
    Proper sky occlusion is on the horizon. I have not decided on how I want to do it yet though.

    You can take a few shortcuts but there is really no getting around it, for VR you have to render two separate images. And doing so at high frame rates, with fancy graphics, is a challenge.
     
  18. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437
    in some noname w.i.p. scene...
     
    Ghosthowl, blueivy, Uli_Okm and 3 others like this.
  19. Uli_Okm

    Uli_Okm

    Joined:
    Jul 10, 2012
    Posts:
    95
    Im loving Jove 2.0 so far, even only testing some little things.
    Someone know how can I deal with unity terrain + jove? I tried rewriting the default terrain shader with no sucess (I'm really a noob in shader things).
    Or how can i simulate unity terrain with only meshes (splats, vegetation, trees, etc)?

    Thanks, and keep the good work :)
     
  20. Steve-Tack

    Steve-Tack

    Joined:
    Mar 12, 2013
    Posts:
    1,240
    It's a natural tendency to see these beautiful screenshots and wonder what the environments would feel like in VR, so I get where people are coming from. I suppose for now, it'd be wise to avoid stereoscopic stuff with particularly fancy graphics.
     
  21. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    A terrain shader has not been made yet, so using a terrain would be a challenge ;) I'll see if I can't work in at least a basic terrain shader for the next version (literally just the basics, same things as Unity but with Jove shading).

    Yeah I totally get that. What kind of resolution are we talking about on todays VR btw? Last time I checked it was not even 720p, but I have not been keeping a close eye on it :p
     
    Uli_Okm likes this.
  22. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437
    confirm. ground is problem for now. applying jove mat to terrain give strange result. terrain can be simulated by mesh like other common object + textur. in that case need big texture + small mesh to avoid low resolution.
     
  23. Cyrien5100

    Cyrien5100

    Joined:
    Oct 17, 2012
    Posts:
    145
    Final version of Oculus Rift should be 2560 x 1440 minimum or maybe Ultra HD.
    So a very strong optimization would be necessary.
     
  24. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    It's requiring 1920x1080 rendering at locked 75 frames per second (2560x1440 at 90 frames per second for the consumer version due out late next year).
     
  25. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    OMG yes please!

    Btw these renders are actually really fantastic...I'm truly very impressed.

    Oh and lol to "Steven's GI folder" Aieth; I'm actually flattered by that!! :D

    Keep this up guys seriously...remarkable

    -Steven
     
  26. Olafson

    Olafson

    Joined:
    Aug 7, 2012
    Posts:
    255
    Tried it out today and I am impressed. The only thing holding me off from using it right now is the missing terrain shader.
    Would be nice if you could include, at least a basic diffuse Shader for the terrain and flora in the next version.

    Then I could go on implementing it in our game!
     
  27. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    Wow, yeah that is going to be hard on the hardware :p 2560x1440, and I guess 90 fps means 90fps per camera? Or is it 45 fps per camera? Either way, that's a lot of pixels to push.

    I'll provide a basic terrain shader for the next version :)
     
  28. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    It's one 2560x1440 image for both eyes (each eye receives a roughly square half) 90 times per second. Of course, you need two camera entities in the scene to do proper stereo, and I'm not sure what is performance hit from that (it depends on how much stuff can be shared between them). There is very sophisticated reprojection that adds intermediate frames based on tracking data, but it's mostly there to help you make occasional small dips in framerate unnoticeable, and it won't do miracles for a project running at 30 fps.

    So yeah, going for very minimalistic or stylized visuals is the way.
     
  29. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    By the way, @Aieth, can you tell us about performance hit differences between point and spot lights? I'm curious which are more expensive. On one hand, if I'm not mistaken, omnidirectional lights can be implemented as six spot lights packed together (although I could be wrong about that, maybe that's only the case for point light shadows), and on the other, default Jove light count limits are set lower for spot lights, suggesting that they can be heavier.
     
  30. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    Spot lights are indeed heavier than point lights. Point lights are almost free, spot lights are harder to cull. I also still have work that needs to be done on the spot light culling, hence why it is limited more heavily than point lights.
     
  31. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    @Aieth I haven't had a chance to check real closely but does Jove do light proxies... or is there a way to tag lights to have one master light that controls several others?

    Kinda how you do light instances in MAX
     
  32. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    I am not sure I understand, what do you mean by light proxies or having a master controlling others? Do you mean changing the intensity of one changes all of them?
     
  33. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    Say I have a row of lights on a wall or in a ceiling and instead of changing the values of each light, changing the values of a master light effects the rest. Not all the lights but like a set of lights that all work together, imagine how your room would work, you have a rheostat on the wall and you adjust the light intensity in the lights for that room.
     
  34. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    You can script that pretty easily, just as with standard Unity lights :) Just create a script with a "Master Light" property and "Child Light" array. Then check if master lights intensity changed -> change intensity of child lights
     
  35. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    OH BOY... now that launches us into the playmaker support arena...
     
  36. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    BTW I can script nothing easily LOL!
     
  37. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    I can help you whip up a script like that tomorrow, won't take long :)
     
  38. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    Dude I hope we meet one day I'll buy you a beer... maybe two!
     
  39. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    @Licarell, you actually don't need any scripts at all. That is standard prefabbing territory. Just make a light with settings you want, and drag the object with it from scene hierarchy view to the project view. It will be saved into a file that will propagate all changes to the copies of itself. Now duplicate the object in scene hierarchy or even drag it from the project view into other scenes, and all those objects will have the same configuration. You can also use new options above the Inspector to apply or revert any changes. For example, change light brightness to 150 from 100, hit Apply, and every prefab in the scene instantly gets the same change.

    @Aieth, that's good to hear! Another question then: are there any hidden costs associated with animating light properties, in particular light color and intensity? I assume there aren't, but asking just in case. Thinking of adding power fluctuations/outages to a level, which will involve code that will change properties of lights in a large array over time.
     
    Last edited: Aug 26, 2014
  40. Licarell

    Licarell

    Joined:
    Sep 5, 2012
    Posts:
    434
    Thanks bac9-flcl!
     
  41. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    @bac9-flcl
    No there are no hidden costs with lights :)
     
  42. Olafson

    Olafson

    Joined:
    Aug 7, 2012
    Posts:
    255
    I love you :)
     
  43. TheHenk

    TheHenk

    Joined:
    Mar 24, 2011
    Posts:
    13
    I get all these namespace erros when building for standalone with Jove. Anyone have an idea how to fix this?
    I really need to get a test build going!

    Thanks in advance!
     
  44. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    That's strange, I have made a build just yesterday and there were no such errors. UnityEditor namespace can't be used in builds and error usually indicates that stuff like custom inspectors was misplaced outside of Editor/ folders.
     
  45. TheHenk

    TheHenk

    Joined:
    Mar 24, 2011
    Posts:
    13
    Aah, never mind!
    Those scripts are indeed placed in the /Jove/Scripts/ folder and not inside Editor.
    I just commented that using UnityEditor row out and then it seems to have been built without errors!
    Might just move them into the Editor folder instead, that should of course do the trick. Thanks bac9-flcl.
    And!.... Great asset Aieth! Thank you for developing it.
     
  46. bac9-flcl

    bac9-flcl

    Joined:
    Dec 5, 2012
    Posts:
    829
    Those file names don't look like they exclusively contain editor-side stuff, so I'm not sure hiding them from the build is right. Better ask @Aieth, not sure what's up there.
     
  47. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    Yeah those should definitely be present in a build. Not sure whats going on, Im gonna check it out when I get home. Ill get back to you on the issue in a few hours
     
  48. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    @TheHenk
    Checked it out now. I'm not sure why or how, but it appears a few silly "using UnityEditor" made it into the asset store version.
    At the top of those three scripts you can find the line "using UnityEditor;"
    If you delete those it works fine. They have been removed since, but it takes such a long time to upload an update to the asset store that the official fix will have to wait for the next patch, which should hopefully be this week.
     
    TheHenk likes this.
  49. TheHenk

    TheHenk

    Joined:
    Mar 24, 2011
    Posts:
    13
    Did this:
    #if UNITY_EDITOR
    using UnityEditor
    #endif
    Works like a charm.
     
  50. Aieth

    Aieth

    Joined:
    Apr 13, 2013
    Posts:
    805
    Yeah you can do that too, it is gonna have the same effect. Truth is, those using directives are completely unnecessary and I have no idea how they managed to sneak into the asset store version :p My mistake I guess
     
    JecoGames likes this.