www.beyondextent.com Open in urlscan Pro
52.17.119.105  Public Scan

URL: https://www.beyondextent.com/articles/finding-your-own-artistic-style
Submission: On June 07 via automatic, source links-suspicious — Scanned from DE

Form analysis 3 forms found in the DOM

<form data-node-type="commerce-cart-form" style="display:none" class="w-commerce-commercecartform">
  <script type="text/x-wf-template" id="wf-template-c0bf0673-ae3b-997a-f7d9-d4cf4b03deab">
    %3Cdiv%20class%3D%22w-commerce-commercecartitem%20cart-item%22%3E%3Cimg%20data-wf-bindings%3D%22%255B%257B%2522src%2522%253A%257B%2522type%2522%253A%2522ImageRef%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.sku.f_main_image_4dr%2522%257D%257D%255D%22%20src%3D%22%22%20alt%3D%22%22%20class%3D%22w-commerce-commercecartitemimage%20image%20w-dyn-bind-empty%22%2F%3E%3Cdiv%20class%3D%22w-commerce-commercecartiteminfo%20div-block%22%3E%3Cdiv%20data-wf-bindings%3D%22%255B%257B%2522innerHTML%2522%253A%257B%2522type%2522%253A%2522PlainText%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.product.f_name_%2522%257D%257D%255D%22%20class%3D%22w-commerce-commercecartproductname%20title-cart%20w-dyn-bind-empty%22%3E%3C%2Fdiv%3E%3Cdiv%20class%3D%22wrapper-category-cart%22%3E%3Cdiv%20data-wf-bindings%3D%22%255B%257B%2522innerHTML%2522%253A%257B%2522type%2522%253A%2522Option%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522option%2522%252C%2522params%2522%253A%255B%2522option%2522%252C%2522option%2522%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.product.f_ec_product_type_2dr10dr.name%2522%257D%257D%255D%22%20class%3D%22w-dyn-bind-empty%22%3E%3C%2Fdiv%3E%3Cdiv%20class%3D%22square-s%22%3E%3C%2Fdiv%3E%3Cdiv%20class%3D%22red-s%22%3Ebeyond%20extent%3C%2Fdiv%3E%3C%2Fdiv%3E%3Cdiv%20data-wf-bindings%3D%22%255B%255D%22%20data-wf-conditions%3D%22%257B%2522condition%2522%253A%257B%2522fields%2522%253A%257B%2522price%2522%253A%257B%2522eq%2522%253A0%252C%2522type%2522%253A%2522CommercePrice%2522%257D%257D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D%2522%257D%22%20class%3D%22price-w%22%3EFree%3C%2Fdiv%3E%3Cdiv%20data-wf-bindings%3D%22%255B%257B%2522innerHTML%2522%253A%257B%2522type%2522%253A%2522CommercePrice%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522price%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.price%2522%257D%257D%255D%22%20data-wf-conditions%3D%22%257B%2522condition%2522%253A%257B%2522fields%2522%253A%257B%2522price%2522%253A%257B%2522gt%2522%253A0%252C%2522type%2522%253A%2522CommercePrice%2522%257D%257D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D%2522%257D%22%20class%3D%22price-w%20w-condition-invisible%22%3E%240.00%3C%2Fdiv%3E%3Cscript%20type%3D%22text%2Fx-wf-template%22%20id%3D%22wf-template-c0bf0673-ae3b-997a-f7d9-d4cf4b03deb1%22%3E%253Cli%253E%253Cspan%2520data-wf-bindings%253D%2522%25255B%25257B%252522innerHTML%252522%25253A%25257B%252522type%252522%25253A%252522PlainText%252522%25252C%252522filter%252522%25253A%25257B%252522type%252522%25253A%252522identity%252522%25252C%252522params%252522%25253A%25255B%25255D%25257D%25252C%252522dataPath%252522%25253A%252522database.commerceOrder.userItems%25255B%25255D.product.f_sku_properties_3dr%25255B%25255D.name%252522%25257D%25257D%25255D%2522%2520class%253D%2522w-dyn-bind-empty%2522%253E%253C%252Fspan%253E%253Cspan%253E%253A%2520%253C%252Fspan%253E%253Cspan%2520data-wf-bindings%253D%2522%25255B%25257B%252522innerHTML%252522%25253A%25257B%252522type%252522%25253A%252522CommercePropValues%252522%25252C%252522filter%252522%25253A%25257B%252522type%252522%25253A%252522identity%252522%25252C%252522params%252522%25253A%25255B%25255D%25257D%25252C%252522dataPath%252522%25253A%252522database.commerceOrder.userItems%25255B%25255D.product.f_sku_properties_3dr%25255B%25255D%252522%25257D%25257D%25255D%2522%2520class%253D%2522w-dyn-bind-empty%2522%253E%253C%252Fspan%253E%253C%252Fli%253E%3C%2Fscript%3E%3Cul%20data-wf-bindings%3D%22%255B%257B%2522optionSets%2522%253A%257B%2522type%2522%253A%2522CommercePropTable%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.product.f_sku_properties_3dr%5B%5D%2522%257D%257D%252C%257B%2522optionValues%2522%253A%257B%2522type%2522%253A%2522CommercePropValues%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.sku.f_sku_values_3dr%2522%257D%257D%255D%22%20class%3D%22w-commerce-commercecartoptionlist%20option-list%22%20data-wf-collection%3D%22database.commerceOrder.userItems%255B%255D.product.f_sku_properties_3dr%22%20data-wf-template-id%3D%22wf-template-c0bf0673-ae3b-997a-f7d9-d4cf4b03deb1%22%3E%3Cli%3E%3Cspan%20data-wf-bindings%3D%22%255B%257B%2522innerHTML%2522%253A%257B%2522type%2522%253A%2522PlainText%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.product.f_sku_properties_3dr%255B%255D.name%2522%257D%257D%255D%22%20class%3D%22w-dyn-bind-empty%22%3E%3C%2Fspan%3E%3Cspan%3E%3A%20%3C%2Fspan%3E%3Cspan%20data-wf-bindings%3D%22%255B%257B%2522innerHTML%2522%253A%257B%2522type%2522%253A%2522CommercePropValues%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.product.f_sku_properties_3dr%255B%255D%2522%257D%257D%255D%22%20class%3D%22w-dyn-bind-empty%22%3E%3C%2Fspan%3E%3C%2Fli%3E%3C%2Ful%3E%3C%2Fdiv%3E%3Cdiv%20class%3D%22wrapper-cart-q%22%3E%3Ca%20href%3D%22%23%22%20role%3D%22%22%20data-wf-bindings%3D%22%255B%257B%2522data-commerce-sku-id%2522%253A%257B%2522type%2522%253A%2522ItemRef%2522%252C%2522filter%2522%253A%257B%2522type%2522%253A%2522identity%2522%252C%2522params%2522%253A%255B%255D%257D%252C%2522dataPath%2522%253A%2522database.commerceOrder.userItems%255B%255D.sku.id%2522%257D%257D%255D%22%20data-w-id%3D%22c0bf0673-ae3b-997a-f7d9-d4cf4b03deb7%22%20class%3D%22remove-button%20w-inline-block%22%20data-wf-cart-action%3D%22remove-item%22%20data-commerce-sku-id%3D%22%22%20aria-label%3D%22Remove%20item%20from%20cart%22%3E%3Csvg%20data-w-id%3D%2285e7857c-8fde-3617-a257-462706292459%22%20class%3D%22icon%22%20width%3D%2216px%22%20height%3D%2216px%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cg%20stroke%3D%22none%22%20stroke-width%3D%221%22%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cg%20fill-rule%3D%22nonzero%22%20fill%3D%22%23333333%22%3E%3Cpolygon%20points%3D%226.23223305%208%200.616116524%2013.6161165%202.38388348%2015.3838835%208%209.76776695%2013.6161165%2015.3838835%2015.3838835%2013.6161165%209.76776695%208%2015.3838835%202.38388348%2013.6161165%200.616116524%208%206.23223305%202.38388348%200.616116524%200.616116524%202.38388348%206.23223305%208%22%3E%3C%2Fpolygon%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E%3C%2Fa%3E%3C%2Fdiv%3E%3C%2Fdiv%3E
  </script>
  <div class="w-commerce-commercecartlist cart-list" data-wf-collection="database.commerceOrder.userItems" data-wf-template-id="wf-template-c0bf0673-ae3b-997a-f7d9-d4cf4b03deab"></div>
  <div class="w-commerce-commercecartfooter cart-footer">
    <div aria-live="" aria-atomic="false" class="w-commerce-commercecartlineitem cart-line-item">
      <div>Subtotal</div>
      <div data-wf-bindings="%5B%7B%22innerHTML%22%3A%7B%22type%22%3A%22CommercePrice%22%2C%22filter%22%3A%7B%22type%22%3A%22price%22%2C%22params%22%3A%5B%5D%7D%2C%22dataPath%22%3A%22database.commerceOrder.subtotal%22%7D%7D%5D"
        class="w-commerce-commercecartordervalue"></div>
    </div>
    <div class="checkout-actions">
      <div class="btn-wrapper">
        <a href="/checkout" value="Continue to Checkout" data-node-type="cart-checkout-button" class="w-commerce-commercecartcheckoutbutton btn" data-loading-text="Hang Tight..." data-publishable-key="pk_live_51GWhcmCvi3qUCg2ByKcNrkBIouRtxDdLysQsxhBT9LVxXXnGgvWyWeQzEqhyQAhVFZ4VlOYzoTKulVPSfZU9x65f008o9Sdef4">Continue to Checkout</a>
        <div class="button-square">
          <div class="circle-b-f"></div>
        </div>
      </div>
      <div data-node-type="commerce-cart-quick-checkout-actions" style="display:none" class="web-payments">
        <a role="button" tabindex="0" aria-haspopup="dialog" aria-label="Apple Pay" data-node-type="commerce-cart-apple-pay-button" style="background-image:-webkit-named-image(apple-pay-logo-white);background-size:100% 50%;background-position:50% 50%;background-repeat:no-repeat" class="w-commerce-commercecartapplepaybutton applepay"><div></div></a><a role="button" tabindex="0" aria-haspopup="dialog" data-node-type="commerce-cart-quick-checkout-button" style="display:none" class="w-commerce-commercecartquickcheckoutbutton"><svg class="w-commerce-commercequickcheckoutgoogleicon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><polygon id="google-mark-a" points="0 .329 3.494 .329 3.494 7.649 0 7.649"></polygon><polygon id="google-mark-c" points=".894 0 13.169 0 13.169 6.443 .894 6.443"></polygon></defs><g fill="none" fill-rule="evenodd"><path fill="#4285F4" d="M10.5967,12.0469 L10.5967,14.0649 L13.1167,14.0649 C14.6047,12.6759 15.4577,10.6209 15.4577,8.1779 C15.4577,7.6339 15.4137,7.0889 15.3257,6.5559 L7.8887,6.5559 L7.8887,9.6329 L12.1507,9.6329 C11.9767,10.6119 11.4147,11.4899 10.5967,12.0469"></path><path fill="#34A853" d="M7.8887,16 C10.0137,16 11.8107,15.289 13.1147,14.067 C13.1147,14.066 13.1157,14.065 13.1167,14.064 L10.5967,12.047 C10.5877,12.053 10.5807,12.061 10.5727,12.067 C9.8607,12.556 8.9507,12.833 7.8887,12.833 C5.8577,12.833 4.1387,11.457 3.4937,9.605 L0.8747,9.605 L0.8747,11.648 C2.2197,14.319 4.9287,16 7.8887,16"></path><g transform="translate(0 4)"><mask id="google-mark-b" fill="#fff"><use xlink:href="#google-mark-a"></use></mask><path fill="#FBBC04" d="M3.4639,5.5337 C3.1369,4.5477 3.1359,3.4727 3.4609,2.4757 L3.4639,2.4777 C3.4679,2.4657 3.4749,2.4547 3.4789,2.4427 L3.4939,0.3287 L0.8939,0.3287 C0.8799,0.3577 0.8599,0.3827 0.8459,0.4117 C-0.2821,2.6667 -0.2821,5.3337 0.8459,7.5887 L0.8459,7.5997 C0.8549,7.6167 0.8659,7.6317 0.8749,7.6487 L3.4939,5.6057 C3.4849,5.5807 3.4729,5.5587 3.4639,5.5337" mask="url(#google-mark-b)"></path></g><mask id="google-mark-d" fill="#fff"><use xlink:href="#google-mark-c"></use></mask><path fill="#EA4335" d="M0.894,4.3291 L3.478,6.4431 C4.113,4.5611 5.843,3.1671 7.889,3.1671 C9.018,3.1451 10.102,3.5781 10.912,4.3671 L13.169,2.0781 C11.733,0.7231 9.85,-0.0219 7.889,0.0001 C4.941,0.0001 2.245,1.6791 0.894,4.3291" mask="url(#google-mark-d)"></path></g></svg><svg class="w-commerce-commercequickcheckoutmicrosofticon" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><g fill="none" fill-rule="evenodd"><polygon fill="#F05022" points="7 7 1 7 1 1 7 1"></polygon><polygon fill="#7DB902" points="15 7 9 7 9 1 15 1"></polygon><polygon fill="#00A4EE" points="7 15 1 15 1 9 7 9"></polygon><polygon fill="#FFB700" points="15 15 9 15 9 9 15 9"></polygon></g></svg><div>Pay with browser.</div></a>
      </div>
    </div>
  </div>
