Jump to content
davide445

Normalize illumination for texture creation

Recommended Posts

Taking better images will certainly help, taking materials at a distance with a small zoom lens and allowing for cropping would probably help even out the lighting a bit. Using a diffuse reflector may also help even out lighting. Don't use flash if at all possible and if you have to - bounce it. Keep the camera as parallel to the surface as possible, if the lighting isn't good take the images on another day.

Even using photos for reference you still want the best image possible and a good resolution too.


iMac 27" Late 2015 Fully Loaded, iMac 27" Mid 2011 both running High Sierra 10.13.6 - Affinity Designer/Photo & Publisher - Illustrator CC, Inkscape, Blender, Sketchup, Pepakura Designer, MTC, Pixelmator & Pixelmator Pro + more... XP-Pen Artist-22E, - iPad Pro 12.9 B|  

Affinity Help - Affinity Desktop Tutorials - Feedback - FAQ - most asked questions

Share this post


Link to post
Share on other sites
3 hours ago, firstdefence said:

Even using photos for reference you still want the best image possible and a good resolution too.

Yep.

Quote

 

@SrPx next Wednesday will be on the location of a construction I want to map the materials, to develop a version of his simulation with maximum similarity (there will be also other versions more relaxed in term of realism).

Based on current PBR workflow a better way will be use the photos just as reference and use product such as Mixer to achieve the result "mixing" other available Megascan materials and decals, or better use the actual photos and products such as Materialize to create the final material, as from the beginning of the thread.

What do you think about the best option?

 

It seems to me that what you mostly need to stick to is to the "measured data". Certain sRGB values for one workflow, IOR values for the other workflow , depends on what you choose.
In that way, starting from that base you could work later more freely, but still I'd see a need of some tool to check the "validity" of the final resulting maps....

A tool like Substance, or, 3D Coat (though not sure how much of the shading part does it accomplish. I love its retopology options, and seems cool for normal maps) is almost a must for serious workflows. If not , use utilities here and there, and tables with real physical values.

For just prototyping, you could just do it the dirty way, take very hi res photos, then use Awesomebump, Crazybump, Xnormal, Marmoset tool bag, Substance or whatever, extracting from the photos and generating sth at least looking nice....

My take for being super pragmatic : just purchase some PBR materials from the most accurate source (careful, there's crappy sites) if is only some few materials (ie, some metals, some woods, glass, plastics, etc) and load them in your engine, focus in the prototype itself, as these materials, are not really expensive IF only using a few.

For a PBR based workflow, well... I have not -thankfully- needed to go deeply that way, as when I started working (back) as a designer, left games, no PBR around, yet. And as mentioned, for indy/casual/small company games, well... if you are the author and just you, I'd do what would give most fun and best selling point (and not necessarily that needs a PBR workflow) .But typically when doing gigs to other people, you are asked for PBR.  The little I've done is just using pre-made materials : Even coming already with its diffuse map, its normal and/or height map, the roughness map, the metallic map, and depending on the case, the ambient occlusion map (AO). That in case of using one of the 2 workflows (metallic/roughness or specular/glossiness)), but for me has been the most common, rather than specular/glossiness. Anyway, I've done very little lately (though a lot of 3D, in general). Substance tools from Allegorithmic do support both workflows, and more importantly, do have tools to check the validity of what you are building. That is, besides starting from the needed measured data (ie, sRGB values for materials for the difuse map, depending of the type of "thing" of real life, and, if I'm not wrong, the IOR reflection/refraction values for the specular/glossiness workflow, it ALSO checks the validity of the material, while in the process. I don't have these tools, so, dunno.

But one thing to have clear, when you generate textures the old way (or just for some web background, lol) using for example photos you made, all the values are mixed there (besides elevation/normal map data is there all smashed, can't provide it so for an engine). Is not how is done in a PBR workflow. The light reflected (or "energy") is mixed with the diffuse color, while you would need those values separated. There are ways to extract somehow those from a made photo, but I don't know the workflow, there (have not needed it). Again, you can purchase PBR materials for one of the workflows. Or can use Substance, Marmoset's tools, or any other tool "PBR ready", so to speak.

For a one-person-band project, indy and whatnot, to sell as a casual, or as a free project, etc. I wouldn't over complicate. Just purchase some nicely done pre-made material, at least serving as a base (and not altering it much if haven't the right tools...), or, simply do it the old fashioned way, just make it look cool, the average casual gamer wont notice. Even more, in a painterly style, this isn't very much relevant, just paint the textures.

