[Asset Store?] Asset Streaming Plugin

I’ve been working on a Asset Streaming System using Asset Bundles. You create your Game with all scripts and Scenes then you create a 2nd project where you layout your Levels or Regions depending on what your doing with it. In a Large Seamless Openworld game your world will be made up of Regions which are a grouping of Static Assets, Terrain, Triggers, ect. Using the mix of the Region Importer and Paging Manager your World will be streamed in to your game by loading in region files which are exported out through the region Exporter.

UniStream Features:

  • Region Exporter
  • Region Importer
  • Paging Manager
  • Automated creation of Asset Bundles
  • Game Ready Fix for PhysX Floating Point errors
  • Truly unlimited Sized Worlds limited only by the amount of disk Space required.

Floating Point solution
UniStream’s Solution to Floating Point issues entails resetting the Region the player is currently on back to the origin in real time as the player moves around. You define what regions are connected along with their offset during the export process and the Paging Manager handles the rest for you!

Demo Release
Here is the first release! This is a Demo Release to allow you to test out UniStream in it’s Current state. This Release comes with everything you need to Create and Export Regions and Asset Bundles for use with UniStream and comes with the UniStream Viewer to allow you to walk around and test your regions.

Exporter Package: http://www.riseofheroesmmo.com/UniStream.unitypackage
UniStream Viewer: http://www.riseofheroesmmo.com/Viewer.zip

This release does NOT come with the fix for PhysX and does not include the Client/Game SDK or support for anything other then Terrain and Static Objects.

Licensing
Atavism Basic - Free. This is a Basic Version with limited sized world that will be included with the Atavism MMO Framework.

Unity Basic - Free. A Basic limited Sized World version that will be available for general Unity Projects

UniStream Indie - $50. A version suitable for Unity Indie which uses the Resource Folder instead of Asset Bundles. This version is limited by the memory requirements of Unity.

UniStream Pro - $100. An Advanced version which includes the possibility to use the Resource Folder OR Asset Bundles depending on your games specific needs.

How can my Project benefit from UniStream?
UniStream can help to streamline projects from Open world MMOs to simple small scale single player games based around Levels.

Open World Games - MMOs, Single Player RPGs, ect.
Using UniStream you will be able to create large seamless worlds and stream in the assets into the Client/Game as the player is moving around. The Tools for working with UniStream are streamlined to make it quick and efficient to add new regions to an existing game.

Level Based Single Player games
Setup your game to read in region files then adding new levels through downloadable content packages becomes a breeze.

Level Editors or Moddable games
Are you creating a Level Editor so players can create their own levels in your game? UniStream makes such project a breeze!

Games Using UniStream
Greed Monger - Openworld Sandbox MMORPG - ElectricCrow Games
Neos - Openworld Sandbox MMORPG - NeoJac Entertainment

Let me know if you have any questions or would like to have something like this on the asset store.

Tutorials

I guarantee you this is what a lot of developers (including myself) want; it’s a necessary and fundamental tool that should be in every game engine.

If its reasonably straightforward to implement for the end-user, allows for large, dense worlds, allows for AI navigation through loaded regions and doesn’t hitch, you can be assured it would be very well received.

I see a lot of threads like these, testing the waters to see if there’s interest. If you’ve spent the time on something (it appears you have), have confidence in it, make it the best asset you can and release it. Understand that very few vocal people like myself will respond, but a great many others will not, but will buy this asset. Get it on the store! :smile:

Cheers

-Steven

Thanks Steve. I’ll work on a basic Free version that will have a world size limit that will allow people to test it out and see if it’s for them. It will give you a chance to see how easy it is to work with. I still need to add support for Triggers and so far it has minimal support for Custom Asset Groupings so you can create a town for example and group all the assets together for the town which just helps in organizing your assets more. I have some other features I’ve started thinking about as well but haven’t started implementing them yet.

The Package will come with a Viewer Application which let’s you view your regions using the basic FPS Character System before adding it to a full project.

Sounds good James.

