http://content.ictwa.org.au/cms/000108.jpgJosh Stewart Software Developer (Perth, Australia)

This page is a static collection of information and links about me, my software, work, projects, uni etc.
My Google profile contains links to more dynamic content - http://www.google.com/profiles/aek.muldoon

I reside in Perth, Australia. I work fulltime as a software engineer for Immersive Technologies.

My ideal job is developing software with the latest technologies / methodologies in a company that encourages innovation and learning and rewards staff based on their performance. There should be an espresso machine, relaxed dress code and quite areas where I will not be disturbed by every fool that walks past my desk. The rest of the staff will be energetic and creative and not cynical and jaded. My current job meets those things at the moment.

Free time is scarce, but it’s spent with my partner Rebecca, my baby girl Amelia, work, indie development with Gnomic Studios, playing games and spending time with friends.


Work

Resume - http://aek.bur.st/Josh_Stewart_Resume_Software_Developer.pdf
ICT WA Career Profile - http://www.ictwa.org.au/products/cp_ICT_joshua_stewart

Currently working as a Senior Software Engineer at Immersive Technologies

Commercial software development with the world leader in mining simulation software

·         Project lead for Meekatharra and Onslow projects, leading teams of up to 12 software developers and testers

·         Software development in all areas of the codebase, including dynamics, 3D graphics, GUI, database and supporting tools and systems including JIRA

·         Responsibility for software support requests from the customer support team

·         Training: In-house leadership training, (AIM) New Supervisor Course, (AIM) Interpersonal Relationships Course, (AIM) Leadership Development Program

Formerly working as an Experienced Software Engineer at Raytheon Australia

·         Software Supporting Replacement Combat System software

·         Primary developer for 15 month project, C, embedded systems, NTDS, Compact Flash storage systems, VxWorks, Linux, VME.

·         Software & Systems engineering full life cycle development experience (built a product right through from concept to delivery which is now used on the submarine).

·         Legacy combat system integration and development.

·         CEED Program Mentor - mentor for research students from UWA, ECU and Curtin who were sponsored by the company.

·         Worked on the Hardware Infrastructure Prototype displays (X / ADA / Solaris), Shore facilities training displays (Java / Ada)


Uni

Here is a collection of my favourite and interesting uni assignments.

Postgraduate Diploma in Games Technology
Murdoch University

AStar Team Portfolio - http://astar.bur.st/

Shinobyl is a unique

Research Papers - http://aek.bur.st/research papers/

Shinobyl - http://astar.bur.st/project-shinobyl.html

Shinobyl is a unique game designed to mix classic gaming from the likes of Shinobi (arcade) and Dark Castle on Mac, using the latest graphics and physics technology to create a Dynamic Platform Adventure game.

Duration: This project was developed by 2 people over 13 weeks part time.

It was developed collaboratively over internet using OO/C++ in Microsoft Visual Studio 2005 and SVN.

The goals of this project were to create a game using a 3rd party game engine. We decided that this meant hooking our favourite core APIs together into a functional game development platform. We selected and integrated the following technologies:

·         Ogre3D - rendering engine

·         ODE - with FlatLand 2D physics library wrapper

·         FMOD - sound system

The game features a 3d rendered orthogonal view with 3D graphics but 2D constrained physics. This allowed us to create a dynamic platform adventure game, but also include features normally seen in 3D games such as character lighting / self shadows, particle systems and shaders.

The 2D physics system is an extension of FlatLand which wraps ODE. It has allowed for the development of interesting 2D physics objects including:

·         Static smooth rolling terrain and walls.

·         Dynamic bullets and shurikens all moving realistically allowing for game dynamics such as shooting enemy projectiles mid-air with your ninja shuriken

·         Dynamic balls, boxes provide cover that can move or be grabbed and thrown.

·         Realistic rope physics (used to build bridges)

·         Motors / pistons / wheels / joints

The game featured the following features

·         Polished player movement and interaction (highest priority)

·         Actor skill management, including power ups

·         Stat increases that affect the actors movement and skill at various tasks (double jump/dash/attack speed/damage/run speed) (including player)

·         Difficulty levels for foes. Foes pick up powerups

·         SFX triggered on collision

·         Unique music track

·         Constrained custom orthogonal camera

·         Scripted levels

