Working with clean and abstracted shapes,colors and gradients does't mean your visuals are simple, for me it means they are an open canvas to expand upon with technical art.
I think as game artists we're always chasing some imaginary horizon. Beyond that horizon are words like " better graphics" or" next gen" or "photo realism". Words that at some point I stopped caring for. For the last five years I've been on the downward slope of a parabolic creative trajectory where instead of going up and wanting "more" I now want " less".
And the culmination of that journey is, that I now prefer to create game art in very peculiar way. Art that doesn't need to be wrapped in pixels and can just be what it is. Simple models that forego textures and normal maps and usually only have some vertex colors. Simple geometry with which I can start crafting inside Unity3D.
Strangely I love lighting and moodiness in game art, so don't read this as a game artists that wants to go "low poly". The game art I make is sometimes ridiculously over engineered or impractical, because I have put myself under strict limitations. Limitations which aren't always clear to myself, but of which the lack of textures is an important but not the only limiting requirement. I also tend also try to break stuff and find strange new solutions to sometimes simple problems.
This all started in 2013 after the Moonpath to Elsweyr MOD for Skyrim. I wanted to make an RTS by myself set in the afterlife with whimsical yet dark stories and characters that was easy and efficient to develop by myself. A game I still haven't finished by the way, so ouch on that. But at some point I created this visual by near accident and it set me on an interesting nearly 5 year journey:
Here was a world I had created with only geometry and some fairly simple shaders. But filled with a few tricks to make it stand out from the general low poly stylings that other people where developing at the time. No flat shading or edges where I didn't want them. It was about creases and mountain sides created with the least amount of complexity I could get away with and still achieve a mood and setting I wanted. It basically blew my mind.
Mostly its about carefully modeled surfaces that allows for angular edges and smooth surfaces which are then highlighted through different shading effects:
This clean modelling technique allowed me to create worlds, buildings and inhabitants without having to focus on detail, yet with enough depth and plasticity to create very subtle and diverse moods through color and lighting.
During development of Oberon's Court I realized that by taking away the textures I was forced to discover new means to create certain effects. Even with regards to User Interface elements. Take for instance a gauge that fills up, without textures you need to rely on math to create certain shapes and effects in your shaders. The gauge here is filled by making sine waves from UV coords for instance.
Another example where I was able to use my obsession for abstracted yet colorful and smooth graphics was the game Rekt! (iOS) for which I was asked to do the technical art last year. Here the game already had a slick 3D world and vehicles which needed something beyond modelling cleanliness. I chose to take the static arena models and create dynamic color cycles based on the state of the game and projected on the world's colors. And by coding the colors directly and generating the palette through contrasting and complimentary colors in the shaders.
Controlling all the shaders through a single code interface became my next step, with it was able to create the entire cityscape for our Upcoming RTS game. The entire city shading is done through a few core shaders that control everything from the ground fog, shading and lighting to a full day-night cycle. Very little in this visual is standard lighting and shading.
When Oberon's Court grew to large to easily finish by myself (its still in the fridge) I switched to a new project a fantasy aerial combat game called The Falconeer. Something more easily finished and created. And it started with a freeform experiment in creating a better day/night cycle through code and shaders. Here are some of the results.
Interestingly enough all this code based creation has also allowed me some interesting experiments beyond the environments.
For instance face generation for the game. Here I wanted to use vertex displacement to mold a single face mesh into an endless variety.
By creating a simple neutral face mesh with several layers of vertex colors I'm able to distort and reshape that same model for procedural character generation.
Basically the vertex colors separate the different area's to color and distort. And UV coords and channels are used to distort the shape dimensions.
Off course appropriate props help in the illusion. But its a lot of fun to see how far cheeks and chins and noses can be stretched this way.
I love animation, and using shader based animation allows for a lot off very small details that sometimes really matter. Freeing up all those UV channel data for prepping these animations allows for creating really cool dynamics such as this ship's sails.
Dropping the sails as well as the curvature are all done in the shader.
For me something like this is a more valuable investment than having to think about the texture of the sails itself, the motion and shape is now more evocative of what a sail is than a fabric expression could ever be.
I'm not writing this to convert people to my way of creating game graphics, because truth be told (and as I have been pointed out myriads of times) there are often quicker and easier ways to do this stuff. And I guess it's as close to being a "technical" artist as you can get. But it allows me to experiment in a very precise and clean creative process, where technology and forced limitations become a beautiful prison from which to try and escape, meeting all kinds of new and interesting inmates along the way. It started with me saying goodbye to textures, and ends up with me wanting to create everything from as little as possible.
Here's another example, no flying game like the Falconeer should be incomplete without clouds, and clouds are notoriously difficult to tackle, especially if they don't serve as a backdrop but are sometimes the centerpiece of your game.
This was my first experiment, combining sine-based noise with fresnel and vertex color effects to create a very simple sphere based cloud.
Recently I'v added a real-time created perlin noise map worldspace tri-planar mapped to the mix and then figured out a way to distort the environment skydome over the cloud spheres. (I will need to do an entire article on this, because I have a feeling this is a strange and wholly new way to light clouds without any actual lighting calculations). And it now looks like this.
So I use the word textureless a lot , but in the end that's just a single strange starting point for an entire journey into game graphics , shaders and creating game worlds that feel honest and showcase their technology rather than hiding it behind photo realism. I hope it inspires artist to dive into coding and what technology can do to expand your artistic vision. I am not a math wiz, the math behind the clouds is basically a lot of trial and error. Tools like shadergraph and shaderforge allow for such immense levels of experimentation that often insight and understanding follow from simply monkeying around, trying to connect and fiddle with things possible not meant to be connected.
It might all look very daunting and have a lot of fancy tech jargon, but in the end for me it all starts with.. " hmmm I wonder what this does." I usually don't go for deep understanding, just grasping enough of the basics to bend it to my will. I often have trouble explaining how I achieved certain effects because I misunderstand or mix up some of the techniques I've (ab)used. And that's just the result of me channeling my inner monkey and randomly bashing at shaders and code trying to create brilliance by chance.
For some shameless self promotion here's a little teaser for the Falconeer to showcase what Unity3D and a single monkey with a glorified typewriter can make.