Category Archives: Programming Showcase

A Game Engine From Scratch In JavaScript Part 4 – Editor & Debugger

View post on imgur.com

The editor serves as a live debugger and allows modifying the game objects in real-time. These are canvas sprites we’re talking about, not DOM elements. While this is still a work in progress, I wanted to share a screen capture so you can see how it might end up looking. The next screen capture shows some live editing capabilities.

Continue reading

A Game Engine From Scratch in JavaScript Part 3 – Breakout

I wanted to make sure this engine would be comparable or maybe even easier to use than some of the other engines out there, with the ability to build a variety of game types and not just the game I was hoping to build. For this, I decided to go with Breakouts, which is a website that aims to help other developers compare and choose a game engine. So here’s my attempt…

It’s a work in progress, please check back soon for the full article:

View post on imgur.com

This GIF was recorded at 20 FPS; the game runs at 60.

Working: sound effects, level progression, game states, mouse/keyboard input, collision (a bit buggy), ball-bounce physics (a bit crude), sprites, spritesheets, sprite animations, rendering layers, async module/asset loader, fixed timestep. These are all provided by the core engine.

Not Working: power-ups, variable timestep, improved physics.

Continue reading

A Game Engine From Scratch In JavaScript Part 2 – Physics

About 1-2 weeks ago I decided to make a game engine in my spare time. The most challenging aspect so far has been the handling of physics – how objects in the game behave when they collide.

I was able to get a few collision prototypes working. Here’s what the first prototype looks like, it could handle many moving objects, but the accuracy wasn’t perfect:

View post on imgur.com

Disclaimer: I do not own the graphics depicted in this article, nor do I have permission to use them in a commercial product. The graphics were found using Google Image search, and they are being used here solely for showcasing the engine’s capabilities and progress. The tree sprites are from Here Be Monsters, and the player/wolf sprites are from Ragnarok Online.

What you’re seeing in the screen capture above is a bunch of objects (wolf sprites) being spawned with a “roam” AI package, which just makes the objects move around. This AI package idea will be expanded upon later, but it’s kind of how Skyrim AI works, mixed with Final Fantasy XII Gambits – interchangeable and override-able behavior stacks for different scenarios.

(The screen capture above doesn’t reflect 60 FPS due to gif recording at the time. It’s also a .gifv image hosted by Imgur, my apology if the buffering is choppy…)

Continue reading

Mist – Alpha Preview 1

Yet another project I’m working on…

Screenshot of the Edit menu, for real-time editing of meta-data, somewhat resembling a CMS:

mist1

Continue reading

Choices & Chances – A Choose Your Own Adventure Platform

Yet another project I’m working on…

Continue reading

Nest (Your PC on the Internet)

Nest

Access your files from anywhere.

If you’re like most people who have accumulated a large collection of personal photos, music, and videos on your computer at home, but wish you had access to everything whenever and wherever you are, then Nest might be for you!

Or maybe you’re a business owner who’s frequently out of the office. Install Nest on your workstation. Leave town. Open Nest on your smartphone. Start browsing your files!

Your computer + Nest = Your computer on the internet

Or to put it another way, Nest turns your computer into a “Personal Cloud“where you can access your files remotely via a web browser from almost any device, much like the new cloud music players, only you host all of your own files.

In a nutshell, Nest is…

  • A remote file browser
  • A remote music streamer with playlist support
  • A remote image viewer with slideshow support
  • A remote document viewer

Don’t allow big corporations to store and own your intellectual property!

Continue reading

Perry’s Music Streamer

Perry’s Music Streamer has evolved into what is now called Nest. Do check it out!

For lack of a better name, Perry’s Music Streamer is a web application that I’m currently developing which enables you to stream mp3’s from your home computer using any other computer or device with a modern web browser. Here you can find more information about this project. The project was started in June of 2010 and has been going strong since!

Continue reading

The iosys Game Engine

The iosys Game Engine

Screenshot from a live test run of the iosys Game Engine.

The iosys Game Engine is a 3D video game engine and toolset programmed in VB that I developed while learning the DirectX SDK. I’ve moved on from DirectX for the time being, but I still consider this to be one of my greatest programming achievements ever. I started learning DirectX with a few decent books, some documentation on the web, and an invaluable tutorial series by Jack Hoxley titled DirectX4VB. My experience with DirectX and programming evolved quickly during this time and as a result, the engine went through several refactorings.

Continue reading