It would be interesting to get the measured data values for whatever the workflow you end up choosing (I'd go with the metal/roughness). There are PDFs with all that.

Stuff to (maybe) read :

Super boring part, I read it back in the day, but for very serious go at it, is a needed read (the artist-practical part is in the 2nd part, and even so, for making it without Substance, you at least are going to need those tables with real life values, and some 3D tool -there are several, some free- to bake normal maps, (and/or height maps), AO maps :

https://academy.allegorithmic.com/courses/the-pbr-guide-part-1

https://academy.allegorithmic.com/courses/the-pbr-guide-part-2

https://seblagarde.wordpress.com/2014/04/14/dontnod-physically-based-rendering-chart-for-unreal-engine-4/

https://seblagarde.wordpress.com/2012/04/30/dontnod-specular-and-glossiness-chart/

....or... depending on the type of project, for a casual game, just do a freaking nice texture the old way.  :D . Or painted ones.

And you wait now that comes all the RTX tech in the new nVidia cards, that content is gonna be practically raytraced... (is a long way till that, though). I'm happy I got back to graphic design, illustration and comic, lol.  :D:D:D :77_alien:

For generating those floor tiles in the old school way, is pretty easy : You are getting "free" seamless work savers, the floor lines. Just start it from scratch to get a fully light-uniform texture, and then replicate adding some variation in the near ones, if you are doing a several tiles texture (recommended, to avoid visual repetition a bit more).

In the old way, you would mix textures or fully generate with some procedural, and more likely, both. You'd get a nice texture, but is all baked in, already,wont look as cool as when is all separated in the maps (even in the old way, with just a specular map, normal map and AO map) so that the engine will calculate all variations with light and angle change and etc. All baked does look fake when rotating the model (and old tech). But is perfectly fine for a painterly aesthetic. (initial World of Warcraft, etc, I believe still League of Legends.)

All the above can be very inaccurate, so, just go to the sources. :)   I'm veteran in the old ways, not in the new ones  ;);) 

Edit : You have free ones here, haven't stop to look/research about how accurate they are :
https://quixel.com/megascans/library/free
Neither I know the cost for premium ones. I'd also look at Allegorithmic's site. VERY VERY specially to this tool, as can fit like a glove to your particular intentions :

https://www.allegorithmic.com/products/bitmap2material

Edit: Materialize looks super cool for that purpose, too... And open source.

Specially if  " • Diffuse -> Smoothness "  means diffuse -> roughness. Which am almost 100% it does.

yet tho, these bitmap to material MUST be less accurate than doing it all step by step. But...hey. I think might well suffice for protoyping. or even for entire casual/indy games. Which is almost all we can produce, unless you do gigs for big companies. (or any mid size studios with Unity/Unreal that are rigorous enough with their PBR workflows).

Edit #500 : Shadermap looks very, very cool and complete. And no subscription and at the right price (around 50 bucks). As seems all in the Allegorithmic and Quixel side is subscription (rented, as I say) based now.  3D coat has quite nice PBR materials creation support, and that's really cool, as it's a very complete tool for so many things 3D. https://3dcoat.com  The amateur 99$ version , no use for that as commercial use is disallowed, so it'd have to be the 379$ one. Dunno, I can already do sculpting, shading/rendering, normal maps, baking and and retopology with Blender... shadermap, materialize seems an ok route for some playing around.


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites

 

 Also, Marmoset Toolbag 3 (quite impressive) is way less expensive now than I remember it...  189 dollars, non subscription, does not seem out of range for an indy, imo.

It's brilliant indeed for protoyping too, importing animation (as FBX, etc), show, and export. It counts on extra plugins to export to Unity and Unreal , tho not sure if both included by default or to be purchased apart in the engines market places. I'd expect cheap prices.

Very interesting articles (the first one you might find it interesting for your tests):

https://marmoset.co/posts/pbr-texture-conversion/

Theory explanation.  I believe I've read this one years ago... I like it more than the one at Allegorithmic. But both should be read, imo, entirely. If anything, I'd read this one first, tho.

https://marmoset.co/posts/basic-theory-of-physically-based-rendering/

The toolbag 3 page and price 

https://marmoset.co/toolbag/

Of course, all has its thing... With 3D coat you get a PBR material generator, and a sort of Zbrush-ish tool for high detail modeling, normal map/height map tool, and a great auto -and manual- retopology solution.   ZB is around 800, I think, 3D coat is only 379, marmoset, 189, shadermap, 50, and Materialize, free (the subscription ones, not gonna mention :p )  . So it all boils to what each one needs.

 

WAIT ... Substance Indie license is having back a purchase, perpetual license again ???? Since when ??? As far as I knew, once Adobe acquired it, it got (oh, surprise) converted to subscription-only... Anybody knows about this/is gonna stick? or is just a grace period till they make it renting-for ever ??
 


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites

Wow that are informations! 

The goal will be to simulate the construction of an utility building (see image), made from steel, aluminum and internal lights. 

From what you say appear the best way will be to photograph some parts to have a reference (maybe using a color reference chart https://images.app.goo.gl/N1TLYHJX8Y7f266s5 as standard reference) and next use Megascan assets to create the final material. 

 

HighresScreenshot00000.png


Windows 10 Pro, KDE Neon, Ryzen 5 2600X, 32GB DDR4@3200Mhz, Sapphire HD 7950 Dual-X w Boost 3GB + Kfa2 GTX 1070 EX 8GB

Affinity Photo, Affinity Publisher, PagePlus, ShaderMap Pro, Substance Designer, Davinci Resolve, HitFilm Pro, Unreal Studio, Unigine, BricsCAD, 3ds Max, Houdini, 3D-Coat.

Share this post


Link to post
Share on other sites

But.... are you really required to use a PBR workflow ? As if not, just take good scans, photos of high detail, generate if anything a bump map, and optimize the textures to display cool. If there are no close shots, and is for a previz architectural project seen from afar (ie, not an interior with close shots), I wouldn't mess much with PBR.  At a distance from camera is not seen a lot of the fine work.... There are many sites (free/cheap) providing with just a base color texture, a bump map and/or height map, maybe also an AO map, and that's it. Already providing with a steel material, a brass material, cement. Yes, the correct way to go is a PBR workflow, but depends on what is this for and what hurry the project has....


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites

I don't know how good could be these, haven't checked,, but you really might want to have a look, to have the project up and running fast....

https://freepbr.com/

In the next link, check the "free" field in the search. Maybe purchase some of the best ones you find, for materials that are more "critical" or closes shots in your project.

https://www.poliigon.com/search

Another depot, also with free option :

https://www.cgbookcase.com

Amazed that the following is CC0, so, public domain but better, fully fully free, and even have AO, Roughness, normal and elevation maps...

https://cc0textures.com

Another one here

https://www.blendernation.com/2018/12/22/free-pbr-texture-library/

Which is actually a blendernation link for this place.Also CC0 free textures, with quite some maps per each.

https://www.sharetextures.com

Another one, again CC0, and again containing enough maps each.

https://3dtextures.me/tag/pbr/

Last but not least, another site with CC0 PBR textures, this one even 8k textures!  :o 

https://texturehaven.com/textures/

I mean... I'd start from these, mount the project. Further on if needed, improve the materials and whatever.  But you get the thing fast up and running.  Just learn how to load the stuff well on the engine, all the maps and etc.  :) 


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites

Testing a bit ShaderMap appear to be really streamlined in his usage, most forgiving in term of input material than Quixel Mixer, able to autogenerate all what is needed, with good controls for the other parts. It's only a bit slow in applying and preview changes, and this can be a problem for doing experiments such as I'm doing.

About PBR vs non PBR workflow both Unreal and Unigine are using PBR so it's not my choice I suppose (or I can always work on a non-PBR workflow? Pardon my ignorance, I never approached before this question).

What I find anyway Affinity Photo useful it's part of the illumination and lens distortion correction, something more specialized tools didn't consider at all.

Also going to experiment with photo based textures, my smartphone camera is able to shoot in RAW format, for my needs will I have any benefit in starting from this format? 


Windows 10 Pro, KDE Neon, Ryzen 5 2600X, 32GB DDR4@3200Mhz, Sapphire HD 7950 Dual-X w Boost 3GB + Kfa2 GTX 1070 EX 8GB

Affinity Photo, Affinity Publisher, PagePlus, ShaderMap Pro, Substance Designer, Davinci Resolve, HitFilm Pro, Unreal Studio, Unigine, BricsCAD, 3ds Max, Houdini, 3D-Coat.

Share this post


Link to post
Share on other sites

I'd use the PBR workflow(/s) always that you can, because :

a) Is here to stay, is what we need to use for most things now.

b) Even in 3D (after all I believe it comes from Disney) for just rendering, movies, it is used there, (blender has it now in a way, with its "principled shader... couldn't they call it just PBR shader, lol)  as is not something used only for better realism... In a cartoon style, stylized 3D, is also used as gives better materials, more realistic plastics, metal, etc, have advantages in other styles, there are also other advantages.

c) You never know with the job market. Doing things as required for entire fields like games, in a way, also film, and even in VR companies, well, helps to kind of build professional experience, and one never knows when will have to work at certain type of job. (I mean, I've changed fields a number of times)

I was only mentioning to avoid it if you are in a hurry and is just a fast project where is not worth for you the hassle, but seems you are dedicated to it.
About format for the camera. I'm no photographer. There are here people knowing a lot more about it. I know I wouldn't use JPG or any other lossy format for textures, that's for sure. As what I do know is how to make game textures, and you don't want to find color artifacts and blurry details.... Now, if using tiff or raw, I guess will depend on ability with those in your phone to carry the color profile, and things like that.  For height maps, I know we'd better work (and I guess already from the capture) in 16 bits mode, as is all about the smooth gradients. With whatever you are doing the photos, configure the settings to no loss, maximum quality. I would not use flash, and if your camera allow it, to handle all settings in manual, for the ISO thing, to allow photos with more aperture, controlling the exposure time and etc (in a way so you avoid the flash in low light, but...just use great daylight....but not super sunny going direct to the texture, either) . Is only a few photos that you are going to remove soon from the phone, anyway, so, fine if being bulky files. In my very old years, I used to need a macro in the camera for this kind of photo, and a very, very good camera. Otherwise, you'll be better off with even crappy textures on inet depots. ( and I mean way worse than the links I just pasted)

Affinity Photo is of very much use, as you don't have Substance or any other similar tool. So, to actually customize and "evolve" the texture, you can hand edit all those maps in Affinity, and go checking the results in a 3D viewer, be your game engine, or Toolbag 3, or any 3D viewer providing a view almost like the engine.  I'd highly recommend the engine in any case for a 1:1 check, but if toolbag, or Blender , or whatever, gives you a faster preview,  and is quite similar to how it shows in the engine, that's what you use, so to work fast as you edit those albedo (difuse) and etc maps, as needed. The base materials from sources I provided, those are good to go, I wouldn't modify to not loose the accurate values too much... But you definitely will want to apply masks, mix, add corrosion, over paint, etc, so to actually do the textures, as some things will only require a plan basic material, like bare steel; others do require more the kind of work you'd do with Substance painter, but old school, we used to do this by editing those maps, checking in real time how it did look in the engine, as we paint + save.   Of course, is faster to buy substance, for these uses. But even with it,  in the end you work always with a 2D package helper, be it Photoshop, AP or whatever.


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites

Returning on the topic I mapped last week most of the materials of the tower I want to simulate.

Since I want to try the "homemade" PBR path I want to start with a clean image, and the vignette effect it's still hugely present, as in attached RAW image example.

Since using AP rarely I dind't know of there is any custom mask I can use to manually correct the effect?

In this image as example there is clearly a green dominance outside the central circle (clearly visible increasing the saturation), maybe applying a mask with some correction outside a circle?

IMG_20190403_142703.dng


Windows 10 Pro, KDE Neon, Ryzen 5 2600X, 32GB DDR4@3200Mhz, Sapphire HD 7950 Dual-X w Boost 3GB + Kfa2 GTX 1070 EX 8GB

Affinity Photo, Affinity Publisher, PagePlus, ShaderMap Pro, Substance Designer, Davinci Resolve, HitFilm Pro, Unreal Studio, Unigine, BricsCAD, 3ds Max, Houdini, 3D-Coat.

Share this post


Link to post
Share on other sites

I think what you are doing is taking the photo too close, because of this you are creating a "hot spot". I would try taking the image further away and cropping in on the selection needed.


iMac 27" Late 2015 Fully Loaded, iMac 27" Mid 2011 both running High Sierra 10.13.6 - Affinity Designer/Photo & Publisher - Illustrator CC, Inkscape, Blender, Sketchup, Pepakura Designer, MTC, Pixelmator & Pixelmator Pro + more... XP-Pen Artist-22E, - iPad Pro 12.9 B|  

Affinity Help - Affinity Desktop Tutorials - Feedback - FAQ - most asked questions

Share this post


Link to post
Share on other sites

@firstdefence

I can do it for some images, but for many others I need to deal with various lightening or color problems.

IMG_20190403_142703_orig.jpg.65c8146aa58901a790c765318ebd7c51.jpg

Experimenting with masks and selective color adjustment layer appear some problems can be corrected

IMG_20190403_142703_corr.thumb.jpg.a48d24f599a61bee66c96e6d946d7ca7.jpg

Another problem using displacement maps generated from albedo, they are far from accurate, below an example using ShaderMap Pro (purchased a license), on the right is visible a bump in the displacement.

610309485_Exampledispl.thumb.JPG.698b4d2f63a117e0c2c6cf0bceef8640.JPGIMG_20190403_135946_DISP.jpg.99741f2dc420f9d5501c0dbc7b133ef4.jpgI was evaluating either Filter Forge or Substance Designer for correcting this problems, but wondering if they will be able to parametrically correct the images, or I'm expecting too much and I will preferably need to use AP for the same goal.


Windows 10 Pro, KDE Neon, Ryzen 5 2600X, 32GB DDR4@3200Mhz, Sapphire HD 7950 Dual-X w Boost 3GB + Kfa2 GTX 1070 EX 8GB

Affinity Photo, Affinity Publisher, PagePlus, ShaderMap Pro, Substance Designer, Davinci Resolve, HitFilm Pro, Unreal Studio, Unigine, BricsCAD, 3ds Max, Houdini, 3D-Coat.

Share this post


Link to post
Share on other sites

for the lighting uniformity, in APhoto, applying a radial (or whatever the selection with gradual feather) gradient mask, then a applying to it a levels / lightness / whatever filter ? Subtle touches of course, and trying to do with a single operation, and not destroying detail, either.


Affinity Designer and Affinity Photo licenses, Windows 7, i7  860 (2009) 2.8 GHz,  8 GB RAM, GTX 1050 2 GB, HD 7200 RPM.  Wacom Intuos 4 XL.

Share this post


Link to post
Share on other sites
On 3/31/2019 at 8:37 AM, SrPx said:

PBR...here to stay

image.png.5b50542f6aa488c8c25158aea89378ea.png

Apparently it is. Having tasted it in my youth I find this a bit surprising.


Windows 10 Pro, XP-Pen Deco 03, AP & AD

Share this post


Link to post
Share on other sites

This was produced in Substance Alchemist using the Match and Equaliser Filters
884356963_WornConcrete_baseColor.thumb.png.1aee221f3f722077841aace627b8af75.png


iMac 27" Late 2015 Fully Loaded, iMac 27" Mid 2011 both running High Sierra 10.13.6 - Affinity Designer/Photo & Publisher - Illustrator CC, Inkscape, Blender, Sketchup, Pepakura Designer, MTC, Pixelmator & Pixelmator Pro + more... XP-Pen Artist-22E, - iPad Pro 12.9 B|  

Affinity Help - Affinity Desktop Tutorials - Feedback - FAQ - most asked questions

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

These are the Terms of Use you will be asked to agree to if you join the forum. | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.