CP
PROJECT

Testing Paint Colors on a 3D Model of Your Own Furniture

J
By James
Contributor · November 9, 2026
Testing Paint Colors on a 3D Model of Your Own Furniture

The dresser is oak, bought in 1964, and 36 inches wide. It stands in a bedroom in Raleigh with one north window and a ceiling bulb. Three paint chips had been taped to the top drawer since Labor Day, each two inches wide, and after two months none of them had answered the question. On the first weekend of November a phone photo, a free 3D model and a laptop did.

A white painted dresser with one drawer open. Photo: Shixart1985, CC BY 2.0, via Wikimedia Commons.

Saturday, November 1, 9:40 am, out to the garage

The garage door went up at 9:40 and the dresser went out to stand in front of it, on the concrete, with the white door behind it. Overcast morning, no shadows. One phone photo straight on from 6 feet, dresser-front.jpg, 2.6 MB, then one more from the left corner for the side panel. The owner had wheeled two bikes out of the frame first, which turned out to matter more than the phone did.

A wooden dresser sitting on a concrete driveway in front of a white garage door under overcast sky.
A simple photo taken against a neutral garage door under flat overcast light makes digitizing furniture easier.

The front shot came out at 3,024 by 4,032 pixels. The dresser itself measures 36 inches across the top, 18 from front to back and 48 from the floor to the top edge with the pulls left out of it, and the first of those three numbers did the scaling later.

9:52 am, the photo becomes a 3D model

At 9:52 dresser-front.jpg went up from the laptop to a service, free to try, that turned a photo of the dresser into a 3D model, and at 9:56 a GLB file of 4.1 MB came back with the garage already cut away and the oak grain baked onto the surface. In the browser viewer the dresser spun once. The back came out as a plain panel in oak color with no drawers on it, and no photo had shown the back anyway.

The GLB carried about 186,000 triangles, with OBJ, SKP and BLEND on offer from the same page for anyone who works in those. It arrived 92.3 centimeters wide, a shade over the real 36 inches, and one typed number in the scale box put that right at 9:58.

10:05 am, Blender, and three hex codes from the chip pages

Blender 4.2 took the GLB at 10:05, File, Import, glTF 2.0, one object, one material, the grain already mapped onto it. The paint went on at 10:14 as a Mix Color node above the wood texture, flat color on top, grain showing through at 15 percent, nearer to a brushed finish than a solid fill. The hex codes came from the chip pages on this site, which print the hex and the LRV beside every swatch.

Computer monitor displaying a 3D model of a dresser being tested with different digital paint shades.
Digital modeling tools allow you to test hex codes directly over existing wood grain before buying real paint samples.

Color — Code — Hex — LRV

Alabaster — SW 7008 — #EDEAE0 — 82

Agreeable Gray — SW 7029 — #D1CBC1 — 60

Naval — SW 6244 — #2F3D4C — 4

The lime green dresser at 10:17 came from EDEAE0 typed into the RGB field, one tab left of Hex. The three materials, named after the chips, were all in the file by 10:22, and switching the whole dresser from one to the next took one click in the material slot.

10:30 am, the bedroom light, built once and used three times

At 10:30 the bedroom went into Blender as two lights and a camera, and nothing else, the walls could wait. An area light the size of the window, 36 by 48 inches, stood on the north side at 6500 K for the 11 am pass. A point light at 2700 K hung where the ceiling fixture is, the bulb the owner has no plans to change. The camera stood in the doorway, 60 inches off the floor, which is the view anyone has of that dresser fifty times a day. Six renders at 1920 by 1080 took 14 minutes in all on a laptop with no graphics card.

Sunlight streaming through a bedroom window onto light wood floors and soft beige walls near a glowing lamp.
Replicating both cool window daylight and warm bedside lamp light helps predict how colors shift through the day.

Render — Light — What showed

Alabaster, 11 am — North window, 6500 K — Every dent in the top, the grain through the paint

Alabaster, 8 pm — Ceiling bulb, 2700 K — Went cream, close to the existing trim

Agreeable Gray, 11 am — North window — A cool gray, greener than the chip looked

Agreeable Gray, 8 pm — Ceiling bulb — Warmed to greige, the drawer fronts flattened out

Naval, 11 am — North window — Almost black, the brass pulls disappeared into it

Naval, 8 pm — Ceiling bulb — Navy came back and the top edge caught the light

Naval at an LRV of 4 soaked up nearly all the window light, and the 11 am render made that plain when the pulls vanished into the drawer fronts. The Naval page on this site lists that LRV of 4, and the number predicted the render before the render existed. Alabaster did the opposite at 82 and showed off a 40-year-old dent in the top that nobody had noticed under the oak finish.

11:20 am, the two-inch sample on the real drawer

By 11:20 the renders had cut three colors to one. Naval won on the 8 pm image. That afternoon the sample pot went onto the inside face of the bottom drawer. First coat at 1 pm, second at 2, dry by 4, drawer back in by 7 for the check under the real bulb.

Three things the render had no way to show turned up on that drawer. The satin threw the window back as a soft band across the front. Beside the bare oak top, Naval leaned a little green, which the chip had hinted at and the render had not. The brush texture showed on the first coat and vanished on the second, and the brass pulls read warmer against the navy than the render had suggested, which settled the question of replacing them. They stay.

Sunday, November 2, the order and the files kept

A quart of Naval in satin went in the cart Sunday morning, with the top left as oiled oak after the 8 pm test showed how the two surfaces met. The GLB stayed in a folder with the two renders that settled it, so the nightstand from the same set can wear the same color test in ten minutes when its turn comes. The chips came off the drawer the same day.

Step — Time taken

Photos — 4 minutes

Photo to 3D model — 4 minutes

Import and scale in Blender — 6 minutes

Material node and three colors — 12 minutes

Lights and six renders — 14 minutes

Sample coats on the drawer — 25 minutes, plus drying

Total before buying paint — 65 minutes

This article was contributed by James. Want to write for us?Here's how.