Managed World

Techno-babble from yet another babbler RSS 2.0
# Sunday, October 01, 2006

Hey folks. After a good amount of time away, I have decided to come back to game development land. This time, I will continue work on my game Spaceballs (a Geometry Wars clone), only using XNA this time around. I can't believe I'm going to admit this, but to give myself time to do this, I have even canceled my World of Warcraft account (again). I just have way too much stuff on my plate, and if I want to get back into game development, something has to go (thanks go to Chris and George for encouraging me to do so simply by reading their posts).

So, I've started "porting" Spaceballs to XNA. Maybe not so much porting, as re-writing (as I want the game architecture to reflect the new XNA environment and framework). My first impressions of XNA? Oh boy, does it kick butt. As a guy into design patterns and such, some of the first things I notice are the architecture of a framework I'm working with. And, truth be told, the XNA framework is one of the first frameworks (not including the .NET Framework) that I have just LOVED the architecture of. The separation of GameComponents from GameServices from the Game itself is fantastic. The way that the GameServices collection in the Game serves as a ServiceLocator of sorts is just fantastic. I'm so used to having the "why did they do this? This is crap! Oooo, that's ugly" kind of thoughts with other frameworks, I'm just so pleasantly surprised to not be having those thoughts with XNA (quite the opposite actually).

Now, if you're not too familiar with a Services (ServiceLocator) pattern, then I can see how the distinction between GameComponents and GameServices might be confusing. I hope to shed some light on that in the future as I will be planning to resurrect the tutorials from before (perhaps this time in Screencast form).

I have found that when working with the XNA framework, I have noticed a good amount of my old code from Spaceballs simply disappearing because the Framework is handling what I need it to handle. That's a feeling I like to have. Not only that, if used properly, you truly start to build re-usable components that you can use in various games since you're encouraged to think about GameComponents and GameServices.

One of the other things I'm looking forward to is that we, as game developers, can finally stop talking about "the perfect game loop" and those sorts of conversations, and start talking about the cool GameComponents we are building and such. I think the XNA framework could be a huge step forward in providing us a way to share patterns and practices with each other. Not only sharing patterns and practices in a "word of mouth" sort of way, but by actually sharing the GameComponents themselves with everyone. Man, there are exciting times ahead of us as hobbyist game developers.

At the rate I'm going though, it might not actually take that long for me to get back to where I was when the GWB game development contest finished. Hopefully then I'll crank through the tutorials/Screencasts. I'm currently shooting for sometime around Christmas time, but it might be afterwards.

I would like to give one shout out right now. David Weller and team, GREAT JOB. You guys did such a good job developing this product for us. If it was just for PCs, I would still brag about how cool it is. But considering it will be XBox capable as well? You guys truly are amazing. Keep up the great work!

 #       Comments [0]
# Friday, September 29, 2006

Hello everyone, and welcome back to  the “Feature Of The Week” newsletter. In this week’s newsletter, we will continue on the “Transactions Bandwagon” by discussing the Transactional Registry. This newsletter will be short and sweet as, truth be told, this feature still needs to have a bit more documentation than it has today.

So, sit back, relax, and enjoy the Longhorn Server Feature Of The Week!

What is the Transactional Registry? The Transactional Registry (TxR) is an enhancement to the Registry that allows all registry operations to be performed within the scope of a transaction. This is made possible by a new transaction infrastructure in the kernel that allows operating system services to participate in transactions via the new Kernel Transaction Manager.

What scenarios does this enable? The Transactional Registry (TxR) is also fully capable of communicating with the MS Distributed Transaction Coordinator, meaning that TxR operations can participate in transactions that are leveraging any other Resource Manager that DTC is capable of working with. What does this mean to you? It means that you can now have an application that not only encompasses database calls, operations to the file system, as well as operations to the Registry.

Preview: Next week we will take a look at the technology that makes the Transactional NTFS and Registry possible: the Kernel Transaction Manager. Stay stuned!

 #       Comments [0]
# Monday, September 25, 2006