</form>

Name: wf-form-Article-FeedbackGET

<form id="wf-form-Article-Feedback" name="wf-form-Article-Feedback" data-name="Article Feedback" method="get" data-wf-page-id="6289f43b90f189361316a866" data-wf-element-id="3af6d7fc-1a06-45d7-0bed-e492ce23fd37" aria-label="Article Feedback"><input
    class="form-input w-input" maxlength="256" name="Feedback-Text" data-name="Feedback Text" placeholder="Add Questions, resources, feedback or other things right here..." type="text" id="Article-Feedback" required="">
  <div class="w-embed"><input type="hidden" id="current-page" data-name="Current Page" value="https://www.beyondextent.com/articles/finding-your-own-artistic-style"></div>
  <div class="btn-wrapper"><input type="submit" data-wait="Please wait..." class="btn w-button" value="Submit">
    <div class="button-square">
      <div class="circle-b-f"></div>
    </div>
  </div>
</form>

Name: email-formPOST https://beyondextent.us19.list-manage.com/subscribe/post?u=5a56475dbc6fe826f8de43bdb&amp;id=4ac71cf57e

<form id="email-form" name="email-form" data-name="Email Form" action="https://beyondextent.us19.list-manage.com/subscribe/post?u=5a56475dbc6fe826f8de43bdb&amp;amp;id=4ac71cf57e" method="post" data-wf-page-id="6289f43b90f189361316a866"
  data-wf-element-id="2348f838-7fbf-aeb0-fdc3-f7fe2ab57685" aria-label="Email Form"><input class="form-input w-input" maxlength="256" name="NAME" data-name="NAME" placeholder="Name" type="text" id="NAME" required=""><input class="form-input w-input"
    maxlength="256" name="EMAIL" data-name="EMAIL" placeholder="Email address" type="email" id="EMAIL" required="">
  <div class="btn-wrapper">
    <div class="button-square">
      <div class="circle-b-f"></div>
    </div><input type="submit" data-wait="Please wait..." class="btn alt w-button" value="sign up for newsletter" style="color: rgb(255, 255, 255);">
  </div>
