Portfolio

Lawrence Granroth

Environment Artist / UX Designer

Rocket Theater

Game Development 2017-Ongoing

About the Project

Rocket Theater is a 2D explosive based stunt game that is currently under active development. I'm working on this game as the primary artist and ux designer with Ian Feldschneider who is the programmer. The game is being built using the Unity Engine, most of the art assets are created using blender.

Additional Details

About the above media (left to right)

1. A quick recording of the game running from within Unity. The game is still in an alpha state, so many things are currently unpolished and unfinished.

2. The source file for art assets of one of the playable characters (Chronophobiac) being displayed within blender. Modeling and animating characters has been a tricky process so far, i'm fairly pleased with how this one turned out. Although there is still room for improvement.

3. The source file for another one of the playable characters (Bill), this file considerably older than Chronophobiac's.

4. The source file for one of the maps (Skycast Mines). For the environment design, i'm taking a rather unique approach. I made a series of procedural textures (see the network of nodes) and apply them to the surfaces within the map. These do things like brighten edges automatically, change tint/hue based on elevation (see the rocks), as well as applying complex non-repeating textures to the surfaces. When the moddeling is done, I UVmap the surfaces and bake the lighting information along with the procedural textures into the same image file. This results in high quality lighting and very sharp textures across large surfaces, without the need for painstakingly aligning the texture for each face.

Arctica

Game Development 2015-2016

About the Project

Arctica is a solo independent game project I worked on for a few months before pausing development when I got involved in Rocket Theater. The game is a 2D rougelite platformer developed using a custom c++/SFML based engine. I don't have much gameplay to show for it yet seeing as the bulk of the development time spent so far has been based around building engine featrues rather than building a game. More details about the development and current status of the project can be found at the dev-log.

Additional Details

About the above media (left to right)

1. This is me showing off the engine's scripting and sprite-sheet animation capabilities. (the penguin ai) The entity system can currently handle more than 10,000 scripted penguins before there is any noticeable slowdown.

2. This shows some of the engine's development tool's user interfaces. (a tile-map/prefab editor, a map-overview/generator, and a file manager). The engine runs at a very low native resolution, so the dev tools need to be as small as possible in order to fit on the screen comfortable.

3. While developing the state system for the player's movement, I needed a good way of portraying the complex network of states. After trying a couple different pieces of flowchart software, I eventually just ended up doing it in blender. Connecting spheres in 3D creates way less of a unintelligible mess than circles on a 2d plane.

Trinary

App Design/Development Spring 2016

Your browser does not support the video tag.
Your browser does not support the video tag.
Your browser does not support the video tag.
Your browser does not support the video tag.

About the Project

Trinary is a group word game for mobile devices. (things like charades).
I did the visual design and art assets for this app during my internship at Mobile Mesh Games.
LINK

When I was assigned to the project its programming was essentially done and the team already had settled on using cards to present the words.
So I was tasked with making something that looked professional but still matched their current design.

Trinary is a finished game, you can find it at links below.
Google Play Store: LINK
Apple App Store: LINK

Additional Details: About the characters

While developing the design for Trinary I noticed that the game was feeling a little lifeless and generic. So I made these simple animated geometric critters in an effort to make things more interesting.

I made the characters by first drawing up a static design in Inkscape, and then animating their features using Blender.

CTF Urban Brook

Level/Environment Design (TF2) Fall 2015

About the Project

Urban Brook, is a mid size capture the flag map I created for the game Team Fortress 2.
I originally made it for "The 2015 72hr Winter Special!" contest that was hosted by TF2Maps.net LINK

Following the contest I completely overhauled the map, both layout wise, and visually. I released it on November 1st 2015 and it received generally positive reviews from the public.

Further information can be found on my steam workshop page, located here. LINK

Additional Details

While most of the assets used within Urban Brook come from stock TF2, I did make some of my own to help some of the key areas feel unique.

I also put together a small panorama of the center area of the map. You can use your mouse to take a look around.
LINK

Generantis

Game Development 2014-2016

About the Project

Generantis is an independent game I was working on with Ian Feldschneider. Ian started the project around some time in 2013/2014 and later brought me on as an artist to make things look respectable in time for the University of Wisconsin Whitewater MADG Expo 2014.

