Saturday 24 March 2007

MS TechFest Demo

I just came across this video of a demo at a Microsoft Research TechFest booth, but it's probably better if I don't explain it in detail here. Simply put, it's a must-see for an XNA developer and non-developer alike - one of the coolest example of interfacing modern hardware together with some great DirectX gaming technology (a lot of which is XNA in fact!).

My engine/game/world editor - first public demo

At last, my first useful post. Nothing to be hugely excited about, but if you're an XNA/.NET game enthusiast you might like to take a look at a little tech-demo of my engine (entitled MyRPG) and world editor.

Download the 24-03-07 release here.

IMPORTANT: I've found a bug where no error is returned if you do not have the OGG Vorbis codecs for music installed. I will try to package them with my next release, but in the meanwhile please use this link to download and install the codecs (< 1MB).

Any comments are welcome, but remember it's only a little tech demo and has huge gaps. (I have hesitated calling it an alpha version even!) Anyway, have fun with that... I hope to make a following release with a lot more fun aspects (including a flashy particle engine) in the coming days.

Tuesday 20 March 2007

Letting you know I'm still here...

Ok, so this blog has just begun and I've struggled to make my second post in good time :P...
Anyway, I've had some interest in my XNA video/animation library from other developers, and a few possible improvements have come up through my own ideas and those of others. Expect an optional sound stream and even screenshot video capturing in the near future (no guarantee yet though!). My engine demo is slowly improvement and I'll be making a "playable" release (if we're lucky with some fancy particle effects too! - based on the Mercury Particle Engine). With remoting, that's on hold for a while, thanks to the complete lack of information to pass complex types, as I ranted about in my previous post. In, summary, apart from this little bit of XNA you can't expect much for certain, but I will do my best to guarantee that it will be a useful and extensible add-on to any XNA game!

Wednesday 7 March 2007

"Quick" Intro

Alright, so I've created this blog mainly to post about my little (or sometimes rather larger) projects and potential ideas that I'm working on, which means a lot of .NET related stuff. At the moment, this looks like it's going to be XNA (for Windows) and my attempts at a 2D game engine. Of course, I can't resist having a few smaller side projects which usually focus on one or two cool parts of the framework.

Also, I suspect many of the posts will just be links to articles or other blogs on things I randomly come across in my searches. I've already built up a pretty solid collection of links on all sorts of great topics. It's just a matter of filtering through them and passing them on to you now.

As with most blogs, I'm not yet sure where it will take me but in the short term, you can look forward to:
  • My library for playing animation/video in XNA... this seems like a much in demand missing feature of XNA. In addition, I've started on a Music class, which should hopefully mean no more down-sampling your huge WAV files until they get crackly and trying to fit them them into XAct without doubling the total size of your game.
  • Some snippets on how to set up a useful remoting app in .NET (really, an beautifally simple way of getting two programs, whether on the same machine or miles apart, to communicate) - something that many coders have tried to create or replace without even knowing it exists. It seems that even the networking devs like to stay away from this area, and certainly the many newbie articles you might find are fairly useless for doing much more than a "Hello World" across two processes. This is a new area to me, but I've been doing a good bit of experimenting and you might like to know that remoting isn't just slow SOAP/TCP channels but has an IPC method too - that's a Windows equivalent of pipes, for Linux/Unix fans.
  • Finally, an open-source obfuscator for any .NET executable. Ok, don't lose interest yet - I'll be explaining exactly how it works in a future post. In baisc terms, the primary purpose of the thing is to protect executables from being disassembled by mucking around with the MSIL (a friendly, text-based language at a similar level to VM byte code). .NET notoriously has the poorest security against reverse-engineering of any language out there. I suspect even Java, which also uses a VM, has at least *some* measures. And wait - before you criticise the irony of making OS sofware to encourage the development of closed-source, realise that some people really do need to protect their "intellectual property". That's why if this succeeds, it will be the only obfuscator for .NET that's both full-featured and free.
Ok, that's all I have to say. I don't want to defeat the whole purpose of a blog by condensing everything in an essay now, eh? Now hopefully I'll be able to make pretty regular posts here - and expect some good news if you're an XNA developer, as I'll be posting and explaining that library in a day or two.