Retaining Materials from Cycles Render

Hi,

I’ve modeled an iPad device and kept the render mode in cycles as I materialized the object through the node editor for each respective material.


Very happy with the end result in the cycles render. I moved on to the next step in my workflow of exporting that object as a .obj file so that I can import that file into a plugin for After Effects called Element 3D.

Here is a link to the plugin for those that are unfamiliar.

Element 3d accepts the .obj file fine however none of the materials are transmitted. You can see in the screen shot below that they’re there but essentially have no values for the material sockets.


So I should now being re-connecting the materials for each socket. I have the images for the apple logo and camera because those are .png’s but I don’t have anything else… Gah!

I can painstakingly try to re-create a similar material look by inputing new values etc… but it’s not what I designed in Blender. I need this material translation to be a 1:1.

How can I export the node materials so that I can re-apply them in Element?

Did I make a mistake by not using the blender render opposed to the cycles render for materializing my object? --Hence why they won’t export?

Thank you all kindly for considering my dilemma. Any suggestions or feedback is greatly appreciated.

Best.

Did I make a mistake by not using the blender render opposed to the cycles render for materializing my object?
Yes

The .obj exporter only works with blender render materials, not cycles materials

See here for what is supported http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/Import-Export/Wavefront_OBJ

Thank you.

I’ve went back and re-assigned new blender render materials to all the part of the mesh that needed it, and re-applied new images textures so everything was FRESH and clean.

Element 3d accepts my .obj file nicely but still… the materials for the object are still not being accepted. This is apparently normal because the After Effects plugin that I am using to bring my .obj files; Element 3d, does not read the .mtl files.

Element does accept .jpg or .png for diffuse, reflective, specular textures etc… So I went back into blender and attempted to join all the mesh objects together into one solid mesh object. Then I attempted to select everything and unwrap the mesh so I could bake out images of the textures. When I performed the actual unwrapping my mesh came out all funky in the uv window, and I noticed it made my image texture on screen get all wonky. Check screen shots below. I don’t have any modifiers or anything like that applied so I quickly ruled that out… Not sure why it’s giving me this weird layout?


I’ve attached the blend file to this post hoping that someone can take a look at my project file and explain to me what I am doing wrong here?

What I need in the end is a .obj file with baked out material textures that I can then re-apply in Element. Can you advise if I’m venturing down the right path or should be considering something else my workflow?

Thank you all kindly in advance.

Attachments

iPad_Model_Blender_Render_Material.blend (5.41 MB)

There is no exact correspondence between Blender material properties and Element material properties. The documentation suggests that with V2 you can have element read the .mtl file if it is in the library/videocopilot directory and accessed through the element model browser, but I have v1.6 so I can’t check it. Even if it works it will just pass to element the directory location of your texture files and perhaps some basic settings. This would save you some mouse clicks, but you would still have to tweak settings by hand to get the final look you are after.)

However, you already have everything you need, you just have to set up the element materials by hand. It may be fiddly, but you can do it in less time than you have already spent. There are only 4 or 5 textures to hook up. Be aware that there is a material called none assigned to the glass, you will have to make this transparent or partly transparent to see the screen texture.