</form>

Text Content

.scroll_div { -ms-overflow-style: none; /* for Internet Explorer, Edge */
scrollbar-width: none; /* for Firefox */ overflow-y: scroll; }
.scroll_div::-webkit-scrollbar { display: none; /* for Chrome, Safari, and Opera
*/ }


English
LEARN
workshopsarticlesguidespodcastsblog archive
CHALLENGE
team challengessolo challenges
MentorshipscommunitycalendarshoploginLog in
Profile
Log inDashboard
shop

shop
0
beyond extent


SHOPPING CART



Subtotal

Continue to Checkout

Pay with browser.
No items found.
Product is not available in this quantity.
Copyright © 2020-2023 Beyond Extent. All rights reserved.


Jake Benbow

November 23, 2023


FINDING YOUR OWN ARTISTIC STYLE



SETUP AND EDITING BY
Timothy Dries

articles

WRITTEN BY

Jake Benbow


EDITING & SETUP

Timothy Dries

⬅ ️back to resource hub

TABLE OF CONTENTS

Welcome Jake, please introduce yourselfWhat were your inspirations for the
project, how did this project start?How did you go about developing a style for
this project and how did those inspirations play a role in them?Picking the
colours for the project, what were some things you were thinking about in the
production of the scene?Can you also break down how you approached the colours
of a single asset?Breaking out of the PBR mould and painting normalWhat are some
details you choose to include, both scene wide and on an individual basisHow do
you think this style would translate to a bigger scene?Looking back what were
some of the key points in this scene?Anything else you want to share with the
art community?RESOURCES


