Search Unity

[RELEASED] World Streamer ! Forget about your game memory usage and create big world!

Discussion in 'Assets and Asset Store' started by NatureManufacture, May 13, 2015.

  1. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
  2. WILEz1975

    WILEz1975

    Joined:
    Mar 23, 2013
    Posts:
    375
    Thanks for the answers but unfortunately this asset can not be useful for me.
    I have the same problem of RandAIThor (jittering objects/shadows/textures when the camera is to far away from the 0.0.0 point) and no asset has managed to solve this problem.
    My space games goes far beyond million kilometers and unfortunately I have to use a sectors system with obvious scene loadings...
    Coordinates that exceed 10,000 meters are not well handled by Unity.

    Would need a way to switch the camera/player coordinates relative to the loaded scene and not relative to the world... If you can do this, I would pay your asset even 200$ :)
    Thanks anyway!
     
  3. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    This solution is in progress now, so you only have to wait ;).
     
  4. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    Does this work with terrain composer any idea?
     
  5. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Yes it works. We made demo using world + terrain composer.
     
  6. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    May want to add that to the front of your product then..
     
  7. guyal

    guyal

    Joined:
    Feb 25, 2011
    Posts:
    17
    Just purchased, nice tool.

    Does "This solution is in progress now, so you only have to wait" mean you're adding code to reset the player's floating point origin periodically? If yes, then I don't have to code that myself. Thanks.
     
  8. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Thanks for appreciating.
    Yes, That mean you will set interval which will reset position to 0 but you will have scene sectors in right place. At the moment we also made few tools that will help in work with many terrains at scene.
     
    HeadClot88 and guyal like this.
  9. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    Is this used in Gloria Victus?
     
  10. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Nope yet. We will put it into Gloria Victis when we will have some time. We made stream system in GV but it's veeery primitive and thats why it have spikes on borders. This version is free from GV problems.
     
  11. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    I just seen a comment, thats why I asked, did not know you worked on GV. I tested that game and wanted to see if it worked like it did in GV.
     
  12. h4voc

    h4voc

    Joined:
    Mar 2, 2015
    Posts:
    12
    Your Asset looks very promissing!

    Any ETOA of your floatpoint fix feature yet?
    And is there full SourceCode access?

    Really looking forward to this solution.
     
    Last edited: Aug 14, 2015
  13. SuperNewbee

    SuperNewbee

    Joined:
    Jun 2, 2012
    Posts:
    196
    I am also curious to know about the floating point fix ETA. I tried Sectr Stream but that does not have any fix for floating point issues, so World Streamer asset will be a godsend for really massive terrains once it handles to floating point issue.

    Also tried the World Streamer demo which was really well done. I am very impressed.
     
  14. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    Its on sale today, but the dev has no replied lately to peoples post, how is the support with this asset??
     
  15. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    SourceCode is open. You can change everything you want. If you need any help you can always write by forum or we can talk by skype:)
    Floatpoint fix feature is underdevelpoment. It will take 2 weeks with testing.
    Thanks for good words!
     
  16. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845

    Good to hear, I will buy it then, I been picky about assets as of late, due to some of the developers disappearing and giving no support, so the asset ends up being taken out of my game, and thats wasted money, this is not a hobby. I use some assets so it saves me time..
     
  17. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    We are not going to dissappear:).
    We working hard using unity, everyday since unity 3. Best way to contact us - write forum priv or mail. If there will be any bigger problem, We will help by skype.
     
  18. schmosef

    schmosef

    Joined:
    Mar 6, 2012
    Posts:
    852
    I saw this on sale today and it looks interesting.

    I downloaded the APK demo and tried it on two different Android devices (a Samsung Note 4 and an nVidia Shield Portable).

    On both devices it loads a black screen with the words "World Streamer", then, after about a minute, it crashes.

    Is there an updated APK demo I can test before purchasing?
     
  19. hollegar

    hollegar

    Joined:
    Nov 15, 2011
    Posts:
    34
  20. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Good that you implement a floatpoint fix so this asset come to my focus again.
    My hope is that the floatpoint fix will also work with unity´s new multiplayer function.
    Will you implement a simple multiplayer floatpint fix too(maybe in a more later update)?
    Would be a unique feature for your asset at this time.
     
    Last edited: Aug 26, 2015
  21. schmosef

    schmosef

    Joined:
    Mar 6, 2012
    Posts:
    852
    Hi,

    The Note 4 is using Android 5.0.1 and the nVidia Shield Portable is using Android 5.1.
     
  22. hollegar

    hollegar

    Joined:
    Nov 15, 2011
    Posts:
    34
    Andorid 5 unfortunately I don't have android 5 devies to test ;/. Could I send You custom build in 3-4 hours made for android 5 for You to check it?
     
  23. Lasse-Loepfe

    Lasse-Loepfe

    Joined:
    Mar 28, 2014
    Posts:
    29
    Hi,

    looks interesting. Just one question: Which tiles are loaded, is it just distace based or is their any culling ocurring? I'm workig on a snowboard game, where the player can see quite far when on the to of the mountain, but there would be no need to load the same amount of tiles on his sides when in a canyon... Well I guess occlusion culling based loading is only a dream, but frustum culling?

    Best Lasse
     
  24. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    You could only reduce loading range during playmode but hmm... We can make feature with different x, y, z loading range, it's simple modification , yeah we will add this with unity float fixing system. This is why we love community and feedback:).
     
  25. schmosef

    schmosef

    Joined:
    Mar 6, 2012
    Posts:
    852
    Sure. You can PM me a link to download.

    Edit: for anyone following this, I was sent a download link via PM and can confirm that the APK does work on both my Android devices. It's pretty awesome! :cool:
     
    Last edited: Aug 26, 2015
  26. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Any words about floatpoint fix with multiplayer support?
     
  27. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    I could suggest you how to make servers for big worlds. In borders you have to switch from one server to another. (in border player is connected to 2 servers). Client will have floatpoint fix but server doesn't need this. In MMO and big multiplayer games there are multiple servers for one big world. The reason for this is floatpoint problem and network/cpu usage for such many mobs,players. Multiple server could handle much much more and also main cpu thread is quite free (no spikes and lags)
     
  28. 21312313123321

    21312313123321

    Joined:
    Dec 5, 2014
    Posts:
    13
    I have a platformer game on mobile that is 2D and could have large levels.

    Some of the game-objects that appear in the level have behaviour (like movement, collision etc).

    Currently I have segmented the "Level" scene into separate prefabs for the background, so I load them based on collision zones...

    Would this Asset allow me to just have it all on one scene?

    Also how does it help with GC?
     
  29. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Yes, You could have "work scene" where you have everything and with few clicks make it ready for streaming. System is cutting it into the parts and you don't need any colliders that are loading the world. Ofc you can use them if you want.
    Basically you have one scene with player,camera, light etc and you load in background whole world during gameplay while player is moving. If you need you can load in many layers, for example you can use 1st streamer to load huge background 2nd for details ,3rd for interactive objects etc etc. You can unload them in different times.
    When you have small amount of objects at the scene and small memory usage, GC works faster.
     
  30. 21312313123321

    21312313123321

    Joined:
    Dec 5, 2014
    Posts:
    13
    Brilliant! We currently have a Scene with everything in the background only, and manually create prefabs from it.

    Essentially I guess this is the "Work" scene?

    You mentioned multiple streamers, is it designed so that the first streamer takes priority or something?
     
  31. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    Has this been tested with RTP3? And is there anything I should be concerned about for use on the Wii U console?
     
  32. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Yes, Work scene is scene with "everything" in one place:).

    No there is no priority, but we can add something like that for multiple streamers if you will need.

    Nope, we haven't tested it with RTP3 (we can do that) but you know everything that you can save at the scene you can load in background. Tip is the same for all platforms - load in small parts.
     
  33. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    Does this work with Horizon On?? I already bought, but I was wondering.
     
  34. pixelquaternion

    pixelquaternion

    Joined:
    Jun 28, 2014
    Posts:
    122
    Hi there,

    Seem like a great asset you are making here, just a question : Will this be compatible with UnityParkSuite?

    Regards peter
     
  35. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Haven't try but we can add this to chceck list:).
     
  36. gekidoslair

    gekidoslair

    Joined:
    Sep 7, 2012
    Posts:
    128
    Does this system chop the Unity terrains itself or is that something that we need to do ourselves separately?
     
  37. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    You have to chop it yourself but you could work with choped terrains like they become one big terrain, using our multiple terrain brush: https://www.assetstore.unity3d.com/en/#!/content/44037
     
  38. gekidoslair

    gekidoslair

    Joined:
    Sep 7, 2012
    Posts:
    128
    Ok thank you for the quick response.
     
  39. HeadClot88

    HeadClot88

    Joined:
    Jul 3, 2012
    Posts:
    736
    Hey, Got a question -

    Are there any plans for support for a "No World Space" Feature in this asset?

    I am working on a fairly large world and I am running into problems with floating point.

    This video should give you an Idea of what I mean. I would encourage you to watch it through up to the QnA section.



    Here is some more information on the topic

    http://scottbilas.com/files/2003/gdc_san_jose/continuous_world_paper.pdf

    Edit: Questions and answering my own dumb questions.

    Apparently you are planning something similar to what I linked above. Although details are sparse ATM.

    1. Does this work with PLYgame?
    2. Would this work with a large world that wraps back over onto itself?
    3. What method are you planning to prevent floating point issues with extremely large terrains and Scenes?
    4. Does this work with space scenes where there is no terrain? If so how?
     
    Last edited: Aug 27, 2015
  40. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Maybe i choose the wrong words. I do not want that you make a game server also not for many player nor for mmo like games.

    What i kindly asking for is a simple multiplayer workable solution for the floatpoint problem with your streaming asset for big worlds. So you are working for a floatpoint fix for your asset that will let one player walk in a big world by shifting everything to the 0,0,0 position when a boundary is reached or after some amount of time. That is great so my question is, can you also help with your asset that two players can walk in the Same big world, by a simple example like two standard character controller and unitys own, new network solution, also with the floatpoint fix?
     
  41. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026

    1. We will add this to check list but it should work.
    2. With floatpoint fix feature it will also could work like that, even without it. We willl add this, we get some privs asking about that.
    3. We are testing 2-3 methods and we are chcecking their performance.
    For example this method:
    but we have some onw solution for this too.
    4. You can chceck x-y-z streaming axis and you don't need any terrains. Terrains are saved as part of the scenes so you don't need them. If you want to load planets, system will save them in sectors, and if you will be close enough, world streamer will load them. Hollegar is working with world streamer at space game.
     
    HeadClot88 and John-G like this.
  42. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    Using floating point fix with unity networking without server won't be possible at the beggining.
    The main issue with solution like that is that most fixes for floating point problem are limiting players movement to area close to 0,0,0 and moving whole world around him. If You used unity networking with it when players in game would be far away of each other the networking would see them standing next to each other.
    We will add making sollution for unity networking multiplayer to ToDo list but for no it has low priority.
     
    John-G and reese01 like this.
  43. hollegar

    hollegar

    Joined:
    Nov 15, 2011
    Posts:
    34
    We added new apk demo version with build settings for Gles 3 ETC2. We also added ToDo list for next update and planned ToDo for future updates.
     
  44. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    @NatureManufacture
    Adding it to the to do list and making it later is fine for me :)
    So i will buy it.
     
  45. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    What about physics objects, will they reset everytime the scene is reloaded or will they stay at the removed place when the scene is loaded next time?
    In your tutorial video i see you moved the spheres with your character but sadly i can not see what will happen to them if the character goes far enough away so the scene part unload and then if he goes to the same part, will the spheres will be reseted or on their moved place?

    Edit:
    I can not test this in your demo too because there is no moveable object.
     
  46. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    If you will put it on diffrent layer they could stay longer or forever, if you put them as normal objects connected with models around they will be destroyed. It's your choice.
     
  47. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,349
    Can the system do a full scene initialization (like it would if loading a completly new scene) while moving around the connected world ?

    Or to put it another way, how easy it would be to change a game based on separate levels (that start/initialize a lot of things at each start) to a connected world with this system ? Something like just copy all the scenes whole and add them as prefabs in the new scene would work for example ?
     
  48. carlosrovira

    carlosrovira

    Joined:
    Dec 23, 2014
    Posts:
    58
    Hi,

    tried mac demo but shows "World Streamer" black screen and then hangs.
    I see as well Android demo but there's no mention to iOS. works in iOS?

    I'll left pass this opportunity due to hanged demo, no iOS mention and no reviews, but it's a promising asset.
    Hope it evolves and gets another sale eventually. The actual price (on sale) seems more right to me

    Thanks
     
  49. NatureManufacture

    NatureManufacture

    Joined:
    May 20, 2014
    Posts:
    2,026
    How about xyz positions of your separated scenes and world parts?? It's easy to change your world into streamer.
    a) create mother at each of your scene with prefix - for example "stream"
    b) coppy all your levels to one scene (remmeber about xyz position )
    c) sort objects by prefix (streamer button)
    d) click generate scenes (streamer button)
    e) create empty scene with player, streamer, etc and it's done

    Lets talk about initialization proces. You have to make it smooth. I don't know what scripts are you starting on each scene but I can told you that, we are initializing 200-300 scripts on objects in one frame and we have no spike but... It's always good architecture of scripts. For example if you serching for player position on each scene - put an object (script) that cointain it (when there is no player it hold 0 ,0 ,0 position). Connect other objects in this scene that are need player position to this object. When scene will be loaded script will find player and change 0 ,0 ,0 position to xyz. In this way all objects will get position with only one operation. Only one object will serching for player, it's much faster.
     
  50. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,349
    Thanks for the details.