Grayscale to 3D

Hi all,

i work with laser engraving, lalely i got some 3D in net to engraving test but now i want make my own images. To laser engraving don´t need gcode as routers, the laser software just read de grayscale difference between black and wite and adjust the laser power in real time durung engaving. Well, i need only take any jpg grayscale image and transform in a jpg with the texture as this pic.


and this pic is what i did with laser using that jpg
Could anyone say if is possible do it in Blender?

1 Like

Two answers

  1. Yes, if the 3D is shallow and you’re wanting to show it mostly through lighting effects. This is routine old stuff in 3D graphics. It’s called a Bump Map. In Cycles, use an Image Texture with the JPG image, and a Bump node (listed under Vector) whose output is a Normal. Feed that normal to your diffuse/glossy/whatever shaders, and you’ve got it.

  2. Yes, if you need actual 3D to be viewed from close up, viewed sideways . This can be done with a Displacement Modifier. For this, you need a high-res mesh, lots of nodes. Each node can be displaced perpendicularly according to an image’s grayscale value.

Here’s a reddit discussion on this: https://www.reddit.com/r/blender/comments/2pezya/can_i_convert_bump_map_to_mesh_for_3d_printing/

  1. For fine detail, it may make sense to avoid a super-high res mesh with millions of nodes. In that case, there are tricks but I’m not sure what’s good offhand atm.

Recommended reading: http://builder.openhmd.net/blender-hmd-viewport-temp/render/cycles/materials/displacement.html