In a few weeks I’m going to be doing a presentation on 2D game implementation in Unity, and I’d like to run my plans past you. Nothing here is set in stone, so feel free to suggest changes to any aspect you think ought to be different.
Currently my plan is to use checkers as the example game. I’ll put the game together, and make the assets (art, scripts, etc.) available prior to the event, so that people have them when they arrive. The presenter at a previous meeting did this, and it worked very well; most of the attendees downloaded the assets in advance, and having them already in place enabled everyone to hit the ground running.
The presentation itself will have three major areas:
- Setting up a 2D game board. This has a practical and a theoretical component. Practically, we’ll cover some basic things like getting sprites into the IDE and instantiating a board at runtime, along with some notes on areas where I’ve tripped up so that others can learn from my mistakes. 😉 From a theoretical perspective, we’ll discuss how Unity doesn’t have the notion of space-by-space movement, as is common in board games–and how work at this stage can enable one to set that up.
- Movement in 2D. Mostly practical, this will focus on Unity’s 2D physics tools and how they can be used to do things like check for open spaces and opposing pieces. I’m also planning a (very) brief discussion of other approaches, like using multidimensional arrays to track what’s in what location.
- Rules enforcement. Here the discussion becomes more theoretical, talking about different ways to do things like keep track of turn order. We’ll use the pre-made scripts as examples.
If you were attending this sort of presentation, would all three of those topics interest you? Does one of them interest you more, or less, than the others? Are there things I’m not planning to talk about that you think I should?