Managed World

Techno-babble from yet another babbler RSS 2.0
# Thursday, April 19, 2007

Okay, I admit it, I'm a WoW junkie. I spend WAY too much time in WoW, and not enough time doing the things that actually matter. Well, until recently (hopefully the trend continues). I started diving back into XNA again. Only this time, I'm diving back into it from a 3d perspective, not the 2d route I have always gone before. But why the sudden change?

Two months ago or so, I sent out an idea to an internal XNA discussion list at Microsoft that a bunch of us "hobbyists" should get together every other week just to geek out and do some game development after work. People loved the idea, so a bunch of us have been getting together after work to write some code and show each other what we are doing. Perhaps the coolest part is that since we are doing it in the same building where the XNA team is based out of, several XNA team members have dropped by just to check out what's going on.

In fact, at the first get together, Mitch Walker and others dropped by. Mitch had an idea about doing a month-long game development contest. So, that game development contest just concluded last Tuesday night. Oh MAN, were there some AWESOME games that people worked on. Me, being a total and utter dork, did not have anything to show. Truth be told, I had been writing next to NO XNA code, so there was literally _nothing_ to show. However, seeing some of these great games that were done, I figured it was about time to get back into it again. With how supportive this "user group" (of sorts) has turned out, I look forward to actually participating for a change.

So I'm back diving into XNA again. Instead of doing the usual 2d programming that I've always done in XNA, I figured it was about time for me to get involved in the 3d world. The game I'm going to do uses all the art assets from Spacewars and is going to be a vertical-scrolling shooter (like Ikaruga). Tonight, I decided it was about time to start prototyping the controls out and to make sure I could figure out how to display a 3d model (and show it from the top down).

Here's what the Shox Tonera prototype looks like after this evening:

I know that's not the best resolution, but you can at least see the ship (sort of). When you go left or right, the ship "rolls" to that side. When you go forward or backward, the ship "pitches" towards the direction. This is actually quite easy because the ship is technically in 3d. While the screenshot looks like a 2d game, it's actual 3d with the camera up in the air pointed straight down.

Also, you can see that the playing field is just the middle. I got bounding working so that the ship cannot leave the playing area. That was actually not too hard to do (easier than I thought it would be). I'm using the View and Project matrices to "project" the ship's position in the World into the actual screen coordinates. Then I can used the projected screen coordinates to ensure that the ship will not leave the area the playing area contains.

For those that are familiar with the Spacewars starter kit, I am just reusing the art assets from that in my own game. I will continue to do this for as long as possible. It definitely saves time.

The next thing I would like to do is to create the firing action of the ship using Point Sprits for the visuals. Hopefully either tomorrow night or this weekend I will get around to that. I would also like to do some refactoring to clean up the code. Tonight, I just threw it all in the game class for now to see if I could get it working (quite the departure from my usual behavior as any of my friends can attest to). I just need to be very careful not to get too wrapped up in refactoring and architecture like I usually do, because then I won't make _any_ progress on the game.

So why "Shox Tonera" for the name? Because I'm an unoriginal bastard, that's why. "Shox Tonera" is simply the letters from "XNA Shooter" scrambled up. I personally felt it sounded kind of cool too, so if you disagree, I don't want to hear about it :P.

Posted in Game Development | Programming | XNA
 #       Comments [2]
# Wednesday, April 04, 2007

I recently posted the second screencast in my new "Developer, Meet Server" screencast series. This latest screencast covers using Transactional NTFS in a service-oriented environment via WCF.

Enjoy!

 #       Comments [0]

Andrew recently watched my screencasts and had some great questions that came up around how Transactional NTFS behaves with the file system. So, I figured I would answer them here. So, if you want to see the context around his questions, check out his post.

Here's the paragraph with the questions:

I wonder what happens to files that never get committed - ala a long running transaction. They have to be taking up file space. Jason says not even Windows Explorer knows about them, but they have to exist somewhere. What if they overflow? Is there a way to clean house? If the poop is invisible, does it still stink?

Great observations and questions Andrew! In the case of a long running, open transaction, the files will exist on the disk. Hence, they are certainly taking up space on the disk. If you have 256 MB of free space on your disk, and try to write 257 MB of data to the disk within a transaction, you will get an "out of space" error like you would outside of a transaction.

