Goldshire Cliffs

My submission for the 2017 Blizzard Student Environment Art Contest! Everything was concept, modeled and textured by myself over the course of four days! All of the assets you see on this page were made by myself. All screenshots and video where taken directly from Unreal Engine 4. If you have any questions feel free to send me a message on Twitter, @grossbloy.

Software Used: Maya 2016, Zbrush, Photoshop, Substance Designer, Substance Painter, and Unreal Engine 4.

Procedural Arcade Environment

Hi there! Thanks for checking out my environment! All of the elements you see on this page were made by myself over the span of 3 weeks. The software I predominantly utilized for this project was Maya 2016, Substance Painter, Substance Designer, and Unreal Engine 4. Everything in the environment below was generated procedurally through the use of modular meshes, procedural materials,  and basic blueprint logic. If you’re interested in using any of these assets in your own projects, feel free to check out my Gumroad where I have this environment for download!

Procedural Tile Blueprint

Everything in the environment is built off of one singular blueprint tile. All arcade cabinets, walls, props, lighting, and miscellaneous objects are spawned and placed based on a random seed dictated in the blueprint class. All of the spawn values are stored in a struct which allows local manipulations to any generated asset. I ended up making two variants of my tile, one that propagates during runtime, and one that propagates during construction. The tile that propagates during runtime is more costly, but allows for more flexibility during gameplay. The construction tile propagates all its props at execution, and because of that has no effect on frame rate. Below you can see the tiles updating at run time!

Below is a portion of the construction graph used for the procedural tile. Most of the graph on the left is generating all the values needed for generating each tile, while most of the graph on the right contains the logic for each element of the tile. (ie: not spawning posters over windows, or turning off lights if there are no fixtures)

Object Position Materials

As I began working on this environment, I came across a problem. In order to output the level of texture variation I wanted in my scene, I would have to spend an inordinate amount of time creating and assigning a torrent of material instances. The solution to this problem, was the Object Position node. I set up a function that takes the object position of whatever mesh the material is assigned, and uses that value to randomly select a 1:1 UV from a tilesheet. With the function made, I was able to add a huge amount of variance to my assets with a single material. Below you can see the object variance function at work as I move around each object. On the left you can see the screen texture and color of my arcade machine randomly generate. The static image in the middle is the tilesheet texture I used to randomly generate the screen variance in the arcade. On the right you can see the poster diffuse and edge wear change as it moves. With these two materials I was able to populate my entire environment with just a handful of materials.

Arcade Machine with textures randomly selected from its ObjectPosition. Arcade machine screen tilesheet. Poster alphacard with ObjectPosition material dictating its diffuse and edgewear mask.

Poster Material with ObjectPosition material dictating its diffuse and edgewear mask.

Arcade Screen Material

In addition to the Object Position Function that I described above, I wanted to implement a On / Off and Glitch state to my arcade screen material, without resorting to swapping out dynamic materials. To solve this, I made some rudimentary switches in my material using the IF statement. This allowed the modpiece blueprint to communicate and switch the screen material using a basic scalar value.



Beauty Shots

Below are some static screenshots I took of some various configurations of my level. They were all taken in real-time straight out of Unreal Engine 4.


Thanks for reading! If you have any additional questions or comments feel free to message me on Twitter: @grossbloy!



星際農業 APEX 02 (WIP)

Hi there! Welcome to my APEX progress page. I will be posting various assets breakdowns and progress shots from the development as I make them. All asset progress shots are rendered directly from Unreal Engine 4 unless specified.

If you have any questions or suggestions, feel free to reach out to me on Twitter @grossbloy. Thank you!



APEX is a hydroponics lab set up on the distant moon of Ganymede. With more than 390 million miles between your small colony of researchers and Earth, it’s up to you to ensure that your main source of food and oxygen is operational at all times. Balance day to day tasks such as maintaining and cultivating the agriculture all while keeping a keen eye on protecting your interplanetary harvest from environmental hazards.





Used for displaying the various environmental hazards in the terrain surrounding your base of operations. Definitely not used for watching terrible movies.

(Software used: Maya, Substance Designer, Substance Painter, Unreal Engine 4)



People say that talking to a plant will make it grow faster. So naturally giving it a name will make it grow even faster!

(Software used: Maya, Substance Designer, Substance Painter, Unreal Engine 4)


Oversized Airlock Keypad

There aren’t really enough people on your moon to justify locking your lab, but you had some old parts laying around one day and felt inspired.

(Software used: Maya, Photoshop, Unreal Engine 4)



One of the oldest remaining agriculture units still remaining in APEX 02. It has long since been retired and now spends its days as a makeshift mascot for the settlement.

(Software used: Maya, Substance Designer, Unreal Engine 4)

Interactive Elements

Generator Station

Power outage? Use the manual overload feature to recharge your solar cells! Not to be used for personal devices.

Super Practical Hydroponic Fill Station

Keep your plants happy by completely submersing them in an airtight water of water! (Please do not try this with non-plant based organisms).

Oversized Keypad Lock

If you don’t know the keycode you could always try phoning a friend!


UI / Design

Plant Status UI

One of the animated computer screens in the main lab area. Used for monitoring plant status.

(Software used: Adobe After Effects, Photoshop)

APEX Branding

Every good brand needs a good logo (even if your target demo is a few million miles away)

(Software used: Adobe Photoshop)


光之城 Environment

Hey there! Thanks for checking out my cliffside environment! All of the assets you see on this page were made by myself over the span of 3 weeks. All screenshots and video taken directly from Unreal Engine 4. If you have any questions feel free to send me a message on Twitter, @grossbloy.

Software Used: Maya 2016, Zbrush, Photoshop, Substance Designer, Substance Painter, and Unreal Engine 4.

LINE: Stylized Environment

Over the summer I had the honor of contributing on a fantastic project headed by some incredibly talented people. I was tasked to create some interactive stylized grass to fit into the demo level that was being produced. Below is the various foliage elements that I made for the project. All shots taken out of Unreal Engine 4 in real-time.

For more information about LINE, check out it’s progress here!

Additional Environment Shots:




Domicile of a Lonely Wizard Environment

A small environment I put together over the course of a month. All the screenshots are taken straight from the engine (UE4). All modeling, texturing, lighting, etc was done by myself. The procedural textures (walls, floors, wood) were done in Substance Designer, while the hero props (desk, armoire, book) were brought into Substance Painter. I used Marvelous Designer and zBrush for the various fabric material around the room. This was my first time working in all of these programs, so most of the time I spent on this project was learning all the different ways to not break everything! I learned so much from this project, I can’t wait to jump right in to my next project! If you have any questions about anything feel free to hit me up on twitter @grossbloy! Thanks for looking (◡‿◡ฺ✿)!

Pssst… I also wrote some breakdowns about this environment if you’re interested! You can check out all the juicy details and embarrassing spelling errors over on Cartrdge and

The finished screenshot taken directly from UE4

Some of the larger props in my environment

Some of the smaller props in my environment!

Progress Gif from graybox to finished screenshot

Candle flame material breakdown

Simple wood plank POM material breakdown

Since I have a lot of books I wanted some color variation, so I varied the diffuse’s colors a bit by the object position.

Just experimenting with some particles