Tyler Walters Profile picture
Sep 4, 2022 12 tweets 5 min read Read on X
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]
One of the most essential things to understand about 8-bit grayscale textures is that they only support 256 unique values, from 0.0(black) - 1.0(white)

[4/10]
One potentially useful way to imagine this is if you create an 8-bit 1024x1024 linear-gradient grayscale texture, it can only provide you with 256 values. Meaning each value will have to repeat 4 times horizontally to fill the texture. (256x4=1024)

[5/10] Image
With this in mind, it can be greatly beneficial to utilize the full range of value in your textures. Not just for the sake of quality but also to trust that your textures are consistent across any desired implementations from project to project and person to person.

[6/10]
A library of consistent noise textures can greatly improve the process of artistic exploration while you are looking to formulate new visuals.

[7/10]
For example: If you build a material that references a texture storing a full range of values, you can make confident decisions about how to interact with those values from 0.0-1.0, and swap it with other full range textures knowing that they will all function equally.

[8/10]
On the flip side, if you were to have built that same material with a texture that is 80% of the full range, you may have to introduce additional logic to support that single texture. This can risk increasing shader cost, limit potential workflows, and cause confusion.

[9/10]
Here are two examples of non-ideal textures, both of which only use a fraction of the full 8-bit range. Even though they look similar in pattern, their resulting interaction with material logic would be different and error prone without manual effort to adjust for each.

[10/10] ImageImage
Here is a link to download an 8-bit 2048x2048 version of this noise that follows the principals discussed so far: dropbox.com/s/a9qq0u8b7if1…

[Bonus] Image
Sneak peak into next thread where I will start covering tools and techniques to quickly test the quality and consistency of your textures.

• • •

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

Nov 6, 2022
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]
Read 20 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!

:(