18,593 reputation
53687
bio website andrewrussell.net
location Brisbane, Australia
age
visits member for 4 years, 4 months
seen yesterday

Hi! I am Andrew Russell. I'm an indie game developer from Australia. I'm a Microsoft MVP for XNA/DirectX.

Visit my blog at AndrewRussell.net or follow me on Twitter @_AndrewRussell.

Spending too much time procrastinating on Stack Exchange? Or wish you could block the Internet for a while, but need to whitelist Stack Exchange? Check out my Kickstarter: Connect for a Reason.


My current game dev project is Stick Ninjas A 2D multiplayer platformer-shooter. I'm doing a weekly DevLog video series about it, which you can watch on YouTube.

My previous projects include:

  • ExEn, a cross-platform port of XNA that runs on iOS, Android and Silverlight
  • Light Blocks: cross-platform falling-block game to demonstrate ExEn
  • Dark: A 2D physics-platformer with fancy lighting effects (PC and Xbox 360)

May
11
comment Convert triangles to quads of a Mesh
Is this for an arbitrary triangle mesh (as your diagram implies)? Or for a mesh that was originally quads? And what is the intended purpose? Are there any restrictions on the end result? Fewest quads? Most square-ish quads? etc...
May
9
comment How to properly handle top down 2D collision?
Yes, it is. Although maybe add more details to your title.
May
9
answered How to properly handle top down 2D collision?
May
9
comment How to properly handle top down 2D collision?
@Thegluestickman You can probably salvage this question. You need to reword it and provide more information about how you're doing collision detection, so that it is a specific question with a specific answer. But MickLH is right - you probably should be using middleware like Farseer (although I can't firmly recommend it, because, again, you haven't provided enough specific details about what you are trying to achieve).
May
6
reviewed Leave Open Mandelbrot generation using custom HLSL shader in XNA
May
6
revised Mandelbrot generation using custom HLSL shader in XNA
added 1061 characters in body
May
6
answered Mandelbrot generation using custom HLSL shader in XNA
May
5
comment Obfuscating Monogame assets
@ClassicThunder Well... you defeat bog-standard XNB readers. So it raises the bar to people who can decompile. And then, if you obfuscate your assembly, it raises the bar even further. Further still if you only target, say, iOS. So it's not completely without merit.
May
5
comment Obfuscating Monogame assets
@VaughanHilts Will that work? I'm under the impression you can only add types - not modify the available formats of existing types.
May
5
answered Obfuscating Monogame assets
May
3
comment How should I draw the GUI if I use a 2D camera?
Ben, I've got to agree with @ClassicThunder. You're wrong. You're giving out bad advice. In the vast majority of cases passing a transformation matrix to Begin is preferable to manually transforming each and every Draw call. The primary reason, amongst many, is DRY..... Also, SpriteBatch does not work well for a proper 2D scene graph using either method. AND your code is broken for any camera matrix besides translation - a camera that scales is not atypical! (The OP has a scaling matrix in his question!)
May
3
comment How should I draw the GUI if I use a 2D camera?
When I answered here, the answer that I linked already answered this question. Use multiple batches.
Apr
28
comment A cool way of doing Z-index for XNA components?
@BrainSlugs83 That's how I'd probably do things, just to make the code neat (although it gets more complicated if you have to start using scissor rectangles to make scrollable regions). But to get the performance benefit of batching, you have to also reduce the number of texture swaps by using a texture atlas, and for a UI this may not be worth the effort.
Apr
24
comment Why is my cursor not working if I add a scaling matrix?
@Homer_Simpson Try Invert(scaleMatrix * camera.GetMatrix()). The Invert method is what you want to use - you just need to get the maths right.
Apr
23
comment Why is my cursor not working if I add a scaling matrix?
Add the code you're using to get the cursor position, and the code you're using to draw the cursor.
Apr
23
comment How can I use a camera matrix with different resolutions?
@Homer_Simpson That's a separate problem - please create a separate question for it (add links between the two, if you like). I've reverted your question to its original state. Please don't keep tacking additional questions onto a question that's already been answered.
Apr
23
revised How can I use a camera matrix with different resolutions?
rolled back to a previous revision
Apr
22
answered How to rotate vertices of 2D shape using a transform matrix?
Apr
21
comment How can I use a camera matrix with different resolutions?
No, they are not the same. However your custom matrix does not appear to be performing any kind of sensible transformation operation. Which is another good reason to construct your transformations from the Create* methods. A translation matrix is: (1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, X, Y, Z, 1).
Apr
20
awarded  Excavator