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.


March 18, 2014

Midterm Demo Reel

My Midterm Demo Reel at Ringling College of Art and Design for Junior year.



Some info about it:

The first section is a modular kit, demonstrating my use of modeling and scale to create a kit with pieces that lock within each other. A restaurant has plenty of shiny and expensive-looking surfaces, so it's a display of shaders with incredibly clean surfaces. The cloth and plates are my favorite works: the bands are generated procedurally, so they are incredibly sharp and require no separate texture. To help remove aliasing, the shader calculates falloff and world position distance from the camera to blur the edges. The plates use sphere masks to generate a perfectly clean circle, and the golden reflection is achieved by multiplying a simple 2D texture (in this case, the velvet texture from the chair) with a golden yellow, and using it as a basic 2D reflection. The end result is quite acceptable.

The second section is a model of an airtank demonstrating advanced vertex painting and material work. The bumpy effect of paint peeling off is achieved with tiling mixmaps and normal maps, and is featured on the main body paint and the rubber handle. The shader also performs if commands to reveal a middle layer through the middle value of the mixmap and is adjustable. The brass performs a simple fade to rust, and the dial oxidizes. As for the base materials, the specular on the paint changes color based on your viewing angle much like a real paint would. The brass contains different normals tiling over the UV sheet with very intense lighting effects. The entire model is only 1300 tris, demonstrating 4 different dynamic materials.

The third section is a coniferous forest biome. The rocks perform a Z-up calculation over the surface normal to blend between a soft snow that always sits on top and a rough rocky surface. The snow uses texture maps to sparkle. All of the trees have vertex displacement based off of the leaf card UV sheet for subtle wind effects. The falling snow particles are also lit and use simple 2D reflections to sparkle.

Welcome!

Welcome to my art process blog! This will be a relatively informal dumping grounds for my artistic endeavors, including but not limited to realtime shader work in UDK, 3D modeling in Maya and Z-Brush, Visual Effects, Kismet programming, Some work in Illustrator and Photoshop, and pencil sketches. I will also use this to provide tutorials for users of UDK and write essays about contemporary topics related to video games.

Please allow me to introduce myself: my name is Michael Fahel. I live in a small city called North Port, Florida (pretty far away from the bigger game companies, I know). I previously attended Ringling College of Art and Design for 2, 1/2 years majoring in Game Art and Design. My specialty (if it could be called one) is creating shaders using UDK's material editor. I believe most of what people consider to be "good graphics" comes from the use of high-quality surfacing and per-pixel lighting. When I'm not playing or making games, I love walking, bicycling, swimming, writing fiction and expository essays, and I have a lot of fun making art in a variety of mediums.

If you wish to contact me for work, please send me an email at michaelf66@hotmail.com.