UK virtual reality firm Improbable raises $500M
bbc.com
bbc.com
With the impending growth of VR (and virtual worlds in general), this is a great candidate for being the foundation of a new generation of apps.
Unity has done this for game development. It's the de facto engine of many research projects, video games, and some applications.
Unity lacks the ability to scale to large projects, however, which is where SpatialOS comes in. It's for projects that are large in scope (encourages/requires better programming practices) and is literally made for scale. The nice thing is that the SpatialOS tech uses Unity, but doesn't require it. It can be used with any engine if desired.
However a couple distributed systems engineers, dev ops, and games engineers could build something similar.
It's not that hard for a team like that to replicate it from what I've seen of the documentation on how to use it.
It's defiantly worth something, but for 500 million? You could literally phone up game industry legends and get them build something amazing for that.
There's a low upper limit to how many such games an individual would be willing to invest in (a number not far off 1?). Some MMORPG players will play a few of them, but I suspect most will focus on just one.
I think the real value of this tech lies in its applications outside of gaming, namely huge-scale simulations. There's plenty of opportunity for lucrative contracts with governments, academia, and R&D departments.
Most simulations don't work like that at all.
Let's say you're simulating an ant colony, there's going to be a lot of empty space, there'll be choke points with a high number of interactions, and quiet areas with not much going on. You could do a totally offline simulation, and it'll take an unpredictable amount of time to do some number of ticks - because the complexity of each tick is unknowable ahead of time. But if you want reasonable guarantees about how long a simulation will take to run (and assuming there's an upper bound to the complexity), being able to easily and automatically scale up the computing power would be very valuable.
So the utility isn't restricted to real-time, but more generally about having a predictable execution time per tick regardless of simulation complexity.
Of course, this is all speculation, I'd love to hear some real world applications of this.
Should we expect weather forecasters to ditch all their existing infrastructure and move to improbable?
Something doesn't add up; simulations are not MMOs.
Softbank isn't buying an implementation! It's buying a company that facilitates implementations.
Core of this, is a distributed system that fires of events, and synchronises state between nodes. And to be able to dynamically add and remove nodes as required. Then some integration with games engines.
Their documentation and demos shows that you describe the entities, entity state and events in their own domain specific language as a schema. The engine that manages all of these entities can be in whatever language they want, they haven't publically stated. But I have feeling it's in scala. This is the cool bit.
Then they have integration with unity, and other engines. The unity integration has something that will read the schema and auto gen some code, which will allow you send off command/events to the distributed system they've built.
Defiantly useful. But it's easy to replicate with a good team of engineers.
The founder I knew told me excitedly their vision for a dynamic interactive world - I thought this sounded like pure nerd crack though wasn't sure if it would actually work as a game. (I built a much more basic dynamic world MMO in university and it ended up with huge drama amongst the player base). I think they pivoted to building a platform rather than a game about a year later.
Wish I'd stayed in touch now, though that seems to happen a lot in the start-up world.
What did I not notice that's worth half a bil?
- WoW - Several servers hosting copies of the main game world, dedicated party servers for instances
- Second Life - A server maps to a specific volumetric "box" that is estimated to be able to handle whatever activity and whatever entities end up in that box
- Eve - A server maps to a star system, local game time can slow down to accommodate more activity
My understanding is that these guys do something else, where they determine sets of entities (players, NPCs and non-player entities) that are likely to interact and shard off the controlling logic to a server. As the world-state changes, the clustering and mapping of entity groups to servers changes and they have some kind of way to move likely interacting clusters of entities seamlessly within the infrastructure.
This has the possibility of supporting huge persistent game worlds with tens of thousands of players at a time without the kinds of ill effects we see with the other approaches.
- Worlds adrift - 100s of instances of Unity running in the background, but it appears to be a single seamless world to players.
We deal with such a situation through the fact that SpatialOS dynamically scales the zones that each game engine is responsible for. So if you have many players gathering in the same reduced area then there will actually be multiple game engines allocated to that specific zone and extra engines might even be started if the load requires it. This also works in reverse so that if your player density falls drastically and a single game engine would suffice for your entire world you will only have one running, so you always have the right amount of resources at your disposal.
Such game engines are what is referred to as workers in SpatialOS (https://spatialos.improbable.io/docs/reference/10.3/getting-...) and workers can be of many types: game engines like Unreal or Unity to manage the physics of the simulation, custom workers based on one of the language SDKs that implement AI-like functions, or any other behaviour you want to put in your world: it's entirely up to you to take this as far as you like.
Sure, you can subdivide it as small as you want, but that just increases the overhead by requiring the servers to communicate more. But even if the servers can figure it out, what the client sees seems like a hard problem too.
Improbable could cap the density if they need to, and over time they can do optimizations to increase the maximum.
Whereas it is entirely true that you can always find a counter-example that would break a given technology, troymc is absolutely right in the fact that those counter-examples still leave an overwhelming majority of use-cases that we can handle perfectly well with our approach.
That said, my previous response was actually targeting your example as being a use-case that falls into the 'realistic' category that we want to address with SpatialOS.
Again, I am not suggesting that you can and should pile-up 1000 players onto 10 square meters, but if you take care when defining your world's characteristics (SpatialOS's entity & components) you will be able to scale up your player density in your battle scenario to a level that significantly exceeds anything that you could achieve with any existing monolithic game server and for a fraction of the trouble as you do not really have to deal with any of the usual networking issues because SpatialOS takes care of that.
Actually Worlds Adrift (https://www.worldsadrift.com/) is already in Beta and Lazarus (http://www.playlazarus.com/) is in open-development and you can start playing right now.
And more are already in development.
I also wonder how it handles very large entities that might span across clusters (say a large spaceship with thousands of entities spread across multiple decks and in different area). Since all of those things are entities in a sense, and there might be many ships, how does it handle this?
No idea, but the fact that this can be asked at all is pretty interesting.
It's just not worth it. The technical back-end challenge isn't the hard part here, it's the game design. WoW with 10,000 players idling in Orgrimmar isn't fun. WoW with 100 players in a single dungeon isn't fun either, for that matter.
http://www.wired.co.uk/article/improbable-spatialos-simulate...
I don't see the need for this tech in the high fidelity city simulation cited in the linked article: that would much easier to implement as an offline simulation.
Training seems like the most likely usage: eg. disaster response or large scale military scenarios.
I have to agree with the earlier poster that tech is not the limiting factor for massively multiplayer games.
It would most likely be used to test infrastructure or policy decisions. For example, what happens to your traffic in your city if you add this bus route, or how would a contagious bioweapon spread under certain conditions.
If you want to simulate a new bus route then run an offline simulation using whatever tools you like with as much complexity as you like.
In fact you'd likely want to run your simulation much faster than real time to answer specific questions quickly, like finding traffic or passenger hotspots.
I doubt you'd want to sit there watching virtual buses driving around a 3d city, but rather quickly see heat maps change as you play with parameters.
- Wired: http://www.wired.co.uk/article/improbable-quest-to-build-the...
- Bloomberg: https://www.bloomberg.com/news/articles/2017-05-11/softbank-...
- TechCrunch: https://techcrunch.com/2017/05/11/improbable-grabs-502m-led-...
- Financial Times: https://www.ft.com/content/76529d16-3669-11e7-bce4-9023f8c0f...
- Improbable's own announcement: https://improbable.io/2017/05/11/our-ceo-herman-narula-on-ou...
(Disclosure: I work at Improbable.)
$500MM though? The skeptic in me is saying they're going to write the majority of this down in 5 years.
Basically, this investment gives Improbable a 5-10 year time horizon to basically do whatever they want. But they can't just work with every game dev studio under the sun -- they actually have to grow the entire MMO market in order to actually turn a profit for investors.
Countless times its been proven that connections + chrasmatic founder means investers will invest in silly things.
Something seriously good + no connections and no charisma means your going to have a bad time.
The hardest part is getting noticed.
That's a pretty solid ROI.
Apple has huge profits and a cash pile despite a) having lots of competition, and b) returning profits to investors via dividends and share buybacks. Perhaps there are more options than the two you present?
Of course, Japanese capital isn't the only capital that chases stupid stuff, especially not right now. We're all Japan these days. :)
http://www.berkshirehathawayhs.com/
They also own 100% of a heck of a lot of subsidiaries. They're not just minority owners in a bunch of companies like Coca-Cola.
https://en.wikipedia.org/wiki/List_of_assets_owned_by_Berksh...
If you're good at writing insurance it's essentially a great way of getting interest-free loans which they then spin into a huge pile of low-risk, cash-generating businesses (e.g. Duracell, Fruit of the Loom, See's Candies, to pick three Berkshire brands...).
They're an insurance company which monetizes through operating businesses rather than the traditional model of bancassurance.
The second alternative doesn't make sense. You can't say a company has lots of profits because they don't return it to investors.
Earnings (profits) is basically Revenue - Expenses. Whether the company chooses to retain earnings to reinvest in itself, or to return profits to investors (by paying a dividend or repurchasing stock) doesn't change the value of earnings.
In any case Softbank does pay dividends to its investors.
Japan's telecom used to be rather non-competitive, with 3 major carriers dominating the market, mandating locked phones and very likely colluding on pricing and fees. But since we got guaranteed number portability and MVNOs things have been better (I've just switched from Softbank to a MVNO, going from paying $70 monthly to about $25).
Softbank's earnings come not only from domestic telecom but also from its stakes in Yahoo Japan (search/advertising, auctions, loyalty points etc) and Alibaba.
"If you invest 100 million in this company we backed two years ago, we'll give you a good deal on this other thing we know you're interested"
"If you back our cloud computing company, we'll get our other unicorns to use your CRM technologies"
I have to say, linden labs and high fidelity must be pretty excited by all this enthusiasm.
I'm talking about the non real time simulations of cities, traffic etc in your promotional material.
If a simulation does not have a real time requirement then what's the advantage of improbable?
Anyone able to correct me?
If that's the case I can't help but feel this is a gross misuse of the VR buzzword in the headline. This is cool stuff, but we call that cloud computing, not VR.
https://food-hacks.wonderhowto.com/how-to/8-easy-ways-enjoy-...
This is typical for technology reporting.
edit: Someone want to tell me why this comment is getting hammered?
That meaning has largely been transitioned to the term "virtual world" (eg, in Second Life's marketing materials) because of the terminology collision around 3D headsets.
I personally think this is an abuse of marketing that destroyed a useful term to a reductionist view because they wanted to co-opt the interest and goodwill around the long history of literature on the original meaning. Other people feel differently.
In your case, you're being downvoted because you're insisting people only use the reductive new meaning of the term, when it was used perfectly sensibly in the older style in the title. (As it would apply, in calling Second Life "VR", since it's a "virtual reality".)
It's not a technology problem. The current technology is marginally adequate. It's lack of market interest.
The product is 'Spatial OS'. Want to build a massive simulation of various agents interacting in different ways than cannot possibly fit on a single server? That's where 'Spatial OS' comes in.
Interesting blog post here: https://improbable.io/2016/03/24/what-we-found-when-we-simul... a couple of people from the UK government visit improbable for 3 days, successfully build a detailed simulation of the internet (at the routing level, so simulating all routers involved in BGP). Looks pretty impressive.
Making it really easy to develop such simulations could open this tech up for people who have applications for it but can't afford to build this kind of thing from scratch as the companies building things like Second Life.
[0] https://improbable.io/news
[1] https://improbable.io/2016/03/24/what-we-found-when-we-simul...
Of course, whether it will be good enough that researchers will want to pay for it is another matter.
I can see that a utility network could be just one part of a larger system i.e. a rich city model with all key systems modelled, such that you could simulate a tsunami and see what power networks go down, how this affects rail links, where that strands people in the city, what evacuation they may need, etc. etc. The trouble with this is that the investment in creating such a model may vastly outweigh cheaper simulation that provides a good enough result, and that you may end up with such complex interactions that you can no longer get results in a timely manner.
Thinking about global scale, I was reminded of Buckminster Fuller's World Game: https://en.wikipedia.org/wiki/World_Game
I'm open-minded yet sceptical. But what do I know, I haven't just raised $500m!
Edit: it's just occurred to me that what SpatialOS are talking about sounds something like a Spatial Decision Support System: https://en.wikipedia.org/wiki/Spatial_decision_support_syste...
SDSS's find application with NP-complete problems, and work around this NP-completeness in various ways to find solutions that are good enough. Instead of modelling all possible outcomes, single parameters are varied to view their impact, and in this way the nature of the problem can be ascertained. I can see that this methodology could work within SpatialOS, with the system providing a container for vastly scaled up models.
Further edit: I wonder what coordinate systems are available. If they are serious about geospatial they may have some work to do.
If the virtual world essentially becomes where you go for TV / film / music (which isn't impossible, when you look at how we're starting to consume) and where you chat whilst getting to be the version of yourself you really want to be, or using it for an escapist 'coworking space', or whatever else - I could see it having some future.
It would probably encourage interest if the inequality gap broadened and people struggled with terrible living conditions, or a more dystopian world, and looked for escapism.
All big ifs, of course...
There are other applications of course (crowd simulation for architectures, planners, or despotic dictators), but for now the money will mostly be in game testing/simulation.