Allen Pestaluky

Projects

INDEPENDENT DEVELOPMENT

Keep Talking and Nobody Explodes

Global Game Jam 2014

48 hour game jam game created with Ben Kane of Going Loud Studios and Brian Fetter of Bitstim Inc.

MAGMIC

Cross-Platform Portfolio

Texus Hold'em King iOS/Android/Blackberry 10 SKIP-BO iOS/Android/Blackberry 10
Cross-platform development primarily in C++
  • Technology: C++, Objective-C/C++, CMake, cocos2d-x
  • Date: November, 2012 - March, 2014
  • Designed and developed runtime resource selection infrastructure used in all new C++ games
  • Collaborated with Art Lead to develop a title safe layout design pattern which has reduced required layouts down to only two for any aspect ratio between 1:1 and 16:9
  • Formalized C++ memory management conventions and is a primary author of Magmic's C++ coding conventions
  • Implemented platform abstraction of in-app purchasing with the flexibility loading product catalogues from different sources

Magmic Inc. iOS Portfolio

Phase 10 iOS Rubik's Cube iOS Spades King Blackjack King iOS
Native iOS development in Objective-C/C++
  • Technology: Objective-C/C++, Cocoa Touch, Game Center, Facebook/Twitter/Foursquare SDKs & integration
  • Date: July, 2011 - November, 2012
  • Contributed major additions to flagship titles such as Masters Edition in Mattel's Phase 10
  • Developed reusable extensions and software systems used in many of Magmic's native iOS games
  • Added Game Center peer-to-peer multiplayer to Spades King using reflective serialization in just over one month of development time
  • Contributed additions and maintenance to the iOS Rubik's Cube app
  • A primary developer of Magmic's online Blackjack King

ACADEMIC

Xbox 360 Port: Hideout!

3D Arcade-Adventure Xbox 360 Video Game
  • Technology: C#, XNA, DirectX
  • Resources: Neoforce Controls
  • Date: Summer, 2010
  • Roles: Xbox 360 Port and Promotional Material, Lead Programmer, Gameplay Mechanics Designer

After completing the first version of Hideout! for PC, Allen continued the project by porting it to the Xbox 360 and releasing it for sale on the Xbox Live marketplace. The project was approved and released with the first version submitted to peer review!

This process provided valuable experience in designing interfaces for home video game consoles, performance optimization, and conforming to development guidelines and specifications.

Toy Factory

3D Real Time Strategy (RTS) Video Game
  • Technology: C#, XNA, DirectX
  • Resources: Neoforce Controls
  • Date: Summer, 2009 - Winter, 2010
  • Roles: Project Manager, Graphics Programmer

As his first delve into project management, XNA, C#, and full featured 3D game development, Allen applied research and rapid development practices to drive the completion of this one year long project. Working with three other team members, Allen developed skills in graphics programming and supportive software architecture that helped team members achieve their best.

Through this project Allen applied knowledge in many elements of technical and user-oriented development including:

  • 3D graphics and 3D game programming techniques
  • Expansion of the XNA content pipeline to include:
    • Analysis of model data and extraction of custom bounding boxes, material information, skeletal information, and other data
    • A customizable shader written from the ground up that used an adaptation of the blinn-phong shader model
    • Skeletal animation performed in the shader
  • Expandable architecture to allow for new toy models to be loaded from an XML file
  • Integration of a number of solutions and improvements prompted by beta testing results

Black & White Balance

Interactive Art Toy

Created as an experiment in interactive art, Black & White Balance demonstrates Allen's creativity in interactive and technical design. This software "toy" will allow users to interact with a sea of thousands of black and white dots that move and flow based on simple mathematical functions.

As a true experiment, one of the primary goals of this project was to give the user full control of a number of parameters that can affect the system. This exhaustive control was designed to provide inspiration towards new ideas and concepts that could be used in the fields of interactive multimedia and game design.

Hideout!

