Archive

Tag Archives: Photoshop

After my initial impression of Photoshop CC’s 3D printing capabilities, I went back and explored its vertex painting capabilities. I 3D print a lot of colored figurines, and love to use vertex painting as a quick coloring method.

Oona

Vertex painting is essentially coloring an object in 3D. An object usually has a file defining its 3D shape and another defining its texture (color). Vertex painting dynamically colors the texture file, by projecting the brush strokes onto the texture map of the object. It’s a very speedy process, and lot of 3D modeling software has vertex painting integrated. I wanted to see if Photoshop’s was up to snuff.

Another concept closely related to texturing is UV mapping. It’s not enough to texture an object just based on its 3D coordinates. After all, the texture file is a 2D image. There needs to be a way to project the 2D textures to the 3D faces. That projection is known as UV mapping.

Software with vertex painting but no UV mapping utilities usually tries to automatically generate a UV map. The way UV maps unfold greatly affects how much detail can be painted onto an object’s face. Photoshop automatically unwraps a UV for you, if no UV is specified in the model.

On to Photoshop:

I decided to color a little robot designed by Steve from Sketchbot:

Robot!

and a great tutorial to get myself started:

[more tutorial details here]

If you’re used to vertex painting, the interface is pretty standard. However, taking a look at the UVs reveal some problems.

Here’s the UV automatically generated by Photoshop:

Photoshop UV

See those dense clusters of vertices, like the parts corresponding to crevices of the arms?

arm crevice

It’s going to be impossible to get any sort of details in there (image if one pixel color an entire face).

I threw a checkered texture on the robot to get sense of where the textures are broken up.

checkered

I see a lot of non-optimal seams that are joined awkwardly.

seams

For example, for the area around the leg, you can clearly see where one set of checkers end and another begin. In a really good unwrapping, the seams would be hidden. Here, it’s up to the texturer to hide the seams.

Although the Photoshop unwrapping is really good for a first pass, there are much better UV unwrappers out there. UVLayout is one. Its sole purpose is to create extremely nicely relaxed UVs, albeit for a more manual/traditional texturing method. Sculptris is another. It’s a digital sculpting tool that blows apart UVs for a nice UV set tailored to vertex painting.

I don’t believe Photoshop lets you manipulate existing UVs. So, for folks considering Photoshop to UV paint, I’d suggest using another software to UV map and then importing the mapped object into Photoshop. Otherwise you might to spend a lot of time manipulating the texture to hide seams.

So I colored the robot and named it Mechanical Bloomer.

Petal Man

My favorite part is the wires on its head.

Petal Man head

It’s kinda cute :3

I tried to export it for 3D printing ’cause Photoshop bundles the ability to export to Shapeways.

print to Shapeways

Oh boy was it hard.

Well, the actual exporting was very easy, and Photoshop creates a zip of all the necessary files as  well as additional files for Shapeways-specific 3D printing process.

files

Start of Photoshop CC 3pj file:


<?xml version="1.0" ?>
<PrintJob>
 <Version value="1" />
 <!-- 3D Printed by Photoshop CC -->
 <PrintTo value="Shapeways.com" />
 <Printer value="Full Color Sandstone" />
 <ScaffoldingNozzle value="0" />

Start of Full Color Sandstone file:


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Printer>
 <Version value='1' />
 <PrintLocation value='Shapeways.com' />
 <UploadURL value='http://www.adobe.com/go/psuploadtoshapeways' />
 <PrintVolume X='250' Y='380' Z='200' />
 <PrinterResolution X='2.5' Y='2.5' Z='2.5' />
 <MeshRepairResolution value='7' />
 <PrinterHeads value='1' />

Resizing the model while keeping the texture is a nightmare.

When Photoshop exports for 3D printing, it does mesh repair. As part of mesh repair, it consolidate faces, and thickens parts if they are too thin.

These are all really good features but they didn’t build it compatible with textures.

missing

When I scaled down the model, the mesh repair created new faces that weren’t UV mapped correctly. Everything was fine at very large scales, but broke when scaling down.

In the end, I could not get textures to come out exporting correctly, and got frustrated, and used 3DS Max to export. Arg!

Overall I think Photoshop CC is a neat vertex coloring tool. It’s not exceptionally better than other software I’ve used, and might need a few fixes. Given Adobe’s reputation, I think it’ll definitely be better in the future.

My Photoshop trial ends in 14 days, so if they come out with some neat stuff, I hope to see it soon.

Edit: Pro-tip from a Photoshop developer: if you “Unify scene for 3D Printing” before painting, it does the mesh fixing beforehand, so there’ll be less UV problems later.

A couple of days ago, I got wind of the news that Adobe Photoshop was going to support 3D printing.

It’s really interesting Adobe decided to build this into Photoshop, instead of rolling a separate 3D software, like Autodesk’s Print Utility.

Today, I downloaded the 30 day trial, and took it for a test drive.

Desktop OBJ

With Photoshop CC installed, OBJ files become associated with Photoshop CC, by default. Strangely, STLs are not.

Interface

Opening up Peppermint Butler brings up a 3D interface. This Peppermint Butler has missing faces in his arm, which seems to be automatically repaired in the export.

Peppermint Export

I also loaded up the infamous Rakdos with many invalid orientations.

Rakdos

Rakdos loaded super quickly, given the high number of polygons it has.

Exporting Rakdos

It also repaired ridiculously quickly! I’m surprised by Photoshop’s performance, compared to Autodesk Print Utility.

For a final comparison, I imported the repaired meshes into Netfabb, to see how good the repairs actually were. (Photoshop only exports in binary STLs).

Rakdos Repair

For Rakdos, I was impressed!

Super quick fix without sacrificing resolution!!!

There’s still a few issues with a couple shells and holes, but nothing  Netfabb can’t handle.

Peppermint Butler support

Interestingly, Photoshop’s support generation seems to be causing more problems. I’m not sure if these problems will translate to actual print problems, since I don’t handle supports/physical 3D printers very much (I mostly outsource my 3D printing to services, where I provide a valid model, and they handle the support generation).

Rakdos

Peppermint Butler

There you have it, my first impression of Adobe Photoshop’s 3D printing support. I saw features that could potentially be vertex painting of meshes, but I didn’t dive that far. Overall, I really like it. Although not as verbose as Netfabb, (which helps in diagnosing problems), it’s pretty efficient and produces quality repairs. I would definitely use it in my 3D printing pipeline, for all 30 days of my trial.