Week 6(b): Bake 3D Modelling and Output as ply format
1. Finishing the Model and Facing Export Challenges:
By Week 5 and Week 6 (a), I had completed the final stage of my 3D modelling process. The structure, materials, and textures of the virtual plant were all in place. In my initial ideas, I planned to export the model as .obj
or .ply
format so that I could import it into TouchDesigner for further visual experimentation and interaction design.
However, when I exported the model, I noticed a critical issue: the colours I had applied through Blender’s material nodes were missing. The exported files appeared completely white, without any of the surface colours or textures I had assigned.


2. Identifying the Problem and Learning to Bake
To solve this, I began researching the problem and came across several tutorials on YouTube. Through this, I learned that Blender does not automatically export node-based materials into formats like .obj
or .ply
. In order to preserve the visual appearance of the model, I needed to bake the materials into image textures. Baking essentially converts the procedural or node-based material data into a flat image file that can be mapped onto the model’s surface.
3. UV Unwrapping and Texture Baking for Export
Following the tutorial I watched, I began the baking process step by step in Blender to ensure my virtual plant model could retain its material colours when exported as .obj
or .ply
.
I first used Blender’s built-in Smart UV Project function to unwrap the model. This tool automatically calculates UV coordinates for complex geometry, which was especially helpful for my organic plant shapes. By unwrapping the model this way, I ensured that all the surfaces, from petals to stems, would have a clean and usable UV map. This step was essential for allowing colour and texture information to be correctly baked onto a 2D image (Fig 3).
Once the UVs were in place, I went into the Shader Editor and created a new Image Texture node. I named this new image file clearly (Graduation_Project_bake
) and assigned it to the material, without connecting it to the shader output just yet. This image would serve as the target for the baking process, receiving the colour data from the existing material setup.
With the new image node selected, I adjusted the bake settings in the Render Properties panel. I chose “Diffuse” as the bake type and disabled both “Direct” and “Indirect” lighting contributions, since I only wanted to capture the base colour information. Then I hit Bake, and after a short wait, the colour information from my procedural materials was successfully transferred onto the image texture.
After baking, I saved the image externally and plugged it back into the base color input of the shader as an Image Texture. At this point, my model no longer relied on complex node-based materials. it used a simple texture map, which ensured that the colours would stay visible when the model was exported (Fig 4).




4. Exporting the Textured Model as .OBJ
After baking the material into an image texture and applying it back to the model, I moved on to the export stage. Since I wanted the model to retain its colour information outside of Blender, particularly for use in TouchDesigner I chose to export it in the .obj
format.
Before exporting, I made sure that the baked image texture was properly assigned to the material and visible in the Material Preview and Viewport Shading modes. Then, in Blender’s export settings, I selected File > Export > Wavefront (.obj).
In the export panel, I enabled the following key settings:
- Include Normals – to keep surface detail
- Include UVs – essential for mapping the baked texture
- Write Materials (.mtl) – to export the associated material file
- Copy and Embed Textures – to ensure the
.mtl
references the baked texture image correctly
Once exported, this process generated three files(Fig 5):
- The
.obj
model file - A
.mtl
material definition file - The
.png
image file I baked earlier
Together, these files preserved the geometry and surface appearance of my virtual plant. When tested in other software environments, such as TouchDesigner or 3D model viewers, the model successfully displays the correct colours, as intended(Fig 6).


5. Converting to PLY for Real-Time Signal Interaction
In my design concept, I wanted the bioelectrical signals from the plant to generate sound, which would then influence the behaviour of virtual plant particle-based visualisation in TouchDesigner. To achieve this, the 3D model needed to be lightweight, yet capable of translating colour data into a point-based system. For this reason, I chose to convert my .obj
model into a .ply
format with vertex colour data.
To do this, I used MeshLab, a free and open-source tool for processing 3D mesh data. First, I imported the .obj
file into MeshLab. Then, I applied the Texture to Vertex Color function (Fig 7). This step transferred the colour information from the baked texture into the model’s vertex data, which is essential for real-time graphics workflows where particle behaviour can be mapped to RGB values.
After that, I cleaned up the mesh by deleting all face data, leaving only the coloured vertices (Fig 8). This allowed the model to act as a cloud of data points rather than a rendered surface. Finally, I saved the model in .ply
format, which preserved the vertex colours and ensured compatibility with TouchDesigner’s particle system (Fig 9).
This preparation allowed the plant model to become part of an interactive system, where internal plant signals could generate sound, and that sound could in turn reshape the form of the virtual organism—closing the loop between biological input and digital expression.



Leave a Reply