WELCOME JAKE, PLEASE INTRODUCE YOURSELF

Hey, first off I’d like to say thank you for having me and giving me the
opportunity to share this breakdown. My name is Jake Benbow, and I’m currently
working at Bithell Games as a Junior 3D artist. This is my first role in the
industry, and over the past year and a half I’ve gone from intern, to contract,
to now a permanent part of the team as of this month.

I only graduated from university this past summer, and being able to continue
working at Bithell Games whilst I finished my studies has really helped me grow
as an artist over that time.

‍



WHAT WERE YOUR INSPIRATIONS FOR THE PROJECT, HOW DID THIS PROJECT START?

The project started life as a small side distraction that was only supposed to
take me a week or so. I had just graduated from university in the summer, and
wanted to make a little prop as a way to decompress and work on something
different, so I decided on making a hand-painted ketchup bottle. Very random,
but I figured it was a simple shape that I could add some character to with the
texturing. I admire the bold texture work of Leevï Galita and had wanted to
explore that sort of stylised PBR workflow for a while, and this felt like a
nice opportunity to do so. That single prop soon escalated into the set of props
below, which then turned into a diorama, which eventually became the final scene
I have now. Scope creep is a real thing.



‍


HOW DID YOU GO ABOUT DEVELOPING A STYLE FOR THIS PROJECT AND HOW DID THOSE
INSPIRATIONS PLAY A ROLE IN THEM?

