Project "bitfield"

Anything related in any way to game development as a whole is welcome here. Tell us about your game, grace us with your project, show us your new YouTube video, etc.

Moderator: PC Supremacists

Post Reply
EddieRingle
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 69
Joined: Sun Apr 10, 2011 5:58 pm
Programming Language of Choice: C
Location: Detroit, MI

Project "bitfield"

Post by EddieRingle »

So, OUYA & Kill Screen announced their CREATE Game Jam competition last week. Since I was fortunate to be able to grab a dev kit, I figured I'd use it as an excuse to get back into game development (the past few months have been filled with non-game-related Android contracts, and that tends to get pretty dry after awhile).

Hopefully starting this thread will give me an extra bit of motivation to actually work on this, at least through to the end of the competition. The deadline to get a prototype in is the 23rd, but even if I don't manage to get something working in time, as long as this idea I've got keeps my interest I'll probably continue working on it.


<EDIT> 1/24: Yeah, me get something done in time for a deadline? Didn't happen. Nevertheless, the adventure continues! </EDIT>

The past few days has been spent getting an engine and its dependencies up and running across Linux, OS X, and Windows. Adding NDK support is should be pretty trivial, so I figured I'd do the majority of the development on the desktop. The engine is still pretty empty implementation-wise, only supporting window & context creation and png texture loading as of yesterday. Have to start somewhere, I suppose.

As a result of the engine's lack of in-depth working-ness, there's nothing to show yet gameplay-wise. Instead, here's a little screenie showing I'm competent enough to get a window up along with two sprites I threw together (a character-thing and a grass tile):

Image


More to follow, eventually.
Last edited by EddieRingle on Thu Jan 24, 2013 4:58 pm, edited 2 times in total.
EddieRingle
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 69
Joined: Sun Apr 10, 2011 5:58 pm
Programming Language of Choice: C
Location: Detroit, MI

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by EddieRingle »

Time for a brief update, I guess.

Image

I've got a name for this game, now, calling it "bitfield" for reasons that will hopefully be made clear soon. I even went so far as to register bitfieldgame.com, so I think I'm sticking to the name.

These past few days, the only visual change I can show off is the addition of bitmap font support, but TONS of things changed under-the-hood (e.g., fully programmable pipeline, custom matrix stack, texture atlases, etc.). I think I'm finally ready to actually "make the game" now, and by that I mean all the intricate, fragile OpenGL bits are being handled nicely and nothing too bad should be surprising me in that area for awhile.

Next up, I think I'll add a basic UI widget set (buttons, textfields, etc.) and slap together a nice-looking menu and start working on the in-game screen layout.
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by Falco Girgis »

Looks awesome, and I'm glad that we're going to be seeing regular updates with this! I think you're the only one on the boards with the devkit too. :D
User avatar
GroundUpEngine
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 835
Joined: Sun Nov 08, 2009 2:01 pm
Current Project: mixture
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Location: UK

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by GroundUpEngine »

Cool project, I have recently messed around with Android development and discovered NDK could be used instead so it would be interesting to see some techniques ;)
User avatar
EdBoon
Chaos Rift Junior
Chaos Rift Junior
Posts: 258
Joined: Fri May 28, 2010 10:44 pm
Current Project: Top down multiplayer shooter using unity 3D
Favorite Gaming Platforms: 360, SNES, ps1
Programming Language of Choice: C++, C#
Location: Atlanta, GA
Contact:

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by EdBoon »

Awesome. Jealous of your devkit, I really wanted one to mess around with. For now I will just see what you can do with it, so keep us updated!
Undead Empire -> http://bit.ly/dYdu3z
Gamerscore Tracker -> http://bit.ly/vI4T4X
Undead Empire: Hellfire -> http://bit.ly/1AgC4ZY
facebook.com/BigRookGames twitter.com/BigRookGames
youtube.com/user/bigrookdigital
EddieRingle
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 69
Joined: Sun Apr 10, 2011 5:58 pm
Programming Language of Choice: C
Location: Detroit, MI

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by EddieRingle »

