vw tech

  • How Virtual Worlds Work, part one

    Diagram one: the client and the server

    Apparently, our recent articles have caused a bit of a stir. Itโ€™s been gratifying to see so many folks commenting and weighing in on what we have planned, and the metaverse in general.. One thing thatโ€™s really struck me isย  the enthusiasm for the reinvention of online world technology. Whether a particular commenter is focused on decentralization, player ownership, or user creativity, thereโ€™s clearly a lot of interest in new ways of doing things.

    In my experience, whenever we are exploring new ways to approach old concepts, itโ€™s important to look backwards at the ways things have been done before. A lot of these dreams arenโ€™t new, after all. Theyโ€™ve been around since the early days of online worlds. So why is it that some of them, such as decentralization, havenโ€™t come to pass already?

    The answer lies in the nitty gritty details of actual implementation. A lot of big dreams crash and burn when they meet reality โ€“ and some of our most cherished hopes for virtual worlds have pretty big technical barriers.

    Read More “How Virtual Worlds Work, part one”

  • But First, the Game

    In the last couple of articles, I might have spent too much time talking about big buzzwords โ€“ metaverse this and persistent state technology that. I get it, it can be confusing!

    If I were to start throwing around even more technical stuff โ€“ like, how we drive Node.js from our highly-optimized C# server backend to implement a TypeScript-based scripting environment so gameplay code can be reloaded without a build or restart โ€“ well, plenty of peopleโ€™s eyes might glaze over.

    So instead, I want to talk about why our overall tech approach makes for better lives for our developers and better games for our players.

    A fundamental truth

    To make better games, we need to enable developers to iterate faster.

    Read More “But First, the Game”

  • Revealing Playable Worlds technology

    Last week, I talked about โ€œmetaverse,โ€ the hype around it, and how much of what people dream about is actually stuff online worlds have done for many years now. I ended the article on a bit of a tease, promising that I would talk about what we are doing.

    I wonโ€™t tease this time.

    We have built a metaverse platform.

    Wait, did you say โ€œhave built?โ€ Past tense?

    Oh, itโ€™s not done. Weโ€™re probably going to be working on this for years. But I say โ€œbuiltโ€ because, well, we have the basics of this stuff working.ย 

    Read More “Revealing Playable Worlds technology”

  • SWG’s Dynamic World

    This post is dedicated to the memory of John Roy, lead environment artist on Star Wars Galaxies. Help out his family here.

    ย 

    Corellia0023Letโ€™s do some math. Letโ€™s say that you need to have a pretty big world: sixteen kilometers on a side, and made out of tiles.

    A tile needs to know what texture it is. Thatโ€™s one byte. Not much, right? You only get 256 tiles on a planet, though, which isnโ€™t a lot.

    But wait, we can add some variety there, by putting in some colors. Weโ€™re in 3d, right, so we can tint the tiles slightly and get variation. Itโ€™s normally three bytes to apply a color, but letโ€™s instead just say that each planet has a fixed list of colors, and you can have 256 of them, and that way each tile can look up into a list of colors and we only need one byte.

    Oh, and itโ€™s a 3d game heightfield, so we need to know what the elevation of the tile is! Weโ€™ll just say that there are only 256 levels of height, and that way we can keep it at a nice conservative three bytes per tile.

    Corellia0004Thatโ€™s good, because we need a lot of tiles. Theyโ€™re one meter on a side. So that means that for a planet we need 16,384 just to make one edge. We need 16,384×16,384 to lay down the whole world.

    Thatโ€™s 268,435,456 bytes for this world. Of course, we need ten planets, not one. So, thatโ€™s more likeย 2,684,354,560 bytes. Nobody uses bytes, so thatโ€™s 2,621,440k. 2,048mb. 2.56 gigabytes, uncompressed.

    Thatโ€™sโ€ฆ not going to fit on a CD. I mean, that doesn’t include any art yet.

    DVD drives weren’t yet widespread in 2003. In fact, taking up 2.5 gigs of space just for maps was unheard of.

    Endor0040

    The solution to that problem didn’t just let us ship Star Wars Galaxies, it also unlocked everything from player housing to crafting to giant Imperial vs Rebel battles.

    bullet

    Patent disclaimer

    Before you read any farther, you should know that Sony Online actually patented some of the technology that I am going to describe. If you are someone who should not be reading technology patents, you should stop now.

    Read More “SWG’s Dynamic World”

  • Google’s O3D and VW’s

    GigaOM has an article titled Will O3D Get Google Back Into Virtual Worlds?. Apparently, at the MetaverseU conference (which I usually attend but couldn’t this time), the tech lead for O3D said that his team’s next goal is to fully integrate it into Chrome. By the end of the year.

    After his presentation, a group of developers surrounded Kokkevis, peppering him with tech-heavy questions. He told me there werenโ€™t any companies creating MMOs in O3D yet, but he raised the possibility that Google might port Sketchup and Google Earth into O3D, โ€œonce we become part of the browser.โ€ (Both have been implemented for MMO-related projects.)

    I wrote about O3D back in April; its integration into Chrome is certainly interesting, but Chrome itself has quite a lot of adoption barriers yet. But it’s still highly intriguing tech to keep an eye on. If Sketchup and Google Earth migrate to it, that’s a pair of apps to drive adoption, for sure.

    Meanwhile, the same article says Unity has reached 10m installs…