CFPS - Quick Texturing

Project Scope

For the CFPS (Cyber First Person Shooter) project, I was tasked with developing a workflow to streamline the customization of 3D gun models using user-provided images. I created a Python script within Blender that reads an image from the user's drive, extracts colors with the extcolors library, and applies these colors to the gun's materials.

Challenges

A key challenge was achieving accurate color representation, as the extracted colors from user images were in a linear format incompatible with Blender’s shader nodes sRGB color space. I resolved this by adding a function to convert colors back to sRGB, preserving the intended tones.

To create a cohesive look, the script applies the most prominent color (often the background) to the base material, allowing the user’s image to blend seamlessly onto the gun model. I also created flexible PBR textures in Substance Designer, making it easy to adjust colors directly within Blender.

Image 1
Image 1
Image 2
Image 2
Image 3
Image 3

Tools Used

- Blender: Developed the workflow for applying custom textures to 3D gun models.
- Substance Painter: Enhanced texture creation and painting for 3D models.
- Python: Scripted the automation of texture application and material adjustments.
- extcolors Library: Extracted colors from user-provided images to customize gun materials.