·         Unique non-linear dynamic platform gameplay. Actors can change the "landscape of play" with whole platforms collapsing under force.

Library Simulation - http://aek.bur.st/Library_Simulation/

Complex simulation of physics and AI behaviours inside a library environment.

Duration: This project was developed by 3 people over 13 weeks part time.

The task was to develop a 3D simulation of the library environment, without using 3rd party AI or Physics libraries.
The project was developed in OO C++ with OpenGL and GLUT. It was developed collaboratively over internet using OO/C++ with OpenGL in Microsoft Visual Studio 2003

The project features

·         NPC Emotions and Behaviour control with Affordance system

·         NPC A* path finding / navigation

·         Complex realistic physics, including rotational motion

·         Level scene loading

·         80+ physics objects simulated with realistic physics

·         Player interaction with the NPCs through communication menu

·         Player avatar real physical object with acceleration etc

·         OO engine design

Rebel Conflict - http://aek.bur.st/Rebel_Conflict/

3D God / RTS Game and Engine developed.

Duration: This project was developed by 4 people over 13 weeks part time.

The task was to develop a 3D game engine and use the engine to create a game. The engine was built from scratch using nothing but OpenGL, Win32 and C++. The engine and game had to be developed in a way that they were seperated, providing a clear distinction between engine and game.

The engine included the following features

·         Shaded Water

·         FMOD based Sound Manager

·         Foliage generation using alpha masks

·         Geomipmapping Terrain

·         LUA scripted AI

·         Detailed multi-textured terrain & Terrain texture splatting

·         Quadtree Scene Manager with support for managed Vertex Buffers that are loaded/unloaded as the camera moves

·         Mesh Factory

·         Texture Manager

·         API independent OO engine design

·         Maths library

·         Event management

The game featured the following features

·         LUA scripted startup and configuration

·         Audio tutorial

·         3D positioned sound effects / ambient sounds

·         Camera with constraints & physics

·         Picking

·         In-game Level Editor

·         Unique gameplay mechanics

·         Dynamic overlays and menu system

It was developed collaboratively over internet using OO/C++ with OpenGL in Microsoft Visual Studio 2003

 

3D Game Engine (ICT507 Games Design & Programming)

I constructed a basic 3D game engine, with features including...

·         XML driven level data (objects, lights, items)

·         Frustum Culling

·         Height-mapped Terrain

·         OBB collision detection

·         Timer driven animation

·         Milkshape3D model loader supporting collision meshes

·         2D Text console system.

 

It was developed using OO/C++ with OpenGL in Microsoft Visual Studio .NET

 

Achievement:          High Distinction

Source, demo and documentation available from http://aek.bur.st/world_demo/

 

 

Ball Physics Demo (ICT215 Computer Graphics Principles and Programming)

 

I constructed a 3D graphics application, which demonstrates ball collision detection and response in 3D space using physics modelling. It includes animation, user interactivity, and behaviour modelling. It was developed using the cross-platform GLUT library using C and OpenGL in Microsoft Visual Studio .NET.

 

Achievement:          High Distinction

Source, demo and documentation available from http://aek.bur.st/ball_demo/

 

Bachelor Science - Computer Science
Edith Cowan University


Goldrush
http://aek.bur.st/goldrush/

My final year undergraduate project was developed using C++ / OO / DirectX. I was Team Lead of the 4 person team who had to develop a game for the Scitech Discovery Centre. It took 4 months part time development to complete.

Robotics - http://aek.bur.st/UMI_RTX/

            UMI RTX (robotic arm) Win32 controller software

3DSMax http://www.youtube.com/user/AekMuldoon#p/u/6/regcVK9PBFA

Project for Computer Graphics Methods unit, created by Josh Stewart, John Barker and Chris Marie. I did the green alien ship model and the turrets and opening scene animations (warp in, turret popup, drop ship, fly out, fly by)

Scarbble (scrabble game) - (C++ / OO / Allegro) - http://www.bur.st/~aek/aek/

Ant Colony Optimisation vs Genetic Algorithms - http://www.bur.st/~aek/aek/ai/

Wang (vector drawing application) - http://www.bur.st/~aek/aek/wang/

Vector Graphics / Drawing algorithm implementations - http://www.bur.st/~aek/aek/wang/example%20code/