In this tutorial, I will show you how to make a book prop and texture it with a procedural leather material using the shader nodes in Blender for your project
Book Spine
Let’s start with the book spine
Begin with a circle that you rotate 90-degrees around the X-Axis
In Edit Mode and Vertex Select mode, delete the right-half of the vertices
In Top View move the remaining vertices along the Y-Axis by 2 Blender units
Duplicate the vertices and move them down along the Y-Axis by -4 Blender units
In Edge Select mode, select both of the semi-circles
Right-click and choose Bridge Edge Loops
Add a Solidify modifier with an offset of 1 and increase the thickness to around 0.1
In Object Mode, apply the modifier
In Edit Mode, add four horizontal Edges – moving them to act as title areas
Book Covers
Let’s move on to the covers
Select the top and bottom Faces and extrude them along the X-Axis [
With the Faces still selected, extrude them a second time along the X-Axis
Select the interior Edges and use the F-key to add faces
Select the faces that will make up the pages
Use the E-key and then the S-key and scale the Faces inward
Add a center vertical Edge Loop to the first extruded Faces
Select each Edge Loop (only on the top and the bottom) and move them in toward the center of the book
Select both Edge Loops and add a Bevel with multiple cuts
Check the Face Orientation and make corrections as needed
In Object Mode, apply all the Transforms using CTRL + A
In Edit Mode, select the top and bottom covers and inset the faces – these will be for some simple decorations
UV Unwrapping
Under the UV Editing tab, select the outer Edges and the two vertical Edge at the front of the book
Right-click and choose Mark Seam
Select everything and use the U-key to access the UV Mapping menu and choose Unwrap
Smoothing
If you are using 4.1, the smoothing options are different
You will now need to add a Smooth by Angle modifier and check Ignore Sharpness
If you are using 4.0 or older, you can still right-click and choose Shade Auto Smooth
Leather
Split the Viewport and open the Shader Editor
Add a new Material for the leather and make sure you are in Material Preview
Add a Voronoi Texture node and connect the Distance output to the Base Color of the Principled Shader
Change the Feature to Distance to Edge
Duplicate the Voronoi Texture node and then mix the two nodes together with a Mix Color node
Change the Blend Mode on the Mix Color node to Overlay and the Factor to 0.8
Add a Value node and change the Value to 45
Connect the Value output to the Scale input of both Voronoi Texture nodes
Add a Math node between the Value node and the second Voronoi texture node
Change the Function to Multiply and the Value to 1.5
Add a Texture Coordinate node
Connect the UV output to the Vector input of the first Voronoi Texture node
Add a Noise Texture node
Change the scale to 1 and the Detail to 5
Change the roughness to 1 and the Distortion to 5
Add a second Mix Color node and change the Blend Mode to Add
Connect the Factor of the Noise Texture to the B input of the Mix Color node
Connect the UV output of the Texture Coordinate node to the A input of the Mix Color node
Connect the second Mix Color node to the Vector input of the second Voronoi Texture node
Add a Color Ramp node between the first Mix Color node and the Principled Shader
Change the white color stop to a darker color (#441112)
Change the black color stop to a lighter color (#591618)
Move the darker color stop toward the left to expose more of the lighter color
Add a Bump node
Connect the output of the first Mix Color node to the Height input of the Bump node
Connect the Normal output of the Bump node to the Normal input of the Principled shader
Change the strength to achieve your desired look
Change the Value as needed
To add some damage to the leather, add a second Noise Texture
Connect the UV output of the Texture Coordinate node to the Vector of the second Noise Texture
Add a second Color Ramp and connect the Factor of the Noise Texture to it
Add a second Bump node and connect the Color of the second Color Ramp to the Height
Connect the Normal output of the second Bump node to the Normal input of the first Bump node
Adjust the Scale and Detail of the second Noise Texture [35, 5]
Move the White Color Stop to the left to adjust the amount of the damage
Decrease the Strength of the second Bump node and invert it [0.15]
Make changes as needed to the Noise Texture
Duplicate this Material and change the color you want to use for the decorations and the title areas
In Edit Mode, assign this new leather to the decoration and title areas
Paper
Select the Faces that make up the pages
Under the Material tab, add a new Material and assign it to these Faces
Add a Wave Texture and connect it to the Base Color of the Principled Shader
Change the Direction to Z so the bands are horizontal
Increase the Scale
Increase the Distortion and change the Wave Profile to Triangle
Add a Color Ramp between the Wave Texture and the Principled Shader
Change the White Color Stop to an off-white [#FFDCC8]
Change the Black Color Stop to a dark brown [#5A4D46]
Add a Bump node and connect the Color Ramp to the Height
Connect the Normal output of the Bump node to the Normal input of the Principled Shader
Adjust the Strength
To add some damage to the paper, add a Noise Texture
Add a second Color Ramp and connect the Factor of the Noise Texture to it
Add a second Bump node and connect the Color of the second Color Ramp to the Height
Connect the Normal output of the second Bump node to the Normal input of the first Bump node
Adjust the Scale and Detail of the Noise Texture [35, 5]
Change the Roughness to 1
Move the White Color Stop to the left to adjust the amount of the damage Decrease the Strength of the second Bump node