Full-procedural ceramic tiles material

General discussion about Indigo Materials - material requests, material developement, feedback, etc..
User avatar
fenerolina
Posts: 141
Joined: Sun Mar 15, 2009 12:27 pm
Location: Pyrenees

Re: Full-procedural ceramic tiles material

Post by fenerolina » Sat Feb 13, 2010 10:36 am

Hey Galinette!
You managed it!
I like your usine a gaz prodution!

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sat Feb 13, 2010 12:38 pm

I'm baking a new run tonight... Hope to get closer from your hexagonal tile picture...

Etienne
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sat Feb 13, 2010 12:46 pm

Basically the threshold is too low, making too large grooves.
This is customizable, I just need to change one groove width constant for this!

Code: Select all

outer tile -> more wear -> less octaves(/depth) for grooves. You can even add the grooves shader to drive those octaves, deeper -> less wear. e: Uhm, or a copy of the shader, or that wouldn't evaluate I suppose.
I do not understand this!!
There is often dirt accumulating around the grooves borders, below the tile surface.
I already tried to address this, but not so well yet...

You can keep the UV placement for grooves homogeneous over tiles, but play instead with a per-tile grooves threshold (grooves average width). This way the damages would be related from tile to tile without being outrageously aligned.
This was in fact already implemented : for the tile damage , I use a fbm ( uv_coordinates * constant_a + tile_integer_coordinates * constant_b ) so that I do not align the "per tile" features. However, for some reason, it doesn't work sometimes. This may be related to the bug that Ono answered in one of my other posts.
Would it be possible (rethorically speaking if you allow the redundance) to perturb the tiles parallelism against the mortar plane ? some per-tile oriented lerp over the bump/displacement would be a trivial method I suppose ?

Actually, there is even a more simple way to do this : given I already calculated the tile_integer_coordinates and the local_tile_coordinates ( for square, this is floor and fract, but more complicated for hexa), you just need a bump function like this:

