January 24, 2015

Stylized Waterfall

This is a particle VFX I made in UE4. A community member by the name of "Anadin" posted a game project called "Bears Can't Drift!," and I wanted to show them one way to use more complex particles while staying within a cartoony, stylized world. This effect uses tons of GPU particles to simulate flowing water and solid mist as well as 3D mesh clouds. It also uses a combination of lit particles and unlit particles with reflections to render some nice, realistic effects with as little overdraw as possible. The big clouds and solid round mist effects are less complex than the transparent GPU sprites (transparency is necessary to simulate fast GPU collision).

The GPU particles performing the water effect are spawning 5000 times a second, and lasting for 1-3 seconds. There are on average about 8000 particles shown here at any given time. And because they're all GPU particles, they render much more efficiently than standard CPU particles and collision performs effortlessly.

Altogether, the effect is fairly efficient to render, but visually complex, and within the style of that world.

January 20, 2015

Gametalk Logos

Some users on a game forum site had requested I make a logo with them. I brainstormed some concepts, made a few sketches, and some work-in-progress logos and icons for them exploring different design possibilities. Some were made with their feedback, others were my own concepts. Unfortunately the project fell through, but this compilation of some of the logos shows the progress undertaken to design and refine them. For all the logos, I went for a retro feel.

My sketches tend to be VERY rough, just to get some ideas on paper before committing to a digital design.

Sheet containing most of the design options for the site. Top left shows my personal work-in-progress concept. Top right shows different logos utilizing a pixelated style. Icons in the middle showcase different design styles using the same color scheme. Ultimately, a style was not chosen. The bottom logos were a third concept requesting the logo mimick aspects of the Screw Attack logo.

One user requested a logo based on a hexagon shape. It was popular with users, but it felt too dissonant for my tastes.


The logo I preferred for the site. A good balance of  curves, straights, and strong complementary colors. The concept is based on graphics in the board game Sorry! and evokes a similar sense of retro styling with bold shapes.

October 20, 2014

Perfect Tile System

I've been developing a master material in Unreal Engine 4.2 which handles tiling and variations using a mask, a normal map, and a noise texture for variation. Using this system, I found that a grayscale mask and a normal map as small as 1282 pixels and a 2562 pixel grayscale noise map can generate perfect tiles that have enough variation to cover the screen without noticeable tiling effect. There's also a cool glass shader with parallax refraction and Subsurface Scattering, emissive glow, falloff blending to simulate grout occlusion at oblique angles (at a much cheaper cost than relief mapping), and a dual color algorithm that uses a single texture to provide two different color variations.

I made 20 tile presets already, and the total texture memory requirement is only 269 Kb. Because the colors are parameterized, you can feel free to change the color of any material without adding any more to the memory requirement.

Planned features include support for tile textures via overlaying (useful for ceramics), maps for differentiating between glass and nonglass tiles, maps and other options for metallic tiles, new assets for bricks, and non-square tile designs.

It's a very powerful, scalable shader, and may be coming soon to the UE4 marketplace. I'm planning to release the system and all assets/presets for only $15 Stay tuned!






September 28, 2014

Project Kamron - Pokemon with Next-Gen Graphics

Pokemon has generally been a fantastic 2D series from the get-go. The games have always been 2D, the main games have always been on handhelds, and other promotional illustrations have always held a 2D watercolor style, or otherwise. But recently, the series is making forays into 3D, and pretty soon these Pokemon can be better realized than ever before.


Similar to how Lucario was given a more well realized 3D treatment with Smash Bros, I've wondered what some of these Pokemon could look like with UE4 physically based shading, LPV, APEX cloth, particles, and whatnot. I also wanted to learn and experiment with using these new techniques to improve and push the visual quality of games with a more cartoon style.

My first character will be based off of a Karmeleon, donning a bandanna and ripped pants held up by tie-down straps. The character will be modeled in Maya 2014, and the clothing will be made dynamic with the APEX clothing plugin tool. Because Karmeleon has a flame-lit tail, I will be animating the flame directly onto a sprite sheet in Photoshop. All this will be imported into UE4 for the shaders to be built.

Goals:

  • Preproduction sketches for proportion and final design
  • Apex cloth for ripped pants, holding straps, and realistic deformations, if possible
  • A low-poly model rig prepped for animation
  • Fully realized shaders, including a subsurface skin/claw/clothing, dirt textures, and if possible, Z-brush. Would like to attempt deeply refractive eyes.
  • Animated fire VFX with particles in UE4
  • Screenshots in UE4
NOTE: PROJECT IS ON HOLD
I need to purchase a retopology software in order to continue using this project. I'm thinking 3D Coat, which is what I was originally trained on.

April 21, 2014

2115