Is there a way to clean house? Yes, rollback or commit the transaction. On rollback, any changes made within the transaction are rolled back, and then consequently removed form the disk.

But what if my server crashes in the middle of a transaction. Would I have turds floating around the file system? No, you would not. When an NTFS-formatted volume is mounted in Vista or Windows Server "Longhorn", any transactions that are "in-doubt" (the transaction manager is no longer around and we have no clue on the status of the transaction) will be rolled back automatically, effectively removing all the changes from disk. So, in that sense, you would not have any file turds you have to clean up after a system crash (like you would have if you were doing a "temp file -> rename" type of methodology.

Now, as is usual in transaction systems, you have to be _very_ aware and _very_ cautious of long-running transactions as it could cause some long-term problems that you don't want to deal with. So, there certainly are scenarios where Transactional NTFS just is not a good fit. As tends to be the case with all technology, make sure you are using the right tool for the right job :).

 #       Comments [3]
# Friday, March 09, 2007

Welcome everybody to the inaugural, first ever, grand opening, “opening the doors to the public” celebration day kick-off for the new “Developer, Meet Server” screencast series. I am your sincere, humble (as ever), gracious and wonderful host/chef/tour guide Jason Olson.

In this series of screencasts we will be diving through all the various cool developer-oriented enhancements on the Windows Server "Longhorn" platform that developers can leverage to build robust and powerful applications. Specifically, in this first screencast, we will take a quick peek at Transactional NTFS. In future screencasts, we will go into a more detailed look at Transactional NTFS, so think of this as a quick introduction.

The screencast can be found in one of the main tubes on the Intarw3b known as the ever-lovely Channel 9: http://channel9.msdn.com/Showpost.aspx?postid=289816.  

So sit back, grab a cup of coffee/tea/InsertYourFavoriteLocalTastyBeverageHere, and enjoy this screencast.

 #       Comments [4]
# Tuesday, March 06, 2007

Rory is doing some videos at Channel 9 on the Microsoft Research TechFest event happening at Microsoft this week. If you want to see how Microsoft's own version of Area 51 is shaping and changing the future of technology, you should ABSOLUTELY watch these videos.

The first video has just been released: http://channel9.msdn.com/ShowPost.aspx?PostID=288554.

There is a lot of cool stuff coming out of Microsoft Research. Even Google won't stand up to some of these technologies :). We shall prevail :P. It's important to realize that Microsoft is filled with geeks just like you. We want to create cool stuff that changes the world. And what better way to emphasize that than taking a dive into Microsoft Research :).

Enjoy the video. And feel absolutely free to send this link around. This is truly exciting stuff coming from Microsoft and most geeks should be able to find some type of excitement in it :). 

Posted in Conferences
 #       Comments [0]
# Saturday, February 03, 2007

I think the first time I came across this tip was on Presentation Zen, or it might have been on Creating Passionate Users. I apologize for not giving credit where credit is due. Regardless, if you are a public speaker and you are not subscribed to both of these blogs, you need to be. Go do it now, I'll wait........ Good, let's start.

As part of getting ready for a large internal conference at Microsoft coming up this next week, I've been hearing my fair share of talks lately. One of the first tips I can give you presenters out there: you don't have to prove you deserve to be giving the presentation.

The time for presenting and selling yourself is in order to get the presentation in the first place. Once you have "won" the slot and are giving the presentation, you don't have to sell yourself anymore. If people show up at your talk, you have already won their attention. Now that you have their attention, KEEP IT. There is almost nothing worse than going to a talk and sitting through ten minutes of "ego stroking" at the beginning. Unfortunately, first impressions are big, and if you bore the heck out of your audience for the first 5-10 minutes of your talk, it's going to be really difficult to gain their attention back.

But you may ask: "If I don't talk about why I'm credible in the first five minutes, then how do I do it?" There is one popular saying that applies here: "The proof is in the pudding." Show your credibility on the subject by the content of your content. Now matter how credible you might be in real life, a boring or inaccurate presentation is going to spoil that.

So remember, you deserve to be there because YOU are the one giving the presentation. Forget about the five minute introduction, just dive into the core of the talk and enjoy the ride :).

Posted in Presentation
 #       Comments [5]

Contact

Email Me Send mail to the author(s)

Calendar

<April 2007>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

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)