Lawrence Granroth

Environment Artist / UX Designer


TF2 Map (Work in progress) 2018-Ongoing

 About the Project

Cp_mist is a new 6v6 competitive focused TF2 map I created for a recent competition. It is still a work in progress especially in the lighting and detailing department. The map is in the 5 control point gamemode and has players fighting back and forth over control of the symmetrical map. I made some unusual decisions to the layout to make the map feel different than what is already out there. Like the raised area only accessible with rocket jumps that connects most parts of the map.

You can find a download for the map at the TF2maps.net thread here
Or on the steam workshop here

 Additional Details

I made some custom props for the map for situations where I couldn't find anything in TF2's prop library that fit my needs. From left to right:
1: A dome for 2nd point (shown in the 2nd screenshot), the glass is handled separately with brushes.
2: A simple metal barrier (shown in the 1st screenshot).
3: A rusty silo (shown in the 3rd screenshot).
4-5-6: parts of the intake fan showed in the first screenshot. The fan blades have an animation baked into the model. I'll need to update the tube model to have interior faces, one of many things on my list of todos for this map.

Various Filament Work

UX and VFX work 2017-2018

 About the Work

For a little over six months I worked on an unreleased project at Filament Games, an educational game development studio in downtown Madison. Work on this project was odd, I was brought on very early on when the engine development was ongoing, the game was little more than a hello world demo, and the project as a whole had not yet been fully wireframed. Because of this the variety of work I did on this was vast, from gamedesign, to creating wireframes, UI/UX design, scene setup, animation, particle effect creation, and some asset creation. An important thing to know about this project is while most of the work is done within the Unity3D editor software, the results get exported out to filament's own browser based engine.

About the above media (left to right)
1: This gif was the first polished part of the game. I was involved with a couple aspects of this. The game hud artwork I 3D modeled, rendered, and then painted over. I did all of the particle effects in this scene (the ship rockets,phaser rays, asteroid explosions, gem sparkles, and the rainbows), with the bare-bones particle system that was available to me. Additionally I did the animations (asteroid and gem spinning, the ship bobbing, the flickering "antonym light" and the floating gem in a bubble) and scene setup required to get all of this working in-engine. Most of the other art assets (ship, background, etc.) were done by other team-members.

 Continued . . .

2: This was a set of animated concepts I made for making sliding blocks around on a grid more engaging. Me and the other team-members came up with the concepts and then passed the ones we liked to the artists. Then I took the sprites the artists made and animated them in Photoshop. Although we only ended up implementing the top left design into the project.

3: Concept art for a scoring system for the game. I animated this in an empty unity scene.

4: Roboarm animations and vfx. I handled the animations and particle effects of the robot arm sequence (including the smoke). It is intended to mask a puzzle transition, although its timed incorrectly in this recording because it is from an early build of the game.

5: This was concept art for version 2 of what was shown in the first image. The first iteration looked nice but the engine performance on ios was not great and it needed to be scaled back so it could run well in a playtest (too much overdraw). Later on the engine was updated so the old design would work without issue, but by then the project's art style had shifted away from that design and we thought of a more space efficient button layout. The character, ship, background, and speech button were assets done by other team-members, I did everything else here, as well as laying it out.

Rocket Theater

Game Development 2017

 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.

We plan to get a playable demo out within the next few weeks.
For more information about this project, check out our development blog https://forums.tigsource.com/index.php?topic=60280.msg1322893#msg1322893

Ian's Page http://www.ianfeldschneider.com/

 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.


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.

Link to 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.


App Design/Development Spring 2016

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


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.

Ian's Page http://www.ianfeldschneider.com/
The official page (maintained by Ian with lots of outdated screenshots) http://generantis.weebly.com/

 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.


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.


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.


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.


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.


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.

 Copyright © 2016 Lawrence Granroth