Since then I have been contacted periodically to keep the art assets looking fresh, until recently (mid may 2016) where I got code access and started heavy development on the project with him. Development later ended in late July 2016 after Ian decided to drop the project.

More information about Genernatis may be found at the official sites (links below). Although we have yet to do a major marketing push, so the information is a little out of date.

Additional Details

About the screenshots, the first two are from the 2014 art pass I did. The third and fourth screenshots are what the game looks like today. It looks a little funky at the moment due to being half way through transferring the artwork from 16x16 pixel art, to a higher resolution.

Below are some concepts for the intended future are direction.

Other Projects

These are things I worked on that are not refined, new, or complete enough to be in my main portfolio, however, they are still worth mentioning.

Ego

3D Modeling / Level Design - 2016

About the Project

Ego is a doom style shooter made using the Unity Engine. It was as 5 person group project I was involved in while at the University.

I was the artist of the group and was tasked with creating the art assets for the player's weapons, as well as pickups and enemies.
We really wanted to capture the style of early 90s first person shooters, so instead of using 3D models in game, everything is drawn as 2D billboard sprites.

Additional Details

To make the assets, I used Blender to model and rig the objects, then I rendered their animations out to individual frames, and stitched them together into a Unity compatible spritesheet.
After that I scaled it all down to pixelize the results.

Hackernet

App/Ux Design Spring 2016

About the Project

Hackernet, like trinary above, was one of projects I was involved in while part of Mobile Mesh. I had complete control over the visual design and the user interface design for this project, however, the university semester ended (and thus, so did my internship), so I was never able to see the project to completion.

Above are some of the completed designs. Rendered from Inkscape, they were partially implemented in Unity engine by the time I left Mobile Mesh.

Ambüre

Game/Engine Development C++ Ongoing

About the Project

Ambüre is an independent game I was working on using C++ with the SFML graphics library.
While it started as a top down 2D action adventure game, once I realized I could make an in-engine sprite editor (that updates edited sprites real time) the design focus changed to seeing how far I could go with the game engine.

The game behind this project is indefinitely shelved, I instead took the code base and used it to build Arctica instead because it had a more realistic scope for a solo project.

Caliber

3D Modeling / Game Development (Unity Engine) Fall 2015

About the Project

Caliber is a 2D vertical-scrolling shooter I made using the Unity Engine. It is a little basic, as I was still learning the ropes at the time I made it, but I am rather fond of how some of the art assets turned out.

Tracked

Game Development (Processing/Gamejam) 2014

About the Project

Tracked is a simple 2D platformer I put together for one of the game jams at the University of Wisconsin Whitewater's GameD club.

Assorted Minor Projects

Below are smaller projects I worked on, while they aren't as impressive as my other portfolio entries, I think they do a good job at showing my experience in other areas.

Generantis Character Animator

Tools and System Development (Processing) Summer 2013

About the Project

This was an experimental side tool I made while doing early explorations of Generantis' artstyle. The first video (above) shows the most developed state the project reached, before I realized that it was not going to be flexible enough for general purpose use.

The second video shows what the project was like right before I dropped it (for various reasons).

If I were to rekindle the project, which might happen due to me being heavily involved in Generantis' development right now, it would be in the form of an in-engine dev tool for Generantis, rather than an isolated side program.

Rantis Script

Programming (Processing) Fall 2013

About the Project

This was my attempt to make a custom scripting system for Generantis. It was being designed to run very quickly, and to avoid crashing as often as possible (preferring to overflow its own contained memory instead).

Ultimately this project was dropped in favor of of using Lua scripts.

"Shader" Effects

Processing 2014-2015

About the Project

Shaders are almost essential for modern game projects to appear modern and professional. Above are 2 shaders I was working on for Ambure.

My current pipeline for making shaders, is to first program the effect by modifying pixels directly in a processing app. And then when I get the effect I want, I find a way to port it to GLSL code.
The first shader is a per-pixel directional lighting shader. Compatible with normalmaps exported from Blender. I did get a fully working version in GLSL.

The second shader takes pixel art, and dynamically applies right triangles to make diagonal connections. Unfortunately, it never made it out of the processing stage, mainly because I put off work on Ambure for other things.