Modelo - Experiments with vertex colour
Modelo is a new platform for viewing 3D models online. I have been trialling it over the last few weeks, and i am very impressed with the service and the freedom it gives, to access 3d models anyway without any software. Perhaps I have been using the service on different types of 3D models than what those the service was intended for. Instead of architectural models of many individual parts i have been using it for my complex organic sphere designs, that is a single mesh with many vertices. I quickly found the for the moment the beta service limits the mesh complexity at 65,000 vertices, so I remodelled one of my recent prints to come in just under that total. 60,000. The design is a single woven topology, three layers of hexagons and pentagons thread themselves with a rotational randomness. Default
When I first uploaded the above HexWeave model I loved the extra dimension. Navigating it really made a complex form a lot more understandable and even made the complexity more impressive. My only minor complaint was the visual impact of the model didn't particularly pop, I am not sure whether its the shade of grey, or perhaps the lack of contrast, the model just does't have the crispness that I wanted. As Modelo accepts mesh colour, I decided to experiment with creating my own colour/shading effects and painting them directly onto the base geometry to add to visual impact that I was looking for. After i started thinking on the subject, I started to see more application to this, how carefully colouring your mesh could enhance aspects of the design. Colour Gradiant
My first idea was to brighten it by adding colour, but instead of a global colour, I could use a gradient that is determined by distance to centre point of the object. That way the colour would help to reinforce the sense of depth and layers in the object. Gray-scale Gradient
I wasn't a big fan of the colour, so I decided to stick with B/W. I coloured this mesh again according to mesh vertices distance to centre point. Black being the furthest away. An unexpected benefit of this style was on the white background the outer branches were amplified. Ambient Occlusion
My 3D printed models are pure white, yet the complex forms are easy to distinguish, this is due to Ambient Occlusion. Shadows naturally occur where two objects meet, or are in close proximity. I set out to create my on version of AO. The method I ended up using was to project each mesh normal and tested for collisions, then coloured that mesh according to the distance to that collision (white if no collision). I really love this result, it really increases the contrast of the model, and enhances the weaving forms. The inside of the sphere end up much darker, obviously, but improves clarity of the weaving forms, it hides the pattern in the background. Light External
After success with the AO method, I attempted creating a lighting method. This decision may have been too ambitious, without any real knowledge of lighting or rendering. My theory was to break the lighting into two methods. The first, a direct light pass, was too find which mesh faces were directly exposed to the light source without a collision, these should be the brightest point on the mesh and so should be white. After this process the mesh is high contrast, black and white. The second pass is to add some light to the est of the mesh. For this I measured the angle of each mesh face to the light source, the largest angles (meshes facing the opposite direction would be black, meshes facing the light source would be grey). A bit of tweaking was required with the gradients to get the result I wanted, while the method is totally fabricated nonsense, it gives a lot of flexibility to fine-tune. Light Internal
The final model is the same process as the previous, but the light source is placed inside the mesh sphere. The results in this case doesn't work as well as I had hoped. This effect works much better with a black background. So in conclusion while I hope Modelo works on its shaders and visual settings, maybe adding some functionality in that area, but as a beta product it really is great. It has also given me this short but educational experience trying to create my own graphic effects, i will be continuing this research in future.