With the Free version, make the world as small as you can to simply demonstrate the full breadth of what your’e offering so it’s completely clear your asset does what it intended to, but nothing more. Don’t give your work away.

Also, and this might even serve you better, have a demo that is on par with any open world game on the market today (GTA5, Skyrim, etc) that shows comparable performance and density of assets (geometry, texture, audio, etc). It doesn’t have to be gorgeous artwork, but shows that what you’re offering is again, on par with the streaming engines used in todays games.

Keep it up and keep talking about it :smile:

-Steven

Sounds interesting,

Been looking for something like this for a while, in my search i found something that is close to what i need, it is called: SECTR COMPLETE
altho price is a little steep, but seems to have the complete streaming structure, audio, terrain, assets, lod etc… i wonder if that is why price is a little steep, well at least for me :frowning:

what would it be the difference between your asset to existing SECTR COMPLETE?
price?

Looks like the biggest difference is that SECTR doesn’t use Asset Bundles. It looks like you create your different regions if you will in different scenes and then it loads the scenes as needed. I see no mention of it using Bundles and the only feature that is Pro only is loading using async. UniStream will be Pro Only as it’s all built around Asset Bundles.

ahh, ok
so your asset streaming tool is for unity pro only, right? :frowning:

so i assume as steep as the other when it comes to price?
the diff is that with SECTR will work for both unity free and pro.
so i better start saving for SECTR then since i cant afford unity pro :frowning:
thanks

So just wondering what you guys thought of something. Should I add in a way to get around the whole floating point issues with PhysX when you go too far away from the origin or should I leave that up to Developers to handle for their own games? If I added it in then UniStream would truly be capable of Unlimited Sized worlds or at the very least the ONLY limits would be those of HD space to hold all of the assets.

Also here is a Screenshot from the Sandbox MMO Greed Monger showing an area of the world that is 100% streamed using UniStream:

The last sentence in your initial paragraph answers the question preceding it. :smile:

If you did manage to create a fully game-ready, all-purpose solution to floating point inaccuracies, that would be fantastic, and very useful.

I’ve got some ideas on how to go about adding in a fix for Floating Point but I just need to prototype the ideas and make sure they will actually work in practice. In my head I don’t see why they wouldn’t though.

Looking good James!!

Please, Please, solution to floating point issues, Did I say please :slight_smile:

I updated the original post with some of the features already included or planned, a Listing of games currently being developed using UniStream, and a listing of how your game can benefit from UniStream!

I’ve released a Demo Release that will allow you to test out UniStream using the UniStream Viewer. This release does not include the Client/Game SDK.

Here is the first Tutorial. I’ll be doing more soon. Sorry in advanced for the bad Audio Quality.

Hmmm hard to follow, very laggy and poor audio. I recommend you don’t use google hangouts to create your tutorials.
Here is a great freeware screen recorder: Screen-Recorder
Also not sure if the end of the video worked? was the Viewer meant to do anything, all i seen was the directory with the exe to run the viewer.

Look forward to future tutorials that show what looks to be a fantastic asset in operation.

Any chance this will support terrain created using TerrainComposser :slight_smile:

Yeah the end of the video didn’t come out. The Viewer goes into full screen and Google Hangouts has issues with Full Screen DirectX Games/Application.

I was told just a few minutes ago that TerrainComposer is capable of creating Procedural Content at runtime. If you use TerrainComposer like that then I’m not sure how well UniStream would handle TerrainComposer. IF however you used TerrainComposer in the editor only to create your terrain, texture it, ect. then yes UniStream would work great with it.

I have added a 2nd tutorial showing how to add Static Objects and set them up for streaming. I also added a Screenshot showing the result of the 2nd tutorial.

Nice, could you show how it remove memory use too? It’s easy to stream/download region into memory, but the question always is :

  • when should I download it?
  • when should I remove it?
  • there will be spike on GC on old computers?

All best!:slight_smile: We made something like that without bundles but only for textures. I hope you will create something bigger from this what you started:).