I have changed the encoding settings for the blog, because it was spitting out wrong characters when posting from Windows Live Writer.
I have changed the settings now and hopefully it should fix it… let’s put a lot’s of unusual characters for the English language like ( ç â ã á ) and see if they show up properly. Reason for this is that I want to be free to post in Portuguese (Português-BR) if I want to. Although I think this should be pretty rare.
There is this new tool that came in with the New Windows Live Messenger that is the Windows Live Writer. A Blog Writer that you without the need to log in into you blog’s dashboard, and you can save local drafts, and has spell checking. Probably the one that is bundle with my Microsoft office pack. Neat. Let’s see if it works… testing… now.
After being able to write my Level Data from XSI and read it in XNA in a tidy XML form I decided to tackle a different problem: The fact that in a completely empty space you have absolutely no notion of where are you going to and from.
I decided for a neat Point Sprite particle system to dot some “space dust” around you.
This implementation is on it’s very early stage and it’s just an example of what is going to feel like. What you see in the video below is basically a “Box full of sprites”. Note that their size does not change with the distance, something I can probably resolve by rewriting the “.fx” file. I will need to do that anyway to have teh Particle system deasling with things like particle life, speed, duration, render distance, etc.
Then I need to write individual Particle Settings and systems for the different needs I have such as explosions, Projectiles, trails, etc.
I have to say. I am amazed at the progress I have made on my little project over the weekend. Nothing that I can post a screenshot of though because the progress was made entirely in the background.
I got my bearings with XSI, I come from years of tinkering with 3Dsmax so I still prefer it, but I am confortable with the interface now and I am actually very impressed at the level of exposure that XSI offers to the end user, so scripting for it has been rather good. Not that I needed anything too complex but with Max I never even tried dwelling into MaxScript, and XSI offers an advantage here, you can script in two languages “out of the box”, VBScript and JScript, and you can add Python and Perl if you can be bothered to install the Addons.
I decided to go for the VBScript (which I am finding a bit convoluted) mostly because of the available documentation on it. And in two days I was able to completely write my own self-installing plug-in that exports all the Data I need from XSI into an XML document that I can parse later on on XNA.
So, basically, counting the time spending googling and thinking about my pipeline I was able to create a crude, but functional, Level Editor for XNA using the XSI Mod Tool.
Right now, it comprises of the amazing ability of exporting type, name, position and rotation of every Model in the Level (Scene). Later on I’ll be adding functions to create specific entity types from the list of available entities. And Voilá, I got myself a neat Pipeline.
Now onto working on the XML Serializer to actually use the data I churn.
A little video of how the thing looked a week ago (it didn’t change a lot yet)
NOTE: I also managed to add support for the Xbox360 pad, so I can fly around the environment easily (much better than the keyboard).
My little XNA project is moving along. Well, tripping along is more like it. I spent the past three days trying to work out proper transformations for my camera because I they were rotating (in all axes) but the rotations were relative to the world. So they didn’t work properly for a flight camera.
Turns out that my calculations for the camera rotation and movement were only updating the position, so the rotation was aways beeing calculated from the world Axis, using values for Yaw, Pitch and Rotation that were just virtual and were not actually changing the avatar.
So I read somewhere (and by somewhere I mean Riemers XNA tutorial) that I needed to use Quaternions to do the transformations easily.
So after reading his tutorial and reading the Wikipedia page about Quaternion Rotations while lying in the bed before sleeping, I ended up dreaming the solution to my problem.
I had to create a Quaternion for the rotation of my invisible avatar, and use that to work out the rotation Matrix for the camera and updating the original Rotation Quaternion after the camera was updated.
Now. It works, but I don’t think I fully grasp what I’m doing. It’s like knowing how to read out lout a spell from a grimoire without actually knowing what the words you read mean. That can lead to unforeseen and even catastrophic consequences.