I think what’s been the most rewarding aspect of this project is developing that
style and a process over a number of months. I’d tried some stylised art before,
following along with some of the more popular tutorials out there, but things
always felt generic and lacked any real sense of art direction. So whilst I had
a general idea of the look that I wanted to achieve when I set out with this
latest project, my main goal was just to create something “Different”.


I cannot remember where I heard this or who said it, but some wise soul once
said that there is only one style that has set rules and a concrete end goal
-photorealism. If you’re making photorealistic game art, you follow a PBR
rendering workflow and you make stuff look as close to your real world reference
as possible. You have a clear target. That means that everything that is
non-photorealism, or NPR, is completely subjective - it’s a moving target.


When I was starting out with this project, I had some idea in mind of what I
wanted my scene to look like. I was initially inspired by Arkane’s games with
the way they introduced painterly gestures into their textures. As I mentioned
earlier, I love Leevï Galita’s texturing for the way he plays with bold, graphic
shapes in his paint strokes.



Into the Spiderverse was another inspiration with how they brought that sketchy
comic book feeling into the film. And then there’s also the countless hours of
looking at incredible traditional artists on Twitter and envying their ability
to evoke so much atmosphere and attitude with their paintings. None of these
influences served as an end goal in isolation, but they all informed the
direction of the project at some point. Rather than set out to create a scene
that looks like Into the Spiderverse, I studied it to understand what exactly I
wanted to pull from it, which in that case was the use of halftone patterns in
my textures and the bold, vibrant colours.

By doing this with all of my different influences, I could bring them together
into something which evokes many different sources but which is still
identifiable as something unique. Steal like an artist. But that synthesis of
inspirations took time to come together, because as well as identifying points
of influence, I also had to develop my process.

Using the example of Leevï Galita’s shape work, I was quickly able to identify
that I wanted to use that in my own work, but I then spent probably the first
70% of the project going back and forth on the best way to achieve that effect
within my workflow, trying procedural methods, trying stencils, filters,
masking, and so on until I finally settled on a method that I felt added the
sort of feeling that I was looking for. And this is the part of the process that
I think a lot of people want to skip past, but one that I came to find maybe the
most enjoyable, and that’s the exploration and experimentation phase.

When everyone else is following step by step tutorials, this is what’s going to
separate you from the crowd. This is where you’ll find new techniques and tools,
where you’ll develop your own way of working, and where you’ll learn the most
about how stuff works. I understand why people want to skip over this phase,
because it’s time consuming and there will almost certainly be wasted work along
the way - I can’t tell you how many times I went back to retexture old meshes
with new techniques I’d found. But I think it’s an invaluable step in creating
something more unique, something that you can look at and feel a sense of
authorship over.

‍


PICKING THE COLOURS FOR THE PROJECT, WHAT WERE SOME THINGS YOU WERE THINKING
ABOUT IN THE PRODUCTION OF THE SCENE?

Coming into this project without a concept, the lighting and colours were
somewhat up in the air. Early on I was definitely still finding my feet with the
stylisation, and I was playing it safe. In the side by side comparison below,
you can see in that first screen that it’s quite flat and monochromatic.






The second was after my first proper pass on lighting and post processing, as
well as bringing some colour into the blockout meshes. I remember looking at
this render over and over, trying to figure out whether it looked too “weird”. I
was pushing lots of purple into the shadows, there is that really saturated blue
on the chairs, and it felt like too much. But the more I sat with it, the more
this bolder approach started to feel “right”. The scene had so much more
character, it took on an a more abstract quality, and it gave me the confidence
to push things further than I had previously envisioned.

I think it comes back to looking at paintings and using those as lighting
reference rather than looking at real world locations or photorealistic
rendering. One of the most evocative aspects of a painting, to me, is the
colours, and particularly the way colours are used outside of the way a layman
would consider them. The sky doesn’t have to be blue, sunlight doesn’t need to
be yellow. With stylised art you aren’t recreating something - you’re evoking
it, you’re interpreting it within your own rules which you’ve created.

‍

> With stylised art you aren’t recreating something - you’re evoking it, you’re
> interpreting it within your own rules which you’ve created.

‍