3D Arcade-Adventure Video Game

During the most intensive term of our schooling in Interactive Multimedia and Design, Allen led the technical development of this fun, engaging, and addictive arcade-adventure game. Working with a team of four other talented team members, the project progressed from initial concept to final implementation in only three months!

Game Links

(Note: This game has now been updated and ported to the Xbox 360!)

Grapple Racer

3D Video Game Engine with Sample Game
  • Technology: C/C++, OpenGL
  • Resources: GLUT
  • Date: Winter Term, 2008

Grapple Racer was created as a sample game for a racing game engine designed as a term project in a third year 3D Computer Graphics class at Carleton. Using only low-level APIs and toolkits, Allen learned the fundamentals of 3D graphics programming, right down to manipulation of vectors and matrices to create captivating high speed game physics with tight and fluid acceleration-based control.

The Wall

Original audio clip
"Talking to Myself" effect applied
"3D Reverb" effect applied
"Echo" effect applied
"Walking Up" effect applied
VST DSP Audio Effect Plug-in
  • Technology: C++, VST
  • Date: Winter Term, 2008

For a term project in a third year Human-Computer Interface class, Allen proposed an audio effect plug-in to be developed using Steinberg's VST SDK. The result was a fully customizable reverb and echo effect that incorporated a pitch shifting algorithm based on the Fourier transform. Please listen to some short audio samples created with The Wall by clicking on the play buttons to the right.

Downloads
Task Proposal
[PDF, 363kB]

eyeHear Listening Device

eyeHear simulation screenshot
Product Design and Prototyping
  • Technology: C++, MFC, ActiveX, Adobe Flash
  • Resources: Microsoft Speech SDK
  • Date: Winter Term, 2008

Integrating two powerful technologies, Allen designed and constructed a framework that would interpret Microsoft speech recognition messages and output them into a flash video in real time. This was achieved by loading a Flash object into an ActiveX container that was created in a Windows dialog. The windows dialog, programmed in Microsoft Visual Studio using MFC, would create a speech recognition object and wait for messages from the recognition engine. Once messages were received, the dialog would control the flash component by setting and getting state variables through the ActiveX object's methods.

As a Design Studio III group project at Algonquin, the result was a product prototype demonstration that was successfully presented to a board of potential stakeholders. eyeHear is a listening device that would provide closed captions for the real world. Using a cell phone or mobile device as the processing unit, eyeHear would attach onto a user's glasses and project interpreted speech onto the lens of their glasses. The prototype demonstration showed a live webcam feed and fluid GUI that was controlled by Allen's speech recognition shell. This provided a life-like simulation of someone using our eyeHear listening device.

3D Game Controller

3D Model and Video
  • Technology: Autodesk Maya, Mental Ray with Ambient Occlusion and Ray Tracing
  • Date: Fall Term, 2007

Allen demonstrated skill and understanding of lighting, rendering, and polygon/NURBS modelling techniques through this 30 second animation. The video game controller presented a modelling challenge, as the surfaces are complex and organic. Mental Ray with ambient occlusion and ray tracing was used in the rendering process to simulate a realistic surface.

Downloads
Full Resolution Video
[Quicktime MOV, 27.6MB]

Ant-Ball

Flash Video Game
  • Technology: Adobe Flash, Actionscript
  • Date: Winter Term, 2007

Created as an assignment for a second year Algonquin Flash class, Ant-Ball is a simple, yet exciting video game that integrates free actionscript classes to create a fun and polished product.

Fly Away and Flash Memory

Javascript Games
  • Technology: XHTML, Javascript/DOM, CSS
  • Date: Winter Term, 2006

XHTML, CSS, and Javascript have been developed as powerful tools for manipulating 2D images and visual objects. This strong framework provides an environment that is not only useful for creating websites and web applications, but also for programming simple video games. These two examples demonstrate Allen's ability to effectively use technology in ways that exceed their standard applications.