XNA has been really quite nice to play with, a pleasant change from the grind of UDK or Source where everything is done for me, and UI is simple – a lie on Source mind you. Building the Hades POC out in XNA has been fun because it feels like I have been on an educational adventure, experimenting and rebuilding portions of the game slowly and analyzing the results then rehashing it and repeating. Of all of the elements/tools in XNA that I’ve been able to use, tripped over and even those I thought I understood but didn’t one stands out – I love the fact that components exist.
In a moment ill show you how I used components to ensure that my screenshot mechanism never includes the debug information but always includes the screen, also known as the back buffer.
Disclaimer: All of the code & discussion below refers to XNA 4.0
I occasionally get the opportunity to revisit code and rewrite applications i’ve written previously. Without fail i can always tell which of the applications was being used by me directly and how often i was running it, if not by the quality of the code… by the progress monitor i implemented. There are usually three monitors, and i can see each of them standing as a checkpoint to the next.
- Iterate through with some character dropped on the screen
- A Percentage completed bar that updates
Each one has its benefits and usefulness, so i figured id take a moment to step through each of them and where i use it, as well as how i coded it for the latter two.
Continue reading “Progress Being Had”
I have been very lax about sharing my experiences with the advanced assembly course, and ill tell you why – I am actually having a tough time and its bothering me. Its not tough to accomplish the projects…
- Write an app that calculates the GCD for two integers
- Begin work on my own Strings and Output libraries
- Continue work on libraries, work with FileIO
- Floating point arithmetic & stack manipulation
Overall it has been a lot of fun, learning about the memory interaction and trying to find better ways to work with arrays and heap allocation etc. It is definitely not as simple as some would have it be, but… fun is definitely an appropriate label:
This class is focused on getting beyond the Kip Irvine library and learning about the Windows API, Floating point arithmetic, and memory management. The most recent two labs have been incredibly telling, particularly about the Windows API, and for the record – I don’t like it.
Continue reading “Assembly is definitely tough to work with”
I posted, in june of last year, about some very useful MSSQL tests that make development and the promotion process we use here at Broadcom easier. One of the tests was not entirely correct, and id like to make a quick substitution (although i wont be replacing the previous entry because it sort of works too).
Does a table have a field already?
IF EXISTS (SELECT Coalesce(Col_length('dbo.T_Table', 'FieldName'), 0))
Does a table have a field already?
IF EXISTS (SELECT 1 WHERE Col_length('dbo.T_Table', 'FieldName') > 0)
sorry about the mixup. This new one is much simpler to read share with your friends and actually works well.
Along with the mod switch comes another piece of the pie. The installer allows you to package your mod for distribution. One of the hurdles that needs to be hopped over is finding UT3.exe so we can create the required shortcuts. Below is a short piece of code in NSIS to check the registry keys in windows 32 and 64 bit.
Continue reading “Code Example – NSIS – UT3 Install Locations”
In todays code example we are going to look at a bit of code in MASM Assembly that calculates a series of prime numbers up to a user given value. Enjoy.
Continue reading “Assemble Your Primes”
Assembly is allowing my favorite activity to take place, and leveling me off quite well. Efficiency is something that is highly important to me, so when i am given a lab that is about algorithms i become giddy! Todays lab is about calculating the dot product of a multiple dimensioned vector, lets walk through this.
Continue reading “Getting back into the code”