CAN YOU ALSO BREAK DOWN HOW YOU APPROACHED THE COLOURS OF A SINGLE ASSET?

The first layer in the stack on every asset is a tiling texture of paint strokes
that gets plugged into the base colour. The texture should look something like
the one below, with the goal being to get rid of the blank canvas of flat colour
and to start to get some cool shapes on the model early, as well as some subtle
hue and value shifts in each stroke.

This base will also start to establish the shape of the texture, so for example
if I’m making a wood material I’ll want longer, skinny strokes that follow a
common direction in order to evoke wood grain, whereas if it's a scratchy metal
I’ll go for something with more erratic rotated shapes.



I pinched this technique from Leevï Galita who shared how he creates the same
sort of textures in Photoshop, but I typically made these textures procedurally
via a graph I made in Substance Designer, set up with controls for the shape and
rotation of the strokes, as well as controlling the type of strokes (neat,
rough, halftones etc).

I made a little Twitter video that shows off what it's doing if you want to see
it in action. The plate below shows off how that tiling base texture looks when
applied to an object, in this case with aspherical projection to match the round
shape of the plate.



That procedural base layer is then followed by lots of hand painting layers,
adding different colours that will break up the surface to imply different
effects and add variety. I went back and forth on how to achieve my colour
variation, and if you checkout this Twitter video again, you'll see the old
method I was using, where I'm taking one of those hand painted base textures and
using the "Histogram scan" filter to pull outa certain range of values from it
and then using that as a mask to drive the colour variation.

This method works really well and can get some good results quickly, however
because it uses a tiling texture I found that the strokes often don't have
enough of a relationship to the shape of the object, and they can just look a
bit too random.


Instead, I transitioned to a more manual painting process that is built around
the "Color Jitter (By Seed)" procedural texture in Substance Painter. I plug
this into the colour slot of a paint layer and by using these settings below I
can control the main colour of your stroke in the "Color 1" slot, and then each
stroke will have a slight shift in hue, saturation, or value, driven by the
sliders underneath.






Now, the benefit of this approach is twofold - my strokes have a more
interesting microvariation between them, and I can paint them to conform to the
shape of the model.



And this is what the end result of the colour variation layer might look like. I
stick to thinking about general shape and weight here, I'll worry about refining
the shapes later.



I want to take a brief aside to mention colour as a subject. I'm far from an
expert, but of course picking colours is a hugely important part of hand
painting, and here are a few rules that I developed for this project:

 * 1. Use value changes sparingly - it can be tempting to just bump the value
   slider up or down when you want something "lighter" or "darker", but this can
   quickly lead to washed out or muddy colours. If you want something to look
   darker, try shifting to a more blue/purple hue. If you want lighter, maybe
   reduce the saturation slightly. Again, understanding some basic colour theory
   is really going to help here. Value is also the most recognisable form of
   contrast, so you should be using it sparingly and with intentionality to draw
   the eye.
 * 2. Think more abstract - when hand painting, you don't have to stay married
   to real world values like when working with PBR. If you're painting dirt, you
   don't just need to hop straight to a dark brown, instead think about colour
   relationally with what surrounds it.
 * 3. Don't get carried away with blend modes - My most common blend mode is
   just "Normal" at around 85%. Going back to that dirt example, you might be
   tempted to pick the dark brown and then just lower the opacity or change the
   blend mode until it looks "right", but you'll end up with muddy colours and
   you'll lose the definition in the shape of your strokes. Instead I just
   colour pick the main colour of the surface and then start playing with some
   hue shifting, maybe shift the value slightly, but crucially I'm never
   straying too far from that original colour I picked.

Returning back to the plate, you'll notice that the strokes are very chunky and
don't have much character. You could spend time finessing shapes at that first
painting stage, but I find it much easier to use a mask to really define the
character. I add a white mask, and then start eating away at the paint strokes
in a few stages:

 * 1. First I take a hard edged brush with a black value and start chopping away
   the edges. I like the "Knife Painting" brushes that come with Painter because
   they have a boxy shape and a bit of texture on the back end. You want to be
   bold here, use strong strokes with sharp lines and really try to get rid of
   any long uninteresting blobby bits. This is where you can refine the shapes.
   Make the strokes taper to give them a good sense of flow, chop large shapes
   into medium shapes and medium into small to establish hierarchy.
 * 2. I add a new paint layer to the mask and take a soft edge brush with a
   lower opacity and start to fade out some of the edges of those shapes. This
   is partly a personal style thing, but I like the contrast between having some
   edges sharp and some softer, I think it reduces the noisiness of the texture
   and gives some more areas of rest. I’m also thinking about directionality
   when blending out edges - blending one end of a stroke but leaving the other
   end sharp can give the stroke that sense of direction and help with flow.
 * 3. I add a third layer to the mask, and paint some noise and texture into the
   mask. This is where I like to add some halftone effect or some rake strokes,
   some sort of stylised breakup. This will depend on the effect you're going
   for and the type of material you're painting, so experiment with different
   brushes and noises.

