Sat 16 December 2006 @ 23:55
I had linked to a dev blog on Eve Online's internal web site earlier, but of course you'd need an account to read it. So here it is, pasted in full :
walking in stations
reported by t0rfiFrans | 2006.11.17 16:39:36 | Comments
As many of you have probably heard, either at the Fanfest last weekend or in the forums, we are working on a system to render and animate full-body characters within EVE. The system will be used to represent your character in-station and other locations where a capsuleer ( pod pilot ) would crawl out of his pod, take a quick shower, throw some clothes on and mingle with other capsuleers.
This opens up a huge amount of questions and speculation that have to do with technical issues and game design issues. As the project has just started within the company, many questions can not be answered at the moment, but I hope to clear things up a bit with this blog.
Technical issues: Animation
When we originally developed EVE, we took one look at our competition and existing space games and concluded that the quality of graphics and the level of detail space games were offering were far to limited, unappealing and in some cases bordered on being an insult to the people that were supposed to play them. We set out to create a shading and rendering engine capable of exceeding whatever was considered “good enough" at the time and never looked back. We’re quite proud of what we achieved back then, although as time has passed, technology and art direction in games in general has evolved so that the art we created in 2001 to 2003 isn’t as unique as it was back then. This is being addressed by our massive graphics engine update, already talked about and covered both on this website, in EON and countless interviews.
Now, today we’ve set our sights on character rendering and lifelike animation. It’s important to realize that in order to create realistic looking characters, you have to pay great attention to how they will be animated. We have examples of 3d rendered characters in films and digital media that look amazing when you see a screenshot or a still frame, but once they start moving, they look like zombies or animatronic RealDolls™. There’s actually a term that describes how cg or cartoon humanoid characters tend to look creepy and un-lifelike the closer you get to photorealism. A Japanese roboticist named Masahiro Mori gave it the name "Uncanny valley". If we plan to create close to photorealistic characters, we must ensure that they’re behavior matches the quality of the shading and rendering in order to keep them out of this valley of darkness.
So exactly how do we create lifelike animation? Well, for one, we will use state of the art motion capture. There are nuances in the biomechanics of the human body that only the most experienced and skilled animators are able to express. It takes them, however, days to create what you capture in minutes in mocap. The amount of animation needed for a project like walking in stations prohibits us from hiring an army of the worlds most talented animators and having them animate for years until their fingers bleed.
But motion capture is no magic wand. It’s a tool. You still have to process and work with the data.
There are also various issues with motion capture. It’s recorded animation from human motions that happened that day in the studio, perhaps years before you are playing the game, maneuvering around a crowded hall with your corpmates. A friend walks past you, a busty waitress bends down to pick up some stuff on the floor or a whiff of steam erupts from a pipe close by, engulfing your head for a moment in scorching hot, foul smelling chemicals. How would you react? Wouldn’t you at least nod to your passing friend, shoot a candid glance at the waitress, or put your hand up against your face as the steam hits it? What about the corp CEO? Will his corp mates look at him with more respect or admiration than they would a stranger?
And what does looking at someone entail? Do your eyes focus on him? Does your head move aim towards him? Or do you twist your entire torso so that you are facing him? The answer is different based on various social and psychological attributes.
This brings us to an area of computer graphics called dynamic avatar human-to-human interaction. It tries to apply knowledge derived from years of research of human body language into the actions of computer generated avatars, so that their behavior mimics human behavior without the user or NPC controller micro-managing every little twitch of the body or glance of the eyes.
This is one of the areas that we intend to research and apply to our animation system. To our assistance, we’ve teamed up with the Center for Analysis and Design of Intelligent Agents at the Reykjavik University (RU). Two brilliant guys, Dr Kristinn R Þórisson and Dr. Hannes Högni Vilhjálmsson, both MIT Media Lab PhDs with extensive research experience in these topics will lead research at RU that will eventually find its way into our game environment.
At the moment we’re working on a scriptable animation sequencer and procedural animation solver that will serve as the building blocks for our avatar’s dynamic behavior. The skinny white naked men shown at the Fanfest staring at geometric shapes and each other were primitive examples of the capabilities of this system.
Technical issues: Rendering
With the advent of programmable shaders in modern day graphics cards, we are able to render truly amazing images in real time. Stuff that existed solely in the realm of high-budged Hollywood movies can now be rendered by a single square inch of silicon in your laptop. We see truly photorealistic demos from graphics cards vendors that make us think that soon CG and reality will be indistinguishable.
That is all very good. But once you take the technology used to render a single character on a high-end workstation with the most beefed up graphics card out there and try to apply to to fifty characters walking around in a dynamic environment, reality sets in an you realize that there’s still a great amount of optimizing and sacrificing to be done.
Earlier today, someone here at the office mentioned a fleet battle that happened today on TQ that had 450 ships engaged at the same location, and stressed our servers quite a bit. Now, imagine 450 high-quality photorealistic characters walking around in a detailed environment. Obviously, a lot of intelligence has to be put into LODing, optimization etc. With the advent of normal-mapping and per-pixel shading, we’re able to render humans, originally modeled with close to 400.000 polygons using around 8000 polygons without a noticeable lack in detail. 8000 polys is still a lot, and we’ll try to get this number down without sacrificing quality. The heads in the character portraits in EVE today range from 4000 to 6000 polys. So now we can have an entire body with a head in far more detail.
But that’s only the poly count. Obviously shading has evolved a lot as well. Subsurface scattering, anisotropic lighting have recently become available to us and we intend to use those technologies plus a plethora of other stuff to realistically render the faces of your characters.
Here is an example of what we have running in our engine at the moment. This character model is 8500 polygons and is rigged with a skeleton for limbs, fingers and face.
Game design stuff
So… This is probably the part people are most curious about. What exactly will we be able to do once we’re inside the stations?
First of, I want to stress that we intend to build the world and experience inside the stations incrementally. The first release will have limited functionality and is expected as a more of a socializing forum than a place for brutally strangling your rival corp members or tossing handgrenades into a crowd of newbies, although both would be rewarding experiences for many players ( not the ones being strangled or blown up, though ).
There are a lot of services within stations at the moment being offered via a UI that we are used to and enables us to perform complex actions quickly. There are no plans for disabling any of these UI elements or replacing them with “real world" experiences, such as having to walk to a repair shop to have your ship fixed or spend hours tracking down agents in dark corridors. We might have you doing similar tasks, for added immersion, but we’ll never ruin the existing experience for people who want to be quick about their business in station so that they can hurry out and get back to podding miners.
Socializing in society, however, is very often done around some kind of action, game or activity, that in themselves are perhaps dull or monotonic, but serve as some sort of excuse for people to gather and chat. Bars, for example, are social places for the most part. They often have pool tables and darts and… beer. All tools to break the ice and play around with casually while you mingle with people. We realize that it’s not enough to just build a 1000 square meter circle inside a station, put everybody there and wait for the party to start. There will be stuff to do inside the station, some of it practical, some of it mundane, and lots of it will tie into the roleplaying backstory of the game.
It is often said that EVE forces everybody to roleplay. Not so much with the words that they speak, but with the actions they take. Just to make money or get from point A to B, the game mechanics are based on a solid back story and setting so you find yourself performing actions that in themselves are roleplaying yet serve a pragmatic purpose for attaining your goals. This is a design pattern that we will continue to use inside the stations. The last thing we want is for the stations to become a venue for dancing the Macarena or other actions that are totally out of character for the game and the people in it. I think Reynir, our founder / creative director once said in an interview that there will be no dancing in EVE:
“Macarena-dancing aliens have nothing to do with science fiction in my book. I recommend watching Aliens, Blade Runner and The Empire Strikes Back. This is what true science fiction is about and the reason we made EVE."
The pod-pilots / capsuleers are the elite of EVE society. The chosen few who decide their own fate and often that of others, with the buying power of small contries and the military might of nations. As described in our stories, they are the rock-stars or the EVE universe. Normal people look upon them with awe, and those in power regard them with often envy, discontent and fear, as the pod-pilot, powerful as he is, answers to no-one than himself and his corporation. This is fact we want to capture and portray realistically within the stations. That’s for instance why pod-pilots mingle with each other and perhaps a select few of the NPCs in stations. They stay in VIP lounges and corporate offices, and far below in the small streets and corridors, you glimpse the thousands of normal people making their way around the station.
Then there is the question of combat. Personally, like I stated at the fanfest, I have a strong urge to perform violent acts upon other people when I’m with them in an online environment. It may have to do with bad upbringing, incorrect role models or just genes. But many people share this affliction with me. What will we do to meet their needs?
Combat is a pandora’s box of problems. If we introduce combat we need some sort of combat system. Now knowing EVE players, it’s very likely they won’t settle for a simple combat system. They want to train skills, combine equipment, use tactics and multi-pronged attack manouvers. This sort of system is hugely complex. There’s also the issue of security, security status, CONCORD etc. Plus the issue of cloning, skill loss etc. I think it’s frank to say that there will not be life-threatening combat in the first release of this project. We’ve toyed with the idea of never being able to kill someone, only “wound them seriously" so that the docbots at the medical bay can patch you together to your same self, because you didn’t receive any brain damage. Hence no skill loss. But that still requires a system for combat. -Do we want to create a new MMPORG inside an existing MMPORG? Well, we’re halfway there with putting you in stations. But the short answer is: no combat to begin with.
After we launch the first release of walking in stations, if the forums explode with “can I plz kill ppl!?!?!" requests, we’ll consider them seriously and look at how to implement it in a reasonable way. Until then, it’s petting and hugging only ( not really but you get the idea ).
Well now, we retreat to our cave and continue coding, crafting and designing. You’ll read more about the project in a future issue of EON, and we’ll be sure to keep you posted as the project progresses. There’s a lot of engineering and game design issues that need to be resolved. We have our work cut out for us. But hey, this is what we love doing!
Thanks for your interest.
Wed 11 January 2006 @ 23:56
So we had a fun Christmas. We were home in Ireland with my parents, doing family stuff. It was all fun, though I still maintain that Trim is too far out of the way for anything good to happen. Still, its nice to see that my parents have settled in so well there. Life in Dublin was better, but that's just my perspective, considering that all of my social life was there, or at most just a bus journey away. Of course, they've closed down the Rocky now, but the Classic still stands in the same spot. I drove past there sometime during the holidays, up Terenure road and down past Rathfarnham. Its all different now.
I haven't had a chance to play much Eve of late, though I've just gotten back into it now. We've just built out very first space station, so I'm gonna head down there when I get a chance and take a look. The screenshots look brilliant though.
I have a bunch of pictures that I want to post up here. Christmas, Brighton, the last holidays in Germany... they're all sitting in my pictures folders waiting to be processed. I'll get to them hopefully before the weekend is over.
Anna is going to graduate this year, so we're looking at moving somewhere else. Just how far we go remains to be seen, but London doesn't click with me much anymore. We don't know exectly where or when we're going, but it'll definitely be this year, probably sometime during the summer. Have to go and do some work now, but I'll post more later on.
Thu 2 December 2004 @ 12:41
I finally made up my mind about the music player I wanted to buy. The winner was the Creative Zen Touch
player, after a lot
. Several factors made me buy this one over an iPod, apart from my loathing of Apple, which I might have put aside was there sufficient technical reason. It does WMA, which means I can use a music service other than iTunes (though iTunes does that U2 that I've been lusting after). The sound quality is apparently better, though I have only second hand information on that so far. I hooked up my headphones to an iPod and my player, and played the same song recorded at different bit rates, and the Apple sounded shit. However, the iPod was ripped at 128k and mine was at 196k, so the additional depth could easily be explained by that. More on that when I have a chance to make a more formal comparison. For what its worth, the headphones with the Creative offering are shit, but then I have a set of Bose QC2, so everything sounds shit in comparison. Finally, the battery life of the Zen Touch is rated at 24 hours, though C|Net have apparently clocked it at 27 hours. Twenty seven hours of continuous music playback on one charge is fucking awesome.
Shiva, or Exodus as it is now called, was released this week. Its the latest expansion patch for Eve, and so far it rocks.
Sat 9 October 2004 @ 04:33
So I got back into Eve today, for the first time in a couple of weeks. I was just too busy with other stuff to play much. Lots of changes going on in the game, and in the corp too. Oh, I think its going to be about time for me to get a digital music player soon. Toshiba have a 1.6" 60GB disk on the market at the moment, and Apple are going to put it in their iPods. Creative or someone else will follow soon with a proper Windows player.
Tue 21 September 2004 @ 09:46
Lots of things happening right now. Work is busy as ever, though its all a bunch of little jobs that need to be done. I had to go for an ultrasound today, and everything was clear, which is great news. Eve is starting to bore me, so I'm going to leave the corp I work in and try something else. Anna is working in The Passage this week. I'm re-designing my web site, and going to finally engineer it as I want it. I have an idea involving liquid metal that, if I can manage to make it look like I want it, is going to be awesome. I'm sure there's more, but I'm going to get some sleep now. Back to our regular scheduled program from tomorrow :-)
Sat 17 January 2004 @ 18:51
Aaahhh... the weekend :-) On the menu for this weekend are : vegetation, relaxation, and a hell of a lot of Eve. Unfortunately Anna has to write a paper for Uni, so I get the whole weekend to play. Poor little me ;-)
Thu 15 January 2004 @ 05:08
I could not get motivated earlier to do my German homework. Did you know I've been studying German for the last few months? That shows you how much of an impact it has made on me. But tonight, I sat down and opened my books, and started typing some stuff on the PC. I enjoyed it. I enjoyed it a lot actually. I had forgotten how much fun it is to get back into learning again. I don't do that too much these days, and I should, because its one of the things that keeps me going. I just seem to play too much Eve lately, and that is taking all of my spare time. ::sigh:: Maybe I should quit playing Eve and start learning something new again. Nyah... fuck that ;-) There's a compromise to be found here, if I can reach it.
Thu 9 October 2003 @ 05:28
Damn, three months without posting. I do have a good excuse though... I changed the technology behind the Long Pink Cake, and then didn't get a chance to update the bits that have to do with the XML behind this page. But that work is mostly done now, so back to regular(ish posting for me. So, lots of stuff happening in the past few months. Anna has started Uni a couple of weeks ago, and she's loving it. I think she's not yet used to the amount of work that she has to do though, but she'll get there. I startd a course in German last week, and it lasts for a year, so there should be some improvement there. I'm still playing Eve, and this is one of the reasons why I haven't finished the web site. In fact, I play it every chance I get at the moment. I understand where Hugh is coming from when he says how good Evercrack is... Eve is the same. I simply MUST play. I also changed jobs, and moved to Marketing. This was a brilliant move on my part. I love my new job, and am back to getting a kick out of the work :-) Anyway, I have to hit the sack, more tomorrow... I promise.
Mon 19 May 2003 @ 12:33
Lets see, whats been happening... um... I've been playing Eve-Online quite a bit lately, and its turning out to be better and better as it goes on. For those of you who don't know, Eve is a massively multiplayer online game in the same genre as Elite. In fact, its almost exactly like Elite, but bigger, and better. It also has real people flying around in it - typically around four thousand of them at the same time. That makes for a fucking awesome game.
Oh, I also got a new job last week. I'm going to move from Technology to Marketing, and do some funky things on the ground floor. More about that later on, I have a lot of things to get through first.
Sat 1 March 2003 @ 22:18
At last, I got invited this morning to join the Eve-Online
beta test. I'm downloading the client now, but its 411Mb in size, so is going to take an hour or so. ::cue Cartman voice:: Broadband... I love you broadband ;-)