Recycled HDPE Texture?

I was wondering if anyone had any thoughts on how I could recreate a texture for this type of material? It’s a recycled High Density Poly Ethylene. It’s created from plastic pellets in various colors and then pressed into a sheet. Love to render some scenes using this as a material, as its been specified for an architectural project…

Add images

First would be ideas on how to create the coloring, and second would be where to start with recreating the actual PBR settings? As far as I can tell the material is relatively smooth (similar to a plastic texture).

For context I’ve got very little experience with creating textures, although I have had a go at using Materialize and have used things like Quixel Mixer/Adobe Substance Painter. Any starting points/similar texture workflows/ideas are appreciated!

No need to leave blender in this case :wink:

First step: create a voronoi texture and plug in into a color ramp.
I’m using Separate RGB to only get one color channel.
I use “constant” interpolation of the color ramp.

Next, I create a normalmap from the remaining 2 channels from the vononoi texture, which makes each blob of plastic face a slightly different direction. I also use the “distance” to create a bit of slope to each blob.

Have fun!


This is quite cool! I have kind of the design I want (First Image), however I was playing around with some different nodes to see if there’s any way to soften the voronoi pattern? The real life sheet’s we’ve got kind of have a soft blur (as the plastic pellets meld into each other, has a kind of bleed/Gaussian blur/motion blur effect? Second Image) Any advice @ThomasKole?


Would also be cool if the voronoi pattern could scale randomly over 3D (i.e. bigger chunks in some areas, smaller chunks in others? I tried chucking some other nodes into the scale but none of them did what I thought they would :sweat_smile:)

Thanks for your reply!

if you click on the ‘F1’ drop down, you can select ‘Smooth F1’ - this blurs the edges a bit. But it can cause some aliasing effects, so you might need to tweak it a bit.


Hey @SterlingRoth, using F1 changes the shape of the Voronoi (which is kind of good), but it doesn’t actually blur the edges like I was hoping (like a Gaussian blur). Thanks for the suggestion though.

What about the Smooth F1 option?

1 Like

Sorry @SterlingRoth, I meant to say F1 Smooth.

To be honest from a distance the voronoi + colour ramp works well, but since this is for a high-end interior job I was hoping for something a lot more realistic, so I’ve starting playing around with Substance Designer yesterday to see if I can get something more complex going using @ThomasKole suggestion as a starting point. It’s kind of tricky since the material itself isn’t perfect chunks that are faded into each other, but are have a layered blur beneath the surface (where some areas have melted into each other more, or not, and also have that slight motion blur where other areas look very static) Here’s another two images showing what I mean. The second image is an example of how I want to render the scenes.


Hoping to use this material more often so I’ll have some fun trying to get it right!

Thanks for your help @SterlingRoth!

Actually blurring a sample (Texture sample, or voronoi in this case) is kind of impossible. You’d have to sample the same node multiple times with slight offsets, and average the samples.

However, there is a bit of a workaround that relies on both Eevee and Cycles taking multiple samples per frame.

You can use a white noise texture (pure random values per pixel per sample) to slightly offset each sample.

1 sample (eevee)

64 samples (eevee)

Together with some distortion using a Noise node, you can create a pretty convincing result (imo)



The big upside of this over something like substance designer is that it it completely procedural. There’s not repetition, just slap it on an object and it works.

One last idea:

The voronoi function in Blender can be a 4D function, so what if we plug a white noise sample into the W component? (very small values here, 0 to 0.01)

(more and less W noise)

Combine it with the original setup: