Supercar Model

This car was modelled for a game that I contribute towards but also done as a challenge to myself for what I can do with SOLIDWORKs surface modelling. However, as it's being made for a game, low poly count and performance is of priority whilst balancing this with good-looking model. As a result, corners were cut to save precious triangle count, leading to compromises such as using significantly lower detail, using circles with limited sides (between 5-14 sides depending on feature), headlights being just a neon strip and optimizing how bodies were merged to reduce tri-count. These all posed additional challenges and considerations when creating the model in SW. 


After completion of the model, it was exported as a STL to Blender where I can begin to post-process the mesh.


However, the above image shows the imported STL file, hitting 43.4k tris - an unacceptable polycount which would only cause performance issues for players in regards to the extra memory and processing that this model will take. In addition to this, the topology is incredibly messy and possesses shading issues here and there. To save time and for saving space for the UV-unwrapped texture later on, the model was cut in half in Blender, a mirror modifier attached, then the mesh was manually refined and worked on. 


The result is this refined mesh which is significantly cleaner and lower in polycount - reaching a total of 14,890 tris, which is a significant decrease and on the upper range of what is an acceptable polycount for the game. The model was also manually unwrapped, making use of seamlines to do so. A plugin was also taken advantage of to ensure the most efficient use of the image size available for the unwrap. 


The overlay was used to verify proper unwrapping where the heatmap will exposed stretched portions which will cause the texture to also be stretched in the affected areas. The majority of this unwrap consisting of the same shade of blue indicates that I did a good job of unwrapping. Furthermore, the use of splitting the vehicle in half then mirroring it, means that only half of the geometry needed to be unwrapped onto the image, saving pixels and thus allowing more resolution onto the surface of the texture. Once this was completed, it could be then exported as an OBJ file to Adobe Substance Painter for PBR texturing. 


PBR texturing consists of taking 4+ texture maps, each representing a different aspect of the texture: e.g. normal map, metal map, roughness map, color map, etc. This allows for greater fidelity in the texture, allowing for superior realism. The above screenshot shows the textured car model. These textures were then exported for use in-game. The color channel was disabled for the car body color, leading to transparency instead - the aim of this is to allow easy adjustment of color in-game, saving time and in-game memory + loading times by only needing to use 1 set of textures instead of a set of textures per color. A higher resolution version of the texture was also exported to Solidworks Visualize for the purposes of creating renders. 


Here in Visualize, my own custom texture was applied for the car body itself for a more metallic paint effect. Then I produced the following renders:




I BUILT MY SITE FOR FREE USING