Why Shaun, Why?!?!? Why did you have to be on the cover of Madden this year? Yes folks, the Madden Curse strikes again. The Madden Curse has been going strong since 2001, and it appears the trend has continued.

Tonight, it was accounced that Shaun Alexander would be out "indefinitely" with a broken foot. What a surprise. I suppose those of us that knew about the Madden Curse knew that it was a matter of "when", not "if." Damn. It's a good thing the Seahawks have a good backup running back like Maurice Morris (former UofO stand-out).

Oy!

Posted in Personal
 #       Comments [0]

Yay, I can finally talk about this. For those of you that haven't heard yet, the incomparable Rory Blyth, the smartest man, is joining the C9 team.

Rory is going to make a GREAT addition to the C9 team and I expect to see some great stuff coming from him in the future. Of course, I'm also psyched because it means that he will most likely be working just one or two hallways away from me :).

Congrats Rory!

Posted in Personal
 #       Comments [0]
# Friday, September 22, 2006

[Update: Added link to RDC Whitepaper and blurb about RDC dogfooding in DFS Replication (thanks cfsbloggers)]

Hello everyone, and welcome to the second installment of the “Feature Of The Week” newsletter. This week, we will take a short little peek at a feature coming in Vista and Longhorn Server called Remote Differential Compression.

So, sit back, relax, and enjoy the Longhorn Server Feature Of The Week!

What is Remote Differential Compression? Remote Differential Compression (RDC) allows applications to synchronize data between two computers in an efficient manner. The synchronization efficiency is made possible by using compression techniques to minimize the amount of data sent across the network.

What makes RDC different from other differencing mechanisms? RDC is different from patching-oriented differencing mechanisms, such as Binary Delta Compression (BDC), which are designed to operate only on known versions of a single file. RDC makes no assumptions about file similarity or versioning. Because differences between files are computed on the fly, RDC is ideally suited for synchronizing files that are different or have been updated independently.

What scenarios does this enable? RDC is suitable for applications that move data across a wide area network where the data transmission costs outweigh the CPU cost of signature computation. RDC can also be used on faster networks if the amount of data to be transferred is relatively large and the changes to the data are typically small.

Dogfooding RDC. It's important to note that we are actively dogfooding RDC internally. One of the current examples of that dogfooding is that RDC is actively being used for DFS Replication, available on Windows Server 2003 R2.

Resources

Enjoy!

 #       Comments [3]

Hello everyone, and welcome to the “Feature Of The Week” newsletter. In the Feature Of The Week Newsletter, we visit a new feature coming in Longhorn Server every week. The goal is that these are nice, short, and efficient to minimize the amount of effort required by you, the reader. With every Feature Of The Week, we will provide links to more resources in case you want to spend more time diving into the feature covered.

So, sit back, relax, and enjoy the Longhorn Server Feature Of The Week!

What is Transactional NTFS? Transactional NTFS is an enhancement to NTFS that allows all file operations on an NTFS file system volume to be performed within the scope of a transaction. This is made possible by a new transaction infrastructure in the kernel that allows operating system services to participate in transactions via the new Kernel Transaction Manager.

What scenarios does this enable? Transactional NTFS is also fully capable of communicating with the MS Distributed Transaction Coordinator, meaning that TxF operations can participate in transactions that are leveraging any other Resource Manager that DTC is capable of working with. What does this mean to you? It means that you can now have an application that not only encompasses database calls, but also operations to the file system as well (think of Document Management solutions). With transaction enhancements being made to the new SMB 2.0 protocol, you can also now contain distributed file operations within a transaction as well.

Resources

Enjoy!

 #       Comments [0]

Contact

Email Me Send mail to the author(s)

Calendar

<October 2006>
SunMonTueWedThuFriSat
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

About this site

Jason Olson's thoughts on Programming, Games, Music and Life in General

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2008
Jason Olson

Sign In
All Content © 2008, Jason Olson
Theme based on 'Business' created by Christoph De Baene (delarou)