dot ( local_tile_coordinates , vec2 ( noise ( tile_integer_coordinates * constant_a ) , noise ( tile_integer_coordinates * constant_b ) )

The dot product is very convenient to generate linear slopes.

Etienne
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sat Feb 13, 2010 10:47 pm

Here is the last version:
Attachments
ceramic-test3b.jpg
Edit : picture updated with less noise
ceramic-test3b.jpg (116.1 KiB) Viewed 6083 times
Last edited by galinette on Sun Feb 14, 2010 12:16 am, edited 1 time in total.
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
CTZn
Posts: 7240
Joined: Thu Nov 16, 2006 4:34 pm
Location: Paris, France

Re: Full-procedural ceramic tiles material

Post by CTZn » Sat Feb 13, 2010 11:04 pm

To be honest you are loosing me with a three terms dot()... if I'm refering to the old technical manual :oops:

Maths make that distance between you and me...

I'm used with graphical systems (Maya nodes). The best I can do atm is to design shaders this way and try to translate them into ISL*.

http://www.indigorenderer.com/forum/vie ... 672#p85672

Oh yeah just seen that above when posting. Too high ior, exponent would greatly benefit from a simple noise map. The shape under control, congratulations !!!

* Wouldn't it be more efficient if you do the translation ? I can describe my shaders if you are interested :)
Last edited by CTZn on Sat Feb 13, 2010 11:10 pm, edited 1 time in total.
obsolete asset

User avatar
OnoSendai
Developer
Posts: 6241
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Re: Full-procedural ceramic tiles material

Post by OnoSendai » Sat Feb 13, 2010 11:07 pm

hi Etienne, is that material fully procedural?!!
Amazing!

User avatar
Jambert
Indigo 100
Posts: 545
Joined: Wed Jul 30, 2008 10:08 pm
Location: France, Lyon

Re: Full-procedural ceramic tiles material

Post by Jambert » Sat Feb 13, 2010 11:08 pm

Respect :shock:

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sat Feb 13, 2010 11:25 pm

I'm actually using a bitmap in it, but that's only a 2D color gradient generated with photoshop, to generate the tile's tint. It's not mapped to UV coordinates. I could have done it procedurally, but it then quite difficult to change the tint just from the numbers. So I use a generated gradient for this.

Then I would say yes, it's 100% procedural.

Material attached
Attachments
terracotta-hexagonal-tiles-draft.pigm
(7.65 KiB) Downloaded 324 times
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sun Feb 14, 2010 12:23 am

CTZn wrote:To be honest you are loosing me with a three terms dot()... if I'm refering to the old technical manual :oops:
That's a 2 terms dot!
dot ( position , vec2(x,y) )
CTZn wrote:Oh yeah just seen that above when posting. Too high ior, exponent would greatly benefit from a simple noise map. The shape under control, congratulations !!!
I'll try that!
CTZn wrote:* Wouldn't it be more efficient if you do the translation ? I can describe my shaders if you are interested :)
I don't understand this, but seems interesting!


By the way, the last version is mush more speed-optimized than before. I use much more subroutines with params, to cope with the lack of variable assignment (params are the only way to store a value and use it multiple times currently). Now, there is much redundancy in calculations. The only remaining redundant calculations are because I'm using the same functions in the several shaders, and the lack of global functions in ISL makes it impossible to improve today.

Etienne
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
CTZn
Posts: 7240
Joined: Thu Nov 16, 2006 4:34 pm
Location: Paris, France

Re: Full-procedural ceramic tiles material

Post by CTZn » Sun Feb 14, 2010 12:34 am

galinette wrote:
CTZn wrote:To be honest you are loosing me with a three terms dot()... if I'm refering to the old technical manual :oops:
That's a 2 terms dot!
dot ( position , vec2(x,y) )
Ah, oops. Good start for me...
galinette wrote:
CTZn wrote:* Wouldn't it be more efficient if you do the translation ? I can describe my shaders if you are interested :)
I don't understand this, but seems interesting!
I'll be designing procedural networks in Maya. I'd be glad to describe the connections between Maya nodes if you like the effect in first instance. This is an open proposition, not an assignement. You are making gold from your time and I wouldn't like to waste it.

Cheers
obsolete asset

User avatar
fenerolina
Posts: 141
Joined: Sun Mar 15, 2009 12:27 pm
Location: Pyrenees

Re: Full-procedural ceramic tiles material

Post by fenerolina » Sun Feb 14, 2010 11:38 am

Cullons Galinette que fort que vàs!!
When I saw the last render test I thought at the first moment I was looking at the real pictures of terracota I posted few days ago. They are very real like, so congratulations again! I would only say if you permit me, that there're too many black little holes on the tiles...
I tested your last material upload but didn't work :( . In indigo:"Error, Indigo will close: shader runtime error: no texture with index 0." and then Indigo crashes..
Thank you.

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sun Feb 14, 2010 12:20 pm

That's strange : the material editor is not including the texture in the pigm, I thought it should?

Here is the last screenshot. I tried to follow CTZn's advices, and added some displacement (previous was 100% bump). The displacement adds a lot of realism I think. However, there are some artifacts due to displacement : some strange triangles, mostly in the right part of the image. Could this be due to the blending of displaced materials??

Etienne
Attachments
ceramic-test6.jpg
ceramic-test6.jpg (113.98 KiB) Viewed 7470 times
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Sun Feb 14, 2010 12:23 pm

Fenerolina (and others trying the previous pigm) : here is the png to include as shader texture 0 of the submaterial "base-terracota".

I still do not understand why the material isn't including the image...
Attachments
terracotta-tint.png
terracotta-tint.png (8.03 KiB) Viewed 6035 times
Eclat-Digital Research
http://www.eclat-digital.com

User avatar
galinette
1st Place Winner
Posts: 923
Joined: Sat Jan 09, 2010 1:39 am
Location: Nantes, France
Contact:

Re: Full-procedural ceramic tiles material

Post by galinette » Tue Feb 16, 2010 9:11 am

Anybody has an idea where this may come from? It appeared when I enabled displacement instead of bump. It looks like the normal is not properly computed.

That's annoying, since the tiles are looking good now apart from this :(
Attachments
ceramic-test6-marked.jpg
ceramic-test6-marked.jpg (96.69 KiB) Viewed 5951 times
Eclat-Digital Research
http://www.eclat-digital.com

Soup
Posts: 444
Joined: Sat Jun 13, 2009 1:20 am

Re: Full-procedural ceramic tiles material

Post by Soup » Tue Feb 16, 2010 10:13 am

yeah I saw that.. it's not a subdivision thing is it?

Post Reply
72 posts

Who is online

Users browsing this forum: No registered users and 20 guests