Getting the most out of your grayscale noise textures.

Thread 2 - Balance

[1/19]

#vfx #techart #gamedev #indiedev #realtimevfx
@polycount
In my previous thread I shared information about texture consistency and the importance of utilizing the full range of 8-bit values.



[2/19]
This thread focuses on the balance and evaluation of values distributed in a texture, which can be equally important when building versatile noise libraries.

[3/19]
I want to note again that all of this is information is generalized, and your needs may differ.

[4/19]
One of the most common examples of an unbalanced texture is when values are distributed in a way that clamps or constrains them towards the lowest and/or highest values (0.0 and 1.0)

[5/19]
Here are two examples that depict this issue. Both use the full range of 8-bit values, but are arbitrarily clamped toward either end.

[6/19]
This limits the potential uses of a texture because the clamped regions are essentially hardcoded to a single state and do not hold any additional information to interact with inside of a material.

[7/19]
With a balanced texture you have much more freedom in defining how all regions of the texture get utilized.

[8/19]
More often than not, these clamped value regions end up being small, and without additional visualizers they are nearly impossible to spot.

[9/19]
First, lets have a look at the histogram view. This can be great for understanding the broad balance of values that exist throughout a texture.

[10/19]
Although, while creating noise textures in 16 bit mode, you are looking at a distribution of 62415 values, which can be difficult to parse in understanding clamped regions given the density of information.

[11/19]
Another useful technique is to scrub through the values, highlighting distribution percentages. Here is an example of this using Histogram Scan in Substance Designer.

[12/19]
Both of these options have their place in evaluating the state of a texture, but neither give a full view of how all the values exist next to each other at the same time.

[13/19]
To gain additional visibility, you can utilize color gradient curves that describe a lot more about the texture as a whole.

[14/19]
Here we see a standard heat map gradient, showing value distribution that is otherwise difficult to see in grayscale.

[15/19]
Next we have a quadrant gradient. This helps see how grouped percentages of value take up space in the texture.

[16/19]
Third, we have a endpoint gradient. This highlights regions as they near or reach either a value of 0.0 or 1.0.

[17/19]
Each of these are similar in concept, but together, quickly aid in evaluating the balance of values in any noise texture.

[18/19]
In my next thread, I'll be covering some tools and processes to create custom noise textures within Substance Designer, along with a more substantial pack of free content.

[19/19]
Correction for [11/19] :

16 bit has 65536 values! Not sure where 62415 came from..

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Tyler Walters

Tyler Walters Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @tech_art_tyler

Sep 4
Getting the most out of your grayscale noise textures.

A series of threads that will include technical information, workflow best practices, evaluation techniques, and free files.

Thread 1 - Consistency

[1/10]

#vfx #techart #gamedev #indiedev #realtimevfx @polycount
I hope this thread helps shed some light on the subject of building grayscale texture libraries that aid in game development workflows. It's important to note that I make a lot of generalizations about how these types of textures are utilized, and your needs may differ.

[2/10]
For games, we commonly rely on 8-bit texture formats. 16-bit formats are recommended when building source files, but require additional consideration when being utilized at runtime. For now we'll be focusing on 8-bit.

[3/10]
Read 12 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(