Paul's profilePaul's spacePhotosBlogListsMore ![]() | Help |
|
January 18 Observations of games at the weekend
So I’ve set up this Wordpress blog. I think I’m going to try and update it on the weekend… weekdays tend to be a little unpredictable as far as free time goes. Right now I should be able to take advantage of not being in crunch, so the hours I’m doing aren’t always hugely outside of core hours. My Windows Live blog doesn’t give me satisfying stats… I think I may let that go fallow. Facebook is where I update for just friends and family – this I want to try and keep for developer thoughts. Civilization RevolutionPlayed quite a bit of this weekend and last. It is a really good turn based strategy game, and I have had fun playing it. There are a ton of cool touches that have made me laugh and smile. The advisors pushing each other out of the way when you skip them before they finish. There are some funny gifts you get given now and again like dancing bears, jugglers and dancers. They have made use out of a collection mechanic by having a big museum with busts of various leaders, pivotal people you meet through the games you play, and models of the wonders that you have built over the games you have played. There is a slight curve on the user interface that I’m not sure I’m all the way through yet – and perhaps that’s why when I jacked up the difficulty again this morning and tried another scenario that I started to see the games numbers. You know how in the Matrix when Neo starts seeing the world around him as green text flying around? Well certain predictable patterns that were there in previous levels are not… and the virtual dice would seem to roll against you a little more often. Perhaps I see this because I’m a developer and know what I’m looking out for. After all artificial intelligence in games is more about creating a believable illusion of being smart, then academics actually trying to make something smart. I will go back to it no doubt, the game has unbelievable depth. If you want to get a kid interested in history this would be a game to give them to play… it actually has historical documentation, pictures and even media clips of the various resources and people that make up the game. Fable II – Knothole Island Expansion PackFable II is a great game, go buy it. ;0) Seriously, despite being part of the team and having played the game in the various states it has been in – to still be wowed and awed by it even after it stole so many unpaid hours of my life shows that the game must be good. Danni, my wife, loves the game. She loves the controls, the art, the style and humour of the game. She finds the menu a little fiddle and because she plays on my gamertag sometimes has to have the orbs and stuff switched off, but apart from that it has been a game that turned the head of a casual / Sims 2 player to a role playing game… which is saying something. The people who have complained about the lack of depth in reviews just plain didn’t go looking for it. She is loving the island so far, apart from the dexterity challenges (flit-switch squash, timed run through flames, etc). I guess the pack is probably aimed more at the hardcore – I think I could do the challenges and find them more fun then frustrating. The ones who are most likely to know how to download content, have a hard drive, etc I guess are the hardcore anyway. The extra places to visit and other content like the new potions and enemy variants are cool for all though. It should be enough to make you want to keep Fable II and not trade it in for a bit longer! Geometry Wars IStill on the original Geometry Wars… the other day something in my head clicked and I managed to push through a previous upper score boundary. That game is awesome, easy to pick up and hard to master. The whole pushing A button a bunch of times to try again is genius for an arcade game like that. Still looks beautiful today, without a doubt a modern classic. October 22 Not Friday Friday EntryLooks like I’m missed the beat again. Lots of exciting things, on Thursday 16th the Champagne flowed freely at the official launch party for Lionhead & Fable II staff only. I was on a coach that got lost, but when we got there fun was had, awards given, and Peter Molyneux gave a very emotional speech. Actors played characters wandering through the party and luckily at the end of it all my wife came and picked me up at some silly hour in the morning. I’m a very lucky guy :-) Friday was a slow day as most people either had the day off or were recovering a bit from the night before. Monday many, many reviews come out… most of them glowing and between 9/10 and 10/10. Congrats Fable II team, I am so proud to be in the credits with you guys it’s untrue! It has been a life aspiration to be credited on a successful game… and now I have been. :-) http://www.metacritic.com/games/platforms/xbox360/fable2?q=fable%20II is a good place to start, but here’s a breakdown here (from 21st October)
A few more goodbyes this week, Martin (awesome engine coder), Mark (great scripter) and Neil (thank him for co-op in Fable II). Work continues a pace on the other project’s editor, gutting FablEd for bits and trying to get the new one as lean and focused as possible. Refactoring like this the interest meter can go between refactoring zen and frustrating chases down seemingly endless rabbit holes. Landlord did quarterly visit yesterday, and apparently wants to charge us for a gardener to cut the rear garden hedge to his specifications. To be honest that hedge has never been that great, so it’s a bit of a cheek. Still there might be a fully tiled bathroom on the way so best to keep things cordial. We’ll see what we can do for Friday I guess. Yesterday evening I actually got to put a retail Fable II copy in my machine. Peter said everyone could have the afternoon off to go play after we got our copies… I have things I had to do for the other team I’m still on but managed to leave a little early. Danni finally got to see what the late nights and weekend were all about. She seems impressed so far :-) October 13 Friday Entry… on a Monday… whoops… Early on the week I sat with Dave B for a little while going through his physics test bed he had made in C# to simulate hair and help him out with some flickering on the display… later on the week I revisited him and saw some of the stuff working in the Fable II test bed, all very interesting! James left on Thursday… he was one of CTG and I think the first person to buy me a pint at lunch! He will be sorely missed by the team, but I am sure will infuse some of that Lionhead magic in to the company he has gone to in his new position :-) The Fable II TV ad is fab! http://videogames.yahoo.com/events/fable-ii/fable-ii-trailer/1251513 Also I am on the telly in America (G4TV)… for like two seconds in the background, specifically on this one: http://www.g4tv.com/xplay/previews/29112/Fable_II_The_Art_Direction.html (30 seconds in) – this is the entire series of shows:
Friday I ended up staying late (by my own choice mind you) to move my stuff up to a new desk on the second floor… the pillars are blue here ;-) Created a couple of different versions of the editor that will be released sometime on Monday. October 03 The Friday EntryMonday… unexpected announcement about Fable II Live. Move along shall we? Tuesday played some Little Big Planet in the Lionhead Cafe. Before 10am messed with it with a couple of other devs – then at the end of lunch I started messing with it some more and Peter Molyneux came through and asked for the pad. So I gave it up and watched him play and we made comments about what we thought was good (art) and bad (controls) about the game and then he gave me the pad back… and I managed to get myself killed by messing up a jump that involved three blocks, a movable block and some ghosts. D’oh! There is no doubt the Little Big Planet is a work of art but everything in it a 360 could do. The poppet interface is great, though a few times people got a bit lost about what to do (flipping pages to find techniques, etc). I got frustrated with the ghost thing – a couple of times the arms seemed to get me but didn’t kill me, and other times I didn’t feel like I was close and I got killed – I think it’s that poisonous gas thing that trails behind the ghosts that was confusing. The whole having to jump to move towards / away platforms in 2.5d I think I could get used too though again not 100% intuitive. Not dragging blocks towards and away from the screen I’m guessing is a game-play decision made on purpose – not sure if I agree with it but I guess it opens up different puzzles. The emoting in Little Big Planet, along with the art, would be the thing that stands out for me. I’ve not created any levels with it, but I would wager that would be pretty fun to do. Little Big Planet makes me want a PS3… but I’m not going to buy one for just one game! ;-) Wednesday managed to make it to yoga at lunch, and get a new version of the editor together and ready to test and deploy on Thursday. Thursday released new version of editor. Microsoft Adjusts Contents & Pricing for Fable II Collector's Edition Gutted… :-(. Had a great talk with Dan D and Matt H about university, games distribution and narrative at lunch. Started to look at fog editing within FablEd but engine side had a fix. Thinking about documenting Height-fields some more. Tried out some more networking on Facebook – hope the requests work out! Friday figured out that a function call had some expectations… probably down to it’s name… that people were ignoring when calling it (despite the <summary/> block saying otherwise). Was going to fix those instances… but instead figured it would be better to just have the function live up to the expectation. One has to be pragmatic about such things ;-) New version of editor ready to release on Monday. Actually *held* a normal version of Fable II in my hands and skim read the manual at the team meeting when a few copies were being passed around today. Finally PM accepted my Facebook friend request… w00t! Oh and Kostas is now a Fable II Widows party admin – which will hopefully help with the recruitment process :-) September 28 The Friday EntryAnother week in review! This week I have been bug fixing the editor and deploying new builds. In particular improving the visualisation of the ranges of "Creature Generators"... which as the name indicates spawn creatures in to a level. More Fable II in the press this week, I hope the buzz increases... there's Forza 2 Fable II paint job, and a real NASCAR going out soon with Fable II all over it. http://www.joey-logano.org/nationwide/gamestop-fable-ii-paint-scheme.html Kev has been writing a few interesting blog entries about .Net 3.0 stuff... check it out here: http://kevmooresblog.blogspot.com/ I figured out that a bad 512meg memory bank in the Home Server I've got running was causing problems, not before I seem to have loose the ability to restore it back to how it was... because I didn't work out what the problem was until I was already in the middle of reinstalling it because I thought it was the software. Whoops. So I don't think I've lost anything terribly important, but I would like to figure out how to restore the laptop backups. I did mail the internal WHS discussion mail group but have not got any joy from them yet. Played a little 4 player Castle Crashers on Wednesday at lunch (forgot about yoga... doh) - completely different game couch co-op to single player. It's amazing how much better some games are when you play together. Thursday I was wandering around the Studio and noticed a really interesting locomotion prototype being demoed on someone's screen. It is the amazing the research and development that goes around the place... even the prototypes look futuristic and cool. I remember seeing Adams combat prototype before it was integrated in to Fable II and being blown away. The creativity that blossoms around the place is so energising and inspiring to be around! Friday I spent trying to track down the real cause to a crash bug in the editor. Sorry this Friday Entry was late... I draft it over the week but for whatever reason didn't get to publish it until today! Bad Paul, Bad! Still at least I managed to get a Lionhead Blog posted: http://community.lionhead.com/blogs/lionhead_ctg/archive/2008/09/26/3080599.aspx September 20 The Friday EntryAnother week in review! A friend is leaving Lionhead to pastures new stateside, and his party is on Saturday. During this week I have worked a little on Fable II and testing it, but most of my time has been spent on the tools and thinking about the future of the Lionhead Text System. In the news Fable II has been getting good amounts of buzz thanks to the efforts of the pr and community teams. Dev news, in .Net land Shawn Burke announced that new controls are coming, source and all, delivered in an agile way. XNA Game Studio 3.0 Beta is out and ready for those who like to be on the bleeding edge to play with. It is sad to see Neil go - he made an effort to make me feel welcome and part of the Lionhead family - which was great because when I first joined Danni was away in the States at a funeral and I was left to start the whole moving house thing. It is an excellent opportunity he's got at the new place though. That's the thing about the software industry... seems like you have to move between jobs (or at the very least departments / sites) to get on the next step of the career ladder. I am sure it was a tough decision because I would wager there is nowhere else like Lionhead in the world, even within the wings of MGS - but the move is very understandable. I am def looking forward to the party though, I'm sure it will be a blast! I don't think I should talk details about Fable II - although I am looking forward to having the opportunity to properly look at the tools bits of the LHTS when the dust settles some more. There are a number of .Net technologies I think that could be applied to an improved version that would make the whole thing more accessible and the entire process more controlled. In other news, have started looking in to throwing an unofficial launch party for Fable II for partners, friends and alumni of the project. It will be interesting to see if we (wife and I) can pull it off :-) Some Fable II links:
XNA Game Studio 3.0 Beta has been released - here's the blog advisory :-) XNA Game Studio 3.0 Beta is GO! That's right! You can download it now! We'll be asking your help to put this baby through her paces as we lead up to the official release later this year. It is your input that makes us stronger, faster and better. Download XNA Game Studio 3.0 Beta at Launch Center If you do find any bugs or just have a suggestion on ways we can make XNA Game Studio 3.0 more awesome head over to Microsoft Connect to submit them to us. In case you missed Michael's post last week here is a list of the changes: Zune
Xbox 360
Framework & Visual Studio Features
September 12 The Friday EntryThis week I have spent quite a bit of time playing the game. Fable II is lots of fun to play - the customisation of is fun on its own. Want to be a physically strong hero? Sure. Really spending your experience beyond a certain level turns you from toned to beefcake - perhaps not the look you want but it's a choice you make :-) A term I've heard bounded about in Lionhead for a function that write to memory not their own is "scribbler", which can be particularly tricky to track down. I subscribe to a few development blogs, recently Cowboy Programming posted a blog titled Debugging Memory Corruption in Game Development - if you are interested in debugging unmanaged applications, games or not... it's a good article to read. I've not had time to mess around with Silverlight myself, but I enjoy reading about it and getting familiar with it. Silverlight being a browser hosted platform that can run .Net stuff. There are some excellent Flash games out there, and I have a feeling that Silverlight games are going to become more common. Mike Snow has an awesome Silverlight blog with a game dev slant. I think Flash and Silverlight probably give some developers a playground for decent ideas. The last few evenings I've found myself making Fantastic Contraptions :-) Completely non-dev related, last night I watched a film called "The Freedom Writers" - pretty inspirational really. Based on a true story, it is about how one teacher made a huge difference on a class of kids when the rest of the school system had more or less given up - to the point of getting two other jobs and giving up her personal life... though she just oozes positive energy. Acting is really good throughout, and the extras on the dvd are interesting as the actual teacher is interviewed. Hopefully I'll get around to working on some XNA stuff over the weekend, though the house needs a good tidy before I can settle down and work on code. September 05 Importance of Style... and when to let it goThis body of this entry was written in April... but never made it out of my drafts. I'm going to try again to keep a blog entry going at least once a week. Perhaps every Friday would be good - with possible other extra entries through the week. But I think every Friday would be a good goal. Gamefest 2008 notes are up here: http://www.xnagamefest.com/presentations08.htm The tools team has shrunk down in size as people are poached to help polish other parts of the game. Right now I'm supporting the tools and working a bit on the game too. At one point I was actually in charge of the tools team... though at that point the editor team was just me ;-) Congrats to Sam who had another little girl and took some paterinity leave. He's back at work now and looking after his other baby... Concrete and the editor :-) I don't think I can blog much detail at the moment - I want to write something for the Lionhead blog but not sure what I *can* write about. Or what might be interesting to the diverse community there. So my original draft follows below - a little essay on style... Style in code is a religious thing - something that makes perfect sense to you might look like an abomination to someone else. Beauty truly is in the eye of the beholder. Lets see... Do you like your local variables:
Then of course you have the warts. Lets say for class fields:
Sometimes a standard mixes the above up to differentiate for use... so...
Thing is *you* might be used to something else. *You* might believe in something else. Well time to suck it up :-) I'm still guilty myself of lapsing against the established standard of a project sometimes, because of being used to something else... but as a developer you just want to write beautiful code, right? So lets make an analogy between a book and a code project. Changing style per book (project), well it doesn't matter very much at all. It does mean that developers moving from one project to another will accidentally (or otherwise) slip up though. Per paragraph (file), well I guess it's not so bad. Is it? Per sentence (function) changing style looks really bad. So beautiful code probably has more to do with consistency of style applied rather then the style itself. Spacing is less of an issue then naming, because of the glories of Control+K and Control+D in Visual Studio. Of course that gets rid of tab aligned variable declarations where your equals is always x amount of spaces away from your value. But who wants to maintain that anyway? If you just set up a style in Visual Studio that can automatically be derived... the auto-formatting takes care of the rest for you. This includes sticking braces on separate lines and taking out stray spaces from your parameter lists. Or perhaps putting an opening brace on the same line as the function declaration. I guess the standard I use at work is starting to come through as the standard I use by choice at home. I'm kind of glad the braces go on separate lines here myself :-) May 07 XNA announcement: XNA Game Studio 3.0 Community Technical Preview (CTP) now availableXNA Game Studio, the technology that allows you to develop C# games on the PC, 360 and utilise Live has a new update. Note how "Express" is now not affixed to the end :-) This preview release of XNA Game Studio 3.0 is now available through the XNA Creators Club Online site (http://creators.xna.com), with a final release scheduled for Christmas 2008. Please download and test out the new stuff though, feedback is important to the team! Key pointsFeatures
Limitations· Please note this current CTP does not enable Xbox 360 game development. Only Windows and Zune are supported in this CTP. If you want to build and deploy games for the Xbox 360, you must continue using XNA Game Studio 2.0 for now. · Visual Studio 2005 SKUs are not supported with XNA Game Studio 3.0 and beyond. However, you do not need to uninstall Visual Studio 2005 or XNA Game Studio 2.0, as those products will work side-by-side with Visual Studio 2008 and XNA Game Studio 3.0 CTP. About today's announcementToday the XNA Community Games Platform team has delivered the first CTP of XNA Game Studio 3.0, enabling developers to build games for Zune. XNA Game Studio 3.0 allows all game developers to create unique and imaginative games for the entire family of Zune media devices. This feature gives game developers access to the majority of the XNA framework APIs while retaining a seamless sense of integration with the Zune media experience. Using these tools, developers will have the capability to develop once for all three platforms: the Xbox 360, Windows, and Zune in the final release of XNA Game Studio 3.0. Developers can write one game and target any platform, however, cross-platform networking between all three platforms is not supported. Keeping with Zune media experience, the XNA Game Studio 3.0 CTP integration includes discoverable access to user’s non-DRM music – allowing the user to customize background soundtracks or create real-time visualizations. In addition, the XNA Community Games Platform team has announced the ability to create networked games on Zunes using the built in ad-hoc wireless capabilities. April 29 Slightly obscure .Net - What does the ?? operator do?It's all to do with something introduced in .Net 2.0 called "Nullable Value Types". I like that the shorthand declaration is like a question... I'm a bool? Well that means this bool really has three states, true, false and not set. That kind of thing is useful when dealing with databases, which can have null columns in a table. Or perhaps there is an option for the user which is either true, false, or whatever the default is. You see this pattern (although not using Nullables) in the ThreeState checkbox - where the third state is "Indeterminate" and the checkbox is shaded and unchecked while in that state. Below is a small snippet illustrating use of the ?? operator with an int? type. using System;namespace NullableNoddy{ class Program {static void Main(string[] args) {int? nullable = new int?(); //Declare. new Nullable<int>(); is equivalent. Console.WriteLine("nullable is {0}", nullable); //Not set, so nothing is output after is int test1 = nullable ?? 1; //Nullable is null (HasValue is false), so 1 is used Console.WriteLine("test1 is {0}", test1); // test1 is 1 nullable = 2; //Set value using normal intint test2 = nullable ?? 1; //Nullable is set (HasValue is true), so current value used Console.WriteLine("test2 is {0}", test2); // test2 is 2 } } } If you are interested, the MSDN has a good launch point in to deeper documentation: http://msdn2.microsoft.com/en-us/library/1t3y8s4s(VS.80).aspx April 28 Fable 2 Mentioned in OXM Podcast and Blog PonderingWell this being the first game I've been on the team for professionally... even if I'm just helping out on the tools side... I get goose-bumps every time I hear someone talking about it in the media. I'm trying to figure out how often I should blog too. Once a week enough? Twice a week? I am thinking twice a week is probably enough content for a semi-professional blog - which I guess this is trying to be. I have also decided the format of the blogs will try and stick to around the title and not veer too far off that. The length of each blog entry I'll try and keep to something you can read in a couple of minutes or less. Any more then that and I'm probably abusing your time, and well it could probably be broken up in to multiple parts anyway. April 22 Buddying - Code quality control without the paperworkEvery line of code that is entered in to the Mainline (release branch) either through integration of a branch to main... or a smaller change set directly on that branch, gets seen by at least one other coder. In fact, many of the developers also monitor the diffs (differences between what was there and what is in there now) - and have them mailed to them, so the potential of someone seeing something wrong and alerting the submitter early to something wrong is increased. Of course, having diffs mails to you also exposes you to parts of a large system you might not otherwise see. The quality of these buddying sessions relies on three things:
The best buddies sessions come from when a coder is open to criticism from the buddy, the buddy being able to constructively critique the code without putting the coder on the defensive (and resist rewriting it in his own image!), and the change list is reasonably small so the buddy doesn't glaze over towards the end. It is a good way of spreading knowledge, a great way of getting to know your team, and awesome for stopping some real howlers getting in to a build. I guess this is somewhere between pair "extreme" programming and normal programming - and personally I really enjoy the balance it gives. It makes you think really hard about what you are about to submit, because you know you are going to have to explain it. Of course, some times your buddy might come up with something you don't necessarily agree with - and you have to talk it out... or even bring in another party to sort out the dispute. But those times are way outweighed by the pleasant experience of knowing your code is much less likely to break something. Often, during a buddy the coder will self-critique, or realize something while explaining it to the buddy. Buddy goes away, coder fixes, buddy comes back and everyone feels better about that code. Any rank of developer can buddy any other rank too. So when something is checked in, it will have your name on it, and that of your buddy. What is important though is that as far as my experience here thus far - it is not used as a big bat to splat a developer or two with if something goes wrong because of that change. Obviously if it's broken, you fix it... but if the coder is away or unavailable, perhaps the buddy can fix it. It is also not used as some kind of metric here... not as far as I can tell anyway... it is just about the quality of the code. I tried to set up something similar at a different employer with some colleagues... however it got twisted. Management took over and wanted complicated forms to be filled out and signed... basically there was an undertone of blame and shame over code quality... it was a little too beaurcratic for my tastes. It made the developers feel watched, defensive and resentful... as some people were immune... some had absolute veto... etc. Bring in an all powerful third party company that could veto anything in house and well... cue a massive dip in the development department morale. So "buddying" can have a very positive effect on bugs introduced, spread knowledge and encourage discussion among a team. When executed correctly, everyone is happy! April 21 Tutankhamen Exhibition at the O2 in LondonThe Tutankhamen exhibition was awesome. For whatever reason I just assumed it would have the casket and mummy of the boy king - but I think in the back of my mind I knew that stuff wasn't travelling around anymore. Still the stuff they had on show was fascinating. Unfortunately for my ever-suffering wife, I was mesmerised by the workmanship and ancient religious rites linked to the artifacts... so we did spend a great deal of time there. There were classes of school children running around too, drawing pictures and pestering their teachers (and at some points adults just wanting to look at the things!) - I think some were really taking it all in. Others were more interested in someone dropping a tissue, then playing some kind of impromptu soccer game with it until one of their teachers stopped them. A couple of things stood out - one was the mini casket used for holding the Tutankhamen's liver... there were ancient spells carved out inside that little mini version of what one day I really must try and see. For Amiga people who liked deluxe paint, you'll know the casket I want to see! :-) The most expensive part of the trip was the travel... despite not living that far away from London. Danni manage to find a four star hotel for 38GBP including tax... and it was a lovely room. We ate out in Covent Garden, using some 2 for 1 vouchers that we got with the tickets, which mitigated that cost some what. We got a few pictures of things around London - it was my first time to Canary Wharf - and it seemed kind of futuristic to me with it's heavy use of glass on shiny metal. Also it was my first visit to what was the Millennium Dome... I wonder if the architects were going for a kind of Crown shape. It was cool to think of that scene at the beginning of one of the bond films exploding around that place. Windows Vista SP1 Installed on LaptopInstalled the Vista Service Pack 1 on the laptop. I did try and download the full install for all languages, because I keep the laptop en-uk where possible... even if it does have an American background (and keyboard!) For some reason the install from MSDN wouldn't have any of it, and gave me an error code I didn't write down. On reflection, probably should have just to have a record of it. Anyway using Windows Update it installed just fine - and although I may be trying to *will* this... it does seem more responsive and faster. April 20 Windows Vista Wireless Networking - Why can one profile see and connect to wireless networks... but not mine?I had a strange problem happen to me over Christmas, where my wife's profile on the laptop could see wireless networks but mine couldn't. This was very frustrating, as I had to log in as her - and then switch to me with that network connect to the hotel still open. Any network that was paired seemed to be fine. First of all I broke out regmon, then got a message saying it was replaced by the excellent process monitor (download). With that amazing tool at my disposal, I discovered a locked down registry was not my friend. During opening up the blank "Control Panel\Manage Wireless Networks" Window, this was one of the lines in the log: 6653 17:32:26.8356089 Explorer.exe 4000 RegOpenKey HKCR\CLSID\{88D96A05-F192-11D4-A65F-0040963251E5}\Progid ACCESS DENIED Desired Access: Query Value Looking up that value in regedit.exe - I found it was the COM Component for "XML DOM Document 6.0". That sounded kind of important to me. Possibly some way internally of collating results or displaying them? I don't know, only guessing. So right clicking on that {88D96A05-F192-11D4-A65F-0040963251E5} folder I found Danni's user there and not mine... and not the Administrators group either. Ah ha! So I added myself with read privileges and restarted. Next time I opened up that "Control Panel\Manage Wireless Networks" Window, I could actually see the wireless networks again in my own profile. I could have also added the Users group with read only access and that probably would have done the trick too. Windows Vista Hidden Network SettingsDid you know about what the Alt button on the keyboard does in Vista? Apparently magical things sometimes. Some programs... I'll use XNA Game Studio Connect as an example... like to have the network interface being used to connect to your Xbox 360 to be the first network interface. I believe it's something to do with UDP broadcasting, and possibly getting back the reply over an interface you aren't expecting. In Vista you can reorder the network cards by using the special advanced menu that pops up when you use the Alt key:
April 18 The Tower of Cam(Posted on Lionhead the other day, figured I'd post it on my blog too) Since the last time I’ve blogged, a certain senior developer whom I shall call “Sam” (he blogged a little while back) has had a webcam set up on his desk (Fable 2 Cam). Now and again it points towards my screens and off in to the distance you can see artists in the gloom, working away making Fable 2 look incredibly cool… surrounded by everything from Star Wars action figures to Pokemon and Scooby Doo. Who wouldn’t want to work in a place where there’s an epic battle between ships of the Empire and Rebel Alliance hanging from the ceiling? Very recently dev Sam has constructed a tower for that web-cam. In true engineering tradition that of course involves cardboard and sticky tape. I am sure it will not be long before version two of that tower comes along… perhaps it even deserves a little picture somewhere. :0) If you are lucky and watching the webcams… now and again you might see a test level running on my dev-kit - but Recently I have continued work on the editor bits of the LHTS
(Lionhead Text System), plus some other parts to do with triggers for
level exits. Georg checked in gigabytes of final recorded speech to
our repository… and on Monday Louise did a little demo to the team with
that content in. It is great hearing *actor to be announced* in Fable 2, especially sounding a little corrupt… I didn’t really think of him like that before ;0)
Next up for me is adding extra bits to the stuff that allows the
editor to update the game running on the 360 with data live. Should
be interesting! GDC 2008 Presentations are up!Here’s an email I received the other day. This seems like a good way of testing out the email blog stuff of Live Spaces :0)
From: David Weller
I’m pleased to announce the availability of the GDC presentations on MSDN for public consumption, effective immediately! The quality and quantity of the presentations was second to none, and we should all thank the speakers for their effort in creating and presenting these decks. I would also like to personally thank Mitch Walker and Mark Seminatore, who helped insure that the decks were cleaned up and ready for the public.
Without further ado, here’s the complete list of decks:
XAudio2 - Audio Building Blocks For The Future Speaker: Brian Schmidt
Game audio has evolved well beyond simple wave-file playback with 3D positioning. Now, a great sounding game needs programmable DSP effects, submixing of sounds, surround processing and more. XAudio 2 is the new low-level audio API for Xbox 360 and Windows, providing these features and more through a highly efficient software mixing engine. XAudio 2 supplants DirectSound on Windows and XAudio on Xbox 360, allowing you to write code that is easily portable between Xbox 360 and Windows. This session will cover the XAudio 2 architecture and XAudio 2 features. It will also show programming examples for solutions such as occlusion and environmental modeling, how 3D is implemented and its use of data compression.
Speaker: Cameron Egbert
Microsoft continues to add exciting new features and tools to the Xbox 360 XDK. Recent additions include XAudio2, XMCore, APIMon, PGOLite, and /Analyze support. This presentation provides an overview of these new features and discusses best practices for how they can be utilized to create great games.
XNA Game Studio 2.0 for Xbox LIVE Arcade Speaker: Mitch Walker
One question resounds as more and more developers discover the productivity gains from XNA Game Studio. How do you make money from the games you create? This talk offers a sneak peek into the XNA Arcade Extensions to Game Studio 2.0 along with details of how professional developers can take advantage of XNA Game Studio to produce commercial games.
Understanding XNA Framework Performance Speaker: Shawn Hargreaves
This talk is for programmers who want to understand how the XNA Framework works on Xbox 360, and the implications for writing high-performance code. The talk explains when and why the framework transitions between the Xbox user and supervisor modes, and why should you care. The talk also presents best practices for writing efficient graphics and math code, how to use multiple cores to parallelize your game, and which XNA Framework APIs can be called while doing so. Finally, the talk demonstrates what tools are available for investigating performance on Xbox 360, and how Windows tools can help you understand Xbox 360 performance issues.
The Evolving Windows Gaming Platform Speaker: Chuck Walbourn
The Windows platform must keep with the times, and gamers drive the bleeding edge of the technology curve. This presentation covers recent developments in the Windows platform for games with Windows Vista Service Pack 1, Direct3D 10.1, and the on-going 64-bit technology transition as well as strategies for coping with and moving beyond the long-standing 2 GB memory barrier.
Speaker: David Cook
Everybody’s favorite profiler Pix has gotten even better. Hear about the new additions, including continuous capture, Dr. Pix warnings, optical drive monitoring, and more. Learn how to use Pix to investigate performance spikes, detect anomalies, and improve load times.
Networking with the XNA Framework Speaker: Shawn Hargreaves
Playing games by yourself can be fun, but it’s far better when you can play with others, whether cooperatively or head-to-head. Creating multiplayer games using XNA Game Studio, however, requires networking support in the XNA Framework for both Windows and Xbox 360. And that support simply wasn’t there…until now! With the release of XNA Game Studio 2.0, we have augmented the XNA Framework to include support for networked games. Come learn about networking in the XNA Framework, what is supported and what’s not, and how you can enable multiplayer support in your games.
Speaker: Ian Lewis
Multithreaded programming doesn’t seem as hard as it used to, but it’s still challenging to wring the greatest amount of performance out of multiple processor cores. From experience with multiple game developers and Microsoft’s internal SDK teams, we’ve found a set of best practices to follow, as well as some common techniques that are best avoided. We’ll present tips and tricks for getting the most out of multiple processors on Windows and Xbox 360, and discuss new Microsoft technologies that can help make high-performance multicore programming a little easier.
Games for Windows - LIVE Just the Facts Speaker: Ray Thompson
With Games for Windows – LIVE, Microsoft is extending the Xbox LIVE® gaming and entertainment network to Windows. Learn about the features and find out the basics. This presentation will help you understand what it takes to ship a basic single-player game, and also help you understand the differences between the platforms as you move a game from Xbox 360 to Windows.
Speaker: Frank Savage
This talk is for those who want to understand the inescapable performance consequences of the managed programming method: the things you cannot avoid and the things you can. Comparing and contrasting the consequences for the .NET Compact Framework and the classic .NET runtime, the talk explains the reasons for these overheads, the benefits they provide, and what practices minimize the associated costs. Additionally, we discuss some commonly occurring costs, such as boxing, that aren’t inherent to all managed code, and we offer some tips for minimizing those costs.
D3D10 - Getting from 0 to 60 Hz Speaker: Kevin Gee
Learn about performance tools and best practices for driving the DirectX 10 renderer in your game from XNA Developer Connection's experiences in the trenches. This talk identifies common issues from developing high-end graphics experiences on Windows Vista using DX10 and outlines approaches to mitigate those issues.
Extending the Content Pipeline Speaker: Frank Savage
The XNA Framework Content Pipeline allows developers to use Visual Studio to build their art into resources for use with the XNA Framework and XNA Game Studio. This talk covers how to create new importers and processors using C# to extend the functionality of the Content Pipeline as well as how to debug these importers and processors using XNA Game Studio. We go in-depth into the creation of the code for the importers and processors and do hands-on debugging of the resulting processor and importer to give the audience a clear idea of how to work with and extend the Content Pipeline.
Advanced Debugging with Managed Code Speaker: Matthew Picoccio
XNA Game Studio offers a robust debugging
experience that can greatly enhance a developer’s ability to investigate a game
as it runs. Developers of managed games have many debugging techniques at their
disposal, but not all of them are self-evident. This talk covers advanced debugging
techniques useful to game developers, including demonstrations of powerful IDE
debugger features and other tools provided by Microsoft.
|
|
|