In one hundred years, what will our oceans look like? 2115 was an answer to that question. Intended as a museum exhibit to teach children and adults about ocean acidification, the game started off as a simple Liberal Arts class assignment in Ringling College of Art and Design. It was so well received, my good friend Meng Wang and I returned to make it an actual game for use in Mote Marine Aquarium in Sarasota, Florida and another museum down by the Florida Keys.

The game was made in UDK using DirectX 9 technologies and runs through visual scripting in Kismet. Meng Wang was responsible for most of the complex models used (corals, sponges, rocks, dolphin, crab, and shark). I was responsible for all the other models (the lighthouse, most grass and seaweed, some rocks, the turtle, the brittle star, the laboratory, and all other incidental models). We used free textures when available, and I made textures and graphics in Photoshop as necessary. I was responsible for all material authoring, which included the vertex paint on the lighthouse, the transmission effect on sponges, wind vertex displacement, animation using vertex displacement, and a setup that mimics physically based reflections using scene captures and blurring/brightening by falloff in DX 9. I was also responsible for the music, sound effects, setdressing, Kismet visual scripting for gameplay, cinematics, animation, visual effects (including the particle effects, gameplay effect elements, post processing, and HUD effects), optimization, and graphics. I made most of the sound effects and all of the music in Mulab 5 with the Miroslav Philhamronic Orchestra.
















Version 1.0.0 Kismet scripting code for the majority of the project (code for the aquarium is held in a different file). Makes use of remote events, state switches, failsafes, and resets while preventing bugs as much as possible. None of the code uses spinlocks, so it runs quickly, reliably, and very efficiently without much trouble. Some effects are controlled in Materials, or with the case of the doppler sonar, the sound cues.

This material uses vertex animation: smoother and more accurate than bone/vertex animation, and is much cheaper to render. It uses sine waves to generate the bobbing and flapping movement. This setup supports a dynamic speed based on vertical world position that speeds up or slows down the flapping motion as the turtle is moved higher or lower in the space. This gives a nice gliding or swimming stroke effect automatically as the turtle rises and falls with the basic Matinee animation. The material also supports weights by a creative use of a separate UV sheet to give the shell complete hardness, the front fins more flowing motion, and a harder cranium with a softer neck. All the animals in this project use vertex animation including Jellyfish, Dolphins, Sharks, and they are all static actors without any skeletons.

March 28, 2014

Little Big Planet Levels

Some level designs using Little Big Planet's level editor. I apologize for the video quality, these were recorded in analog standard definition. You can play the levels in Little Big Planet by searching for the user "mariomguy."









Conquest Board Game: The Making

You can download a print and play version of the game here:




Back in Middle school, class didn't start until 9:30, and kids who were dropped off by their parents at 7:00 had nothing to do for two-and-a-half hours. I had a couple friends, and we would play card games to pass the time. I would also make board games using The Print Shop and cardstock paper, then bring them to school to test them out. Some of these designs were actually really fun to play, including a game played with two dice and a few pieces on a board 15 spaces long in a single line.

However, my favorite design of all of these was a triangular board game called "Conquest." The spaces were triangular, movement was determined by cards, and there were even special cards in this version for anyone who reached the center. The goal is to capture all 3 of your opponent's pieces. The game was inspired by Backgammon, where movement was determined by luck and strategy comes into how you choose to move. You can also move more than one piece at a time in Backgammon, a concept few other games replicated quite as well. This made the game easy to play and understand but with a very deep strategy, plus the chance factor to keep things interesting turn-by-turn. Other games like Chess, Checkers, Sorry, and Trouble rely either a bit too much on strategy or luck to win, and the turns are not as interesting. While they do what they do very well, there are moments where Chess is not surprising or interesting, and losing a game like Sorry always feels terrible.

The cards in Conquest may require moving one piece 2/3 spaces or split 2/3 spaces among multiple pieces. The moves are never very complex, but they change the game dramatically and players are surprised by every turn. In a very early prototype of the game, I had all my pieces right next to my friends. I thought it would be more difficult to take me out if I was right next to him, but then he drew a Split 3 and destroyed all my pieces in a single move! The balance of chance and strategy made this game one of the most fun to play.

In Ringling, I chose to make this game a reality by constant playtesting and fixing certain design issues. The board was changed to a diamond shape but kept the same triangular spaces, balancing the distance between all players. Certain cards were changed slightly, and it was here I thought of an interesting mechanic: play for your opponent's turn. The game was a huge hit amongst playtesters and the professor gave it very high remarks. Most other students wanted to make RPGs with complicated attack/defense systems, and few had enough time to design it well. A year later I spoke to the upcoming freshman about game design, stressing the importance of simplicity and allowing players to understand how to play the game as soon as possible, and offered suggestions on how to keep things simple but still interesting and fun.