Monday, September 29, 2014

For Class: A Brief on XNA Architecture

So, for Graphics Programming I this week we were asked to restructure some of our code and write a blog post about it (the architecture) of our XNA projects. Because I already planned a basic architecture for all of my projects, I didn't actually restructure anything, but instead, I am going to briefly and simply explain my "architecture".

Here is the basic architecture (as it is for now)

  1. GameWorld
    1. Menu
    2. LevelOne
    3. (Any or all self-contained worlds)
  2. GameObject
    1. Sprite
      1. AnimatedSprite
      2. Text
    2. Tile 
      1. ModularTile
  3. NewCamera

Each project is broken into Worlds which can be derived and overridden. Worlds are composed of GameObjects which make the levels actually do things. Every object in the game is derived from a GameObject class, though in most cases, the player will be creating Tiles, Sprites or Text objects. The GameWorld maintains a list of GameObjects that it will consistently draw, update and allow manipulation of, but it does this automatically, so all someone has to do is create an object and add it to the world's objectList and it will be drawn and updated. That means that to create a game or content, I can derive from the major classes and override virtual/abstract functions and define any gameplay that I want. It's very simple, but fairly robust.

There is also a separate NewCamera class which consists of a matrix that defines how the view should be drawn. The camera can be loaded into a GameWorld as each GameWorld has its own main spritebatch that can be overloaded/edited for the needs of the level. The user can create and define a camera object or choose not to and the level will still run. Movement of the camera can be defined in an overridden camera object or be handled directly within the class or even other classes.

Tuesday, July 15, 2014

Boatventure: Blog 2


Some more movement prototyping. 


Hey, this is a quick update just to show some basic Boatventure concept art and also the basic notion of locations. I've been busy hacking away at writing the framework code for the last month or so and I've finally got something that works the way I want and is expandable in all the ways that you'd want in an action-adventure platformer!

 So for now, here's some more concept art and maybe a gif or two! SIDE NOTE, I will soon begin blogging about BV solely from http://boatventure.sundaemonth.com/blog :)

One potential animation style for switching boat modes


Our friend, Wynona!
Wynona design sketch!

Testing hair designs for a character!

Another one of the thumbnails we're doing to get the idea for a location down. We have like 30 more. <3

Some promotional art we made.


Friday, June 6, 2014

Boatventure: Blog 1

Working on Boatventure again, finally!
I don't have time to say much in this post, but let's just say that I have a promise to make and that promise is that Boatventure is going to be up and running by the end of this summer. Currently working on rewriting all of the game's main mechanics and base infrastructure code and hopefully, that'll allow the team to get a vertical slice done this summer. The game is being developed in Unity and it's going very well so far! Writing a 2D platformer/metroidvania in Unity will be difficult, but I'm certain that the pros outweigh the cons. Throughout these development blogs I'll probably also be writing short game design and development tutorials to help people who also want to make 2D games in Unity. There's a lot to learn and I'm not the most qualified to teach, but there aren't many other people right now!

At the same time, I have some news that I'll be discussing in my upcoming blog posts. I will probably be moving this blog to a new location at our main site's domain when it's up and running, though, so just a heads up to the 0 people that currently read this blog. :)

Expect Greatness,
~Ryan Huggins

Saturday, February 8, 2014

Boatventure: Getting Bloggy

Boatventure! Basic movement implementation!

[Re-post from acpcproductions.com] Hello everyone, it's Ryan Huggins, a game designer here at ACPC Productions and I'll be running the Boatventure blog. We've just *really* gotten into working on the game after finally settling on Unity after having built several prototypes in Game Maker. I'm currently busy working on the first iteration of the game and am taking a break to set up this blog. To begin this blog, I'm just going to throw up a few pictures, but I'll be updating periodically every time I make visual progress on the game; and sooner or later, I'll actually talk about the gameplay... The .gif at the top of the list is an example of the basic movement implementation and the current (rudimentary) system for cycling through your boat modes.

Some Boatventure and some Railwar! Two games being developed by ACPC Productions crossing over. Art by Meghan.

Screenshot Mock-ups

A mock-up by our artist, Meghan. Boatventure has gone through a ton of artistic revisions these last few months. This is an example of being at the surface of the water.


Another mock-up; Meghan and I have been doing a bunch of work trying to figure out the style for Boatventure. We've got a lot of work to do, but the style's finally getting to a place that we like. This is an example of underwater exploration.



Character Art

This is the original concept art for Wynona. A main character (but not THE main character) of Boatventure.

This is a grandma. She is also a pirate.

Tears and blood. We're not sure why she's crying, but Meghan felt compelled to draw it. Classic Ghibli-style tears.