Very wavy experimentation using FilterForge.
Very wavy experimentation using FilterForge.
I’m really not a “pixel art” type of guy. I wish I was, but unfortunately I’m just not as great with it. Now making it more interesting, what about textures? Those are more accessible honestly, and to me they’re a step down from drawings and stuff. So I began investing a bit of time trying to figure out how I can make it happen. After a couple rounds of doing manual pixel art, I realized I can potentially make procedural textures out of it. Of course, it won’t have the same feeling as manually created pixel art textures, but this project was all about how close I can get it. First of all some past things I’ve tried.
This was for my thesis film: The Door to Tomorrow
In these two cases above I’m basing the original texture off of procedural means. I had to do this partly because I had little time to generate nice looking backgrounds for the “game scenes” in the animated film. The textures were first generated in FilterForge, then processed again in FilterForge using a filter called: I Dream in EGA by Mike Blackney. The filter has custom color input, so I can choose a couple colors matching the scheme of the texture provided. This way we don’t just end up with the default 16 colors.
I can then pick and choose what parts of the texture I want to use and also erase bits and pieces of pixels accordingly to have “stuff sticking out.” The method is simple, rapid, and quite good looking as long as you don’t change pixel scales.
But I kinda wanted a bit more. So I began investing some time doing more manual pixel art to learn the little things considered. There are tons obviously, and after studying more pixel-art based textures, I came up with a small method allowing for the style to be achieved while providing the ease in deployment. Of course, this is FAR from being a complete solution to achieving that specific clarity in style, but it’s decent small step forward.
I have a copy of FilterForge 4 beta 1, and they featured groups. I’m using that. Meet the Pixel Shader, the grouped component that takes a color map and height map and spits out pixely textures with shading.
The method employed here is actauly relatively simple. The output look is what’s difficult to achieve. In creating the little shader there, I basically had to modify the entire texture to suit a nice looking image. So it’s a bit more work than just “plug and play” unfortunately. But the deployment is fairly easy and the adjustments you have to make to the filter are pretty basic.
The internals of this component isn’t impressive at all. It’s in fact stupid simple.
The package contains two derivatives so you can have two directional lights with controllable colors. There’s an ambient lighting, shading bias, and several more options to fill in the goodness. The final stage is the pixelation, which happens via a checker node. I use this because it has two color inputs, so if you input another image into that checker, you get a “checkered” result between two images. This can be useful for a “dithered” look. In this case the filter isn’t needing that effect so the output comes straight out.
But in the end, what you ULTIMATELY need to do is design a good texture to begin with. In this case, I designed the filter and had to modify it so it would work with the system I implemented. The idea here is that the little component isn’t doing the entire job, it’s the whole filter that’s giving it the good look and effect of it.
I went around modifying other filters too so to achieve the same effect. A couple months ago I produced a filter that created SciFi Tech walls. It’s a pretty detailed filter and I thought… it can use a bit of pixelation. Here’s a screen cap of the presets after adding the Pixel Shader group component to the filter.
Of course, it’s flawed in that it’s not the true goodness of hand crafted pixel art. I’m not going to state here I’ve made the pixel art machine, but it kinda gets part of the job done. In my mind, the next step after producing the texture is to actually go in and give more context by hand. I made this to help myself a bit along the way and not necessary to finalize a product.
While I don’t want to be too restrictive, I’ll need to keep the filter to myself for now. There’s still a lot of things being developed for it and I’m using it personally in my job as well. This post does expose some of its secrets but doesn’t explain it all.
In part two of this discussion, I’ll talk a bit more about designing the filter so it works around the Pixel Shader.
Directly from my Behance page: A small exploration of color continues with fractal-like images. I created a filter using FilterForge and sampled the colors directly from a couple photographs.
- – -
Procedural work using FilterForge in exploring color and design. Each design was derived off of 5 colors I’m interested in. The images were created using a custom filter in FilterForge and processed by hand using Adobe Camera Raw.
- – -
In this not-so-much of a tutorial, we’ll take a look at how one of the filters I made some time ago called Rusting Tech Wall was constructed in hopes to give you a glimpse at some of the techniques I use add depth and detail into one filter.
This video does not show how you would go about making specific textures, but it shows you some of the ideas behind creating a filter and what goes into it.
A week or two ago I made two base-level filterforge tutorials for fun. Here they are both in one post!
In this very first episode of our exploration in FilterForge, we will explore a basic construction of a filter from start to finish. We will create a simple cartoon effect filter and discuss some fundamental techniques which can be reapplied to many other situations when constructing filters.
If you have feedback, questions, concerns, and requests for any form of tutorial please feel free to contact me at skybase [at] gmail.com
In this episode we'll take the cartoon effect we made in the previous episode and add a bit more to it. The techniques covered in this episode can be utilized in other programs and is very useful for adding details.
If you have any feedback, questions, concerns please feel free to contact skybase [at] gmail.com
Aside from me trying to make free stuff on my spare time, here’s a recent series I produced. A Dream About Circles extends my exploration into color, shape, and repetition. The work was produced using a bunch of photographs which were then filtered using a custom filter in FilterForge. It was later edited slightly in Adobe Camera Raw.
- – -
Somehow if you’re a 3D artist, you always end up looking for wood textures. Whether you are a student or a professional or a hobbyist, you just always run into a need or want for that wood texture. You may go on Google and search up some imagery, you can always go to some texture resource website and dig some textures up. Very cool. But what about making your own?
Important note: Now I’m going to be using a program called Filter Forge 3, this is a fantastic piece of node-based fiter/generator creation program you can use to make all sorts of stuff. In this case I’ll be using it to make the wood texture I’m talking about. Though let me tell you one thing: you don’t always need Filter Forge to do this tutorial. It kinda takes skill but you can essentially do almost the same thing in programs like Adobe Photoshop with a little bit of creativity and understanding. So it’s really not just for Filter Forge users.
Another Important Note: This is a very very simple tutorial. I didn’t include specific numbers because I think you… can really just find out those numbers yourself.
Here’s the resulting texture of the wood we’re making.
Alright so it’s pretty generic but we have lots of fine details, and some patterning going on. So what’s happening here? The basic idea is this: I basically have this in 3 layers which produces the effect.
Lets Break it Down Further
Alright I want this whole thing to be as basic as possible, given that some people think this is hard. No, it’s easy. Actually very very easy. So let’s begin our journey through this texture.
The first layer is just a perlin noise pattern, the second is a perlin noise pattern with a zebra-like profile, the final layer adds the thin, noisy grains. That’s our basis for the texture. The point here is that we’re using perlin noise generators to create much of the basic look of it. And by layering them, we achieve the apperance. The rest of the process is coloring the combined noise textures in a way to convey the wood feel.
Here’s how the wood texture looks without its color.
This black and white image can become several things: it can be a bump map or a map for colorization. But we’ll skip that for now and take a look at the core construction of this texture.
The first base layer looks like this a general stretched perlin noise:
Yup. That’s the basis. Now the second layer:
There’s a bit more going on with this layer. You can see the “zebra effect” I’m talking about here clearly. The last layer looks like this:
Alright, so those are the 3 key layers and when combined they basically give you that black and white image map you saw earlier.
Because I’m using Filter Forge, generating these kinds of noise patterns isn’t that complicated. It does take a bit more using programs such as Photoshop though and I encourage you to experiment methods in creating those noise patterns you see above. I figure though, I’ll also make another experimental / tutorial post on how you can make those textures right in Photoshop without 3rd-party-plugins in the near future.
In Filter Forge the node structure would look like this:
Not that hard right? Alright, we can do a little bit of optimization here. Since I know that I can control the profile of the perlin noise patch, I can feed a curve to simulate the threshold node, hence removing 1 step of the process.
It’s really up to you on if you want to do it either way. But of course, the more optimized the faster your filter will run. Pretty simple.
Coloring the texture is super simple. It it only takes 2 components: the profile gradient and elevation gradient.
And that’s really all there is to this texture! I tried to keep this tutorial as simple as possible giving you the really basic idea of how you’d go about producing the look you desire. Of course, if you want more details, you can add more grain, you can add more roughness via the perlin noise components, but ultimately what it comes down to is the layering and breaking it down into those core components. Once you define the basics, you can then move on to create elaborate, detailed textures you want.
Here’s what my wood generator looks like with all the rest of the components and controls.
Sure it’s a little more involved but most of it is just a chain of alternative styles and looks just so I have a bit more control over my end result. You may be looking at this and going “that’s … complex” but really the basic idea hasn’t really changed and the additional chain of components you see get switched on or off by a switch component.
So there you go. A very elementary tutorial / introduction on how you can produce the wood texture from absolutely nothing. By the way, because Filter Forge can make this texture seamless so this can become a nice tiling texture for your 3D scene or object.
If you have any questions or commentary just write as a reply. I’ll try to respond to them and also I may follow up with another post too.
This post discusses some stuff regarding this filter I produced in FilterForge a while ago: http://www.filterforge.com/filters/9726.html you can download the filter there too.
I’m not really THAT technical with stuff. I honestly don’t know all the math that goes behind each node I use in FilterForge but I have some clues and hints on how some of the stuff works.
Either way, some time ago I wanted to produce a multi-level sharpen filter. Unlike a single sharpen filter, this “dream” filter basically allows for a broad range of sharpening. To do this I used Filter Forge.
Let me show you some pictures of what happens when I use it. First we have our original photograph.
The image has not been processed in anyway…. now… for the processed image.
This is very subtle (I’m using default values) but you can see some changes in the contrasts of various areas. Some areas “pop” now more than others.
Some comparison here so you can see what’s different. It’s still kinda subtle but you can mildly see what’s happening.
What makes it pretty neat is how this sharpen filter works. It’s on multiple levels of detail allowing you to sharpen small, medium, and large details separately. So if you ever want to sharpen a LARGE area then you can turn down the small and medium sharpen filters and leave the large sharpen with higher values. If you want small details to pop, you can do so too.
To show you what can visually happen here’s another shot at the image above.
With a couple additional nodes I was able to produce a filter that allows for various degrees of control while sharpening a photograph.
Now for the exciting technical aspect of how this was accomplished! You probably need to click and see at the full resolution
The basics go like this. I have multiple highpass filters with different radius settings. The radius values weren’t chosen mathematically, they were chosen based on visual output so nothing fancy there. Then you see this huge stack of Min and Max nodes which allow for combinations of the nodes. This is really the fun part because it’s where I didn’t know what to do. I began combing the highpass nodes using various tools and then I realized I should just stick with min and max because of the way they operated. Also the way they looked seemed valid enough for usage. I then used a blend node (which was set to overlay as you’d expect.)
Now this is the really weird part. There are two things being mixed here: two separate chains for min and max nodes. To combine them both, I used a blend node. I lastly gave the user control over which they want to chose. If they want a brighter image then they can slide the control to achieve what they want visually.
And that’s basically all there is to this filter!
Here are some more examples of the filter in action.
Of course you do have to be careful of over-sharpening images. I just wanted to show you what it basically can do for you.
So if you’ve been wondering “where is the animatic??” the answer is: I did it! And totally kept the render to myself for the whole time. Yes it’s the same thing only with the old doctor talking weird stuff. Come to think of it, I did go back and knock out several parts just over matters like “they don’t sound good” and otherwise.
Either way, allow me to introduce you to another concept: tools. Because “HAVOC” is being created at the speed of a rabbit racing away from a big, hungry wolf, I had to create some tools to aid me in quick creations of assets. Some tools are already available, like Adobe Illustrator which was very useful for making this:
The doctor’s castle is basically like a tree. Awesome. I used several new (and frankly, the best) features of Illustrator CS5 to assemble this work in about an hour or two. By the way, all the assets I’ll be showing you here will be used in the last shot. It’s a bit of a spoiler, but I don’t think it really matters.
Other tools were used to aid in creating backgrounds and simple assets such as windows. For this, I created a “generator” in a program I use often called FilterForge 2. Very useful for rapid content generation.
These “windows” will be pasted onto a UV map for a bunch of houses and buildings I created over the week ends. I’ll be showing you those in the next blog post I guess. I don’t think any of them are ready for viewing yet. These windows will be seen from a distance, so I did minimum texture work on it, and went straight to just making sure it was reasonable and easy to use. Now because I am doing this procedurally, I can change parameters I set up around easily to create various windows instantly.
The basic idea is to avoid doing repetitive tasks that can hinder work times and flows. But not only that, because the project’s scale is huge compared to the time I have, it’s just one way to save time and costs.
Here’s the source of the window generator.
I also wanted to save a bit more time making backgrounds for this one scene. So I patched together a background generator that will get me stylized vector backgrounds instantly.
I have various parameters that I can easily edit to generate different moons, stars, and otherwise.
Here’s basically the source for how FilterForge was patched to create the elements in the skies.
And of course, because it’s all procedrual I can quickly change parameters and make new backgrounds if I felt that the previous background wasn’t fitting the scene. Fun stuff!!
So those are some of the tools I made using FilterForge to create some elements of the film. Next blog post I’ll show you what it looks like when it finally all comes together.
Lastly, I’ll leave you with this picture:
Well! That’s pretty much it for now. I’ll update with more things next time!!