‍



And those steps make up the process of most of the colour variations in my
texturing. Whether that's dirt, grease, rust, whatever sort of effect, it all
follows that same process. You can see it on the blue rim of the plate too,
where I've just chipped and blended into the edge a bit so it's not just a
continuous ring. It's all about getting some nice colour variation on there and
then masking it into interesting shapes.




BREAKING OUT OF THE PBR MOULD AND PAINTING NORMAL

When rendering painterly textures in a PBR environment such as Unreal Engine,
you can end up losing some of that juicy base colour detail when viewing from
certain angles and in certain lighting. One way I found to combat this problem
was to add painterly strokes into the normal map. This idea initially came from
Romain Durand, who told me to "Think outside of the usual PBR" and encouraged me
to play with different approaches to rendering. By painting some flat blue or
purple values into your normal map, the light will interact differently with
those areas of the object than it will with others.




Below you can see how the "Normal+Height+Mesh" view looks when I add a dark blue
value into the normal channel of the layer and add a mask. I'm using the plate's
base colour to drive the mask, which is where that "BaseColourRef" layer comes
in. By adding an anchor point on the layer and setting the layer's blend mode to
"passthrough" it acts as a reference to everything that precedes it in the layer
stack, meaning that all the strokes from the tiling base I used as well as the
strokes I painted in the colour variation layer are now in the normal map. I
found that when painting normals it’s important to have it echo the base colour,
as if the strokes in the two maps don’t sync up then it can feel like they’re
fighting with each other and it looks messy and noisy.




Below you can see the result of how those normals play with the light as it
moves around, and it just gives the painterly style more to work with when
introduced to a PBR rendering environment and means that you don't lose as much
of your precious base colour information.



You might notice that I have the opacity channel exposed in Painter, and that's
so that I can do this painted normal blending later on in-engine. If you paint
directly into the normal map then you'll have to adjust the strength of the
entire normal map in Unreal if you want to scale the effect, meaning other
height details and bevelled edges will also be affected when you might not want
them to be.

Instead, I take the mask that I've got in the "Normal Variation" channel and
export it through the alpha channel of the base colour texture so that I can
then access the mask in my Unreal Engine shader and use it to blend a colour on
top of the normal map.

This way I can control the original normal map's intensity and the intensity of
the painted normals independently of each other.







WHAT ARE SOME DETAILS YOU CHOOSE TO INCLUDE, BOTH SCENE WIDE AND ON AN
INDIVIDUAL BASIS

A detail pass is always contextual to what you're making, but for me the same
general rules apply for these types of layers as with the colour variation layer
-I'd pick an appropriate colour for the effect I’m trying to represent, I paint
in my broad strokes with a jitter brush and then use the mask to carve and blend
edges out accordingly.

This is an area where it can be easy to get too caught up in realistic
representations, but remember to think in terms of shapes rather than noise. I
wanted some sort of dusty dirt build up around the crevices of this cable
housing box, so I painted in my dirt layer and then scuffed up the edges and ran
through it with some rake brushes to imply an uneven and natural build up.






You can get abstract here too. I wanted to have something resembling crumbs and
food scraps on my plate, but trying to paint that sort of detail got too noisy
too quickly. Instead I picked up this weird 3D cube brush that comes default
with Painter and started scattering these green and yellow squares across the
plate, varying up the shape and distributing it hierarchically into little
piles. Does it look like crumbs? No. But it suggests something, and it adds
noise without being noisy. You can have a lot of fun with shapes if you think
outside the box and just experiment. There is so much stuff inside Painter by
default, take the time to explore.



This process of abstraction and stylisation also applies to elements other than
texturing, for example a couple of VFX elements in the scene such as the coffee
steam and the light shafts from the ceiling lights. The steam is just a black
and white texture I painted in Photoshop that is then animated using a panner
node in the shader, and by adding the halftone layers surrounding that central
column of steam it links it in stylistically with the surrounding textures.

I first tried to achieve the light shafts with volumetric fog, but couldn’t get
the sharpness in the shape that I wanted, so instead just made a box mesh and
applied a gradient material. It’s important to maintain that stylised flourish
throughout everything in the scene in order to make it as cohesive as possible,
and thinking outside the box in terms of solutions can lead to some interesting
and unique visual results.