Falco Girgis wrote:Looks awesome, and I'm glad that we're going to be seeing regular updates with this! I think you're the only one on the boards with the devkit too. :D
GroundUpEngine wrote:Cool project, I have recently messed around with Android development and discovered NDK could be used instead so it would be interesting to see some techniques ;)
EdBoon wrote:Awesome. Jealous of your devkit, I really wanted one to mess around with. For now I will just see what you can do with it, so keep us updated!
Thanks for all the responses so far, guys!

It does indeed appear that I'm the lone OUYA owner around these parts. Hopefully by the time it launches in March that won't be the case. :)

Quick little update, now. I'm falling behind with where I want to be before the competition deadline. (Especially compared to others in the competition who opted to use Unity; those guys are miles head compared to where I'm at. :() In my last post I talked about adding more UI stuffs, but as you can see below that hasn't panned out (yet). If necessary, I might end up putting my custom engine on hold for the remaining few days and just whip up a prototype game in plain old Java. Then again, I could just continue being stubborn, skip the compo, and start a Kickstarter when this game gets going as an alternative form of funding :D. Either way, this custom engine of mine will get finished.

Anyways, today and part of yesterday was mostly spent on getting the Android build smoothed out as well as laying more of the "gamey" framework bits. Maybe now I'll finally be able to get some actual gameplay going.

As some sort of proof, here's a quick video of it running on the OUYA:



Sugar stash in the background :D
EddieRingle
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 69
Joined: Sun Apr 10, 2011 5:58 pm
Programming Language of Choice: C
Location: Detroit, MI

Re: Chronicling my CREATE Game Jam Attempt - "bitfield"

Post by EddieRingle »

I think these update videos might become a regular thing. :D

After failing to get the opus decoder working last night, I added vorbis support to the engine today and eventually also got it working on Android.

Also showcased in this video is the addition of OUYA controller input handling. Unfortunately, it appears that only the left analog stick is exposed to native activities in Android, with the right analog stick trigger events with no values (so basically, they're useless events). (See this thread for another guy having similar issues.)

To make matters worse, it also appears that the left analog stick shares the same "pointer" id as the touchpad. This wouldn't be an issue, except the analog stick's range of values is (0, 1), whereas the touchpad will give you values based on relative screen coordinates (i.e., (0, 1920) for x and (0, 1080) for y). Until this is fixed by the OUYA crew, I think I might just stick to using the D-pad for what I'd otherwise delegate to the analog sticks.

Anyways, here's the video:



Cheers!
EddieRingle
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 69
Joined: Sun Apr 10, 2011 5:58 pm
Programming Language of Choice: C
Location: Detroit, MI

Re: Project "bitfield"

Post by EddieRingle »

So, I didn't make the deadline for the CREATE jam. Oh well. :P

Truth is, I got a little too involved on the optimization side of things and went ahead and implemented my own draw batcher and stuff. That took about 3 hours, and then I spent the next 72 hours (I think?) tracking down a huge memory spike and framerate drop. Anyways, that 72 hours ended minutes ago and I finally have this:

Image

That's 3000+ sprites (the worst-case I've decided might crop up on for this particular project) humming along at near 60 FPS. Granted, it's on a 580 GTX and I have no clue what the performance will be like on the OUYA's Tegra just yet (haven't ported the rendering changes over).

You can also see a quick mock-up of the top UI bar I was throwing around. A better shot of which can be seen here:

Image

I quite like it so far, but perhaps eventually I'll use something fancier than a colored square to denote the latter three status items (ooo, perhaps a colored diamond).

I think my next step now, since I don't have the "pressure" of a game jam looming over me, will be to play around with simplex noise and cellular automata for terrain and cave generation. Should be fun. :D
Post Reply