HOW DO YOU THINK THIS STYLE WOULD TRANSLATE TO A BIGGER SCENE?

That’s something I’ve been wondering about myself to be honest. I definitely
want to explore this style further with some different locations, maybe some
different settings, and definitely on a larger scale.


I wouldn’t call it a drawback, but one observation I’ve had about this style is
that it’s a very manual and hands-on process. I’m not a traditional artist by
nature, so I approached this with a procedural mindset first. That’s where the
Substance Designer tiling paint stroke generator came in, it was a way to
shortcut some of that manual work, and I tried to leverage that as much as
possible.



However, throughout this project as my process has developed, I’ve come around
to the idea that there isn’t really a substitute for taking the time to grab the
brush and just paint. I'm not really using ambient occlusion or curvature maps
to drive effects like dirt or edge wear, and I don’t have a one-size-fits-all
smart material that I can just drag and drop onto a full scene's worth of props.


I think there’s also a question of how to adapt this style to fit with a modular
kit, how does it look on a trim sheet or on tileable materials? Part of the
charm of this style to me is that each prop has its own character thanks to all
the unique unwraps and texture sets, but that isn’t very practical in terms of
optimisation or time when you consider it on the scale of a town square for
example.

These are questions that I’m certainly going to answer, and I’m already looking
forward to solving those problems.







LOOKING BACK WHAT WERE SOME OF THE KEY POINTS IN THIS SCENE?

I think I finished texturing the cable box around halfway through the project,
and that was probably the first time where I looked at what I’d created and
thought “Damn, that looks really cool”. There had been a lot of back and forth
in terms of the process until that point so I feltlike I could never really stop
and smell the roses, but once that asset was finished it felt like the first
moment where I’d created something that was even better than how I’d envisioned
it, and it brought all of that back and forth into perspective.






That’s one of my main takeaways from this project in general, is learning to
enjoy the process of creating. I’m one of those artists who can’t bear to look
at the work once it’s finished, I just immediately want to upload it, forget
about it, and move on to the next thing. I do actually think this project is
pretty good, but I’ve also come to terms with the fact that I don’t think I’ll
ever enjoy looking at the final renders of what I’ve made. But throughout this
project I’ve got to explore a whole new style, I’ve learned techniques and tools
that I’ve never known, and I’ve come out the other side a better artist.


And that’s why I think it's so important to learn to enjoy the process. The
process is where you’ll spend 99% of your time, so if you can learn to love
being in the trenches then you’ll enjoy your art and you’ll grow.





ANYTHING ELSE YOU WANT TO SHARE WITH THE ART COMMUNITY?

I’d like to take this opportunity to once again give thanks to Beyond Extent,
it’s been great to be able to put this together and share my process with
people. My art journey would be nothing without all the tutorials, courses, and
breakdowns that people have taken the time to create and make available, so I’ve
always wanted to find a way to give something back when I felt I had something
worth sharing.

There were plenty of people showing interest in the style of my scene and asking
for some insight, so hopefully this will be of value to someone out there.
Sharing knowledge is so important, it’s how we all get better, both as
individuals and as an industry. If you’ve found this insightful or inspiring and
you make something off the back of this then please tag me on socials, I’d love
to see it!






‍


RESOURCES

No items found.
⬅ ️back to resource hub


DID WE MISS SOMETHING?



Let us know what question, topic, resource or other things we've missed, we will
add it to the page in the next update!

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.


SUPPORT US



All these resources are curated and made by artists and then made available
through the help of all our supporters.
If you want to support us on our mission to make the your journey into
environment art as easy as possible then you can do so by joining us, and we
will give you a lovely community and more exclusive resources in return.

become a member



MORE ARTICLES


February 2023

Ayi Sanchez


TEXTURING FOR BELIEVABLE STORYTELLING

November 2022

Ioana Oprisan


RECREATING HISTORICAL ENVIRONMENTS

October 2022

Nathan Rose


ART IN A NEW GENERATION


MORE ARTICLES




HOW MUCH SHOULD YOU GET PAID?


THE BEST WAY TO LEARN?


RELOCATION ASSISTANCE

OUR WEBSITE USES COOKIES

Our website use cookies. By continuing, we assume your permission to deploy
cookies as detailed in our Privacy Policy.

Accept Cookies



QUICK LINKS

BlogCalendararticlesshopworkshopschallengespodcastsdeep dives


SUPPORT US

patreonbusiness enquiries


STAY UP TO DATE

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Copyright © 2024 Beyond Extent. All rights reserved

Language:

English

GermanItalianFrench