컬러·소재·마감(CMF)

Colour, material, finish (CMF)

똑같은 형태의 제품에 색·소재·표면 처리만 바꿔서 완전히 다른 인상과 촉감, 다른 가격대를 만드는 디자인 영역.

다른 이름: Color Material FinishCMF 디자인
···
html
<div class="cmf-caps"><span>gloss ABS</span><span>soft-touch TPE</span><span>brushed aluminum</span></div>
css
.cmf-caps{position:absolute;left:0;right:0;bottom:6%;display:flex;justify-content:space-around;font-size:clamp(8px,2.3vmin,12px);color:#f1f0eccc;text-align:center;padding:0 4%}
js
import * as THREE from 'three';
import { RoundedBoxGeometry } from 'three/addons/geometries/RoundedBoxGeometry.js';
const renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setPixelRatio(Math.min(devicePixelRatio, 2));
document.body.appendChild(renderer.domElement);
const scene = new THREE.Scene();
scene.background = new THREE.Color(0x0d0d12);
const camera = new THREE.PerspectiveCamera(40, 1, 0.1, 100);
camera.position.set(0, 0.5, 7.2);
const geo = new RoundedBoxGeometry(1.15, 1.7, 0.55, 4, 0.16);
const mats = [
  new THREE.MeshPhysicalMaterial({ color: 0xe0393e, roughness: 0.12, metalness: 0.05, clearcoat: 1, clearcoatRoughness: 0.1 }),
  new THREE.MeshStandardMaterial({ color: 0x8fae94, roughness: 0.92, metalness: 0 }),
  new THREE.MeshStandardMaterial({ color: 0xb9bec4, roughness: 0.32, metalness: 0.92 }),
];
const group = new THREE.Group();
mats.forEach((m, i) => {
  const mesh = new THREE.Mesh(geo, m);
  mesh.position.x = (i - 1) * 1.9;
  group.add(mesh);
});
scene.add(group);
const key = new THREE.DirectionalLight(0xffffff, 2.2); key.position.set(3, 4, 5); scene.add(key);
const rim = new THREE.DirectionalLight(0x8fb0ff, 0.8); rim.position.set(-4, -2, -3); scene.add(rim);
scene.add(new THREE.AmbientLight(0xffffff, 0.45));
function resize() { renderer.setSize(innerWidth, innerHeight); camera.aspect = innerWidth / innerHeight; camera.updateProjectionMatrix(); }
addEventListener('resize', resize); resize();
renderer.setAnimationLoop((t) => {
  group.rotation.y = Math.sin(t * 0.00035) * 0.55;
  group.children.forEach((m) => { m.rotation.y = t * 0.0002; });
  camera.lookAt(0, 0, 0);
  renderer.render(scene, camera);
});

CMF 는 Color, Material, Finish 의 줄임말로, 제품의 조형(폼)이 이미 정해진 뒤에도 여전히 남아 있는 큰 결정 영역입니다. 같은 사출 금형에서 나온 같은 형태의 케이스라도 광택 ABS 에 새빨간 안료를 쓰면 장난감처럼 보이고, 무광 소프트터치 코팅에 세이지 그린을 쓰면 차분한 가전처럼 보이고, 브러시드 알루미늄으로 마감하면 프리미엄 기기처럼 보입니다. 형태 하나로 여러 가격대·타깃을 커버할 수 있는 이유입니다.

마감(finish)은 색보다 손에 더 크게 남습니다. 같은 색이라도 유광(glossy)은 지문이 잘 타고 반사가 강하고, 무광(matte)은 지문이 덜 타지만 스크래치가 도드라지고, 소프트터치 TPU 는 촉감이 좋지만 가수분해로 몇 년 뒤 끈적해지는 경우가 있어 소재 선택 자체가 내구성 리스크가 됩니다. 그래서 CMF 결정은 디자이너 혼자가 아니라 소재 엔지니어·구매팀과 함께, 실제 사출 샘플(칩 chip)을 손에 놓고 비교하며 내려집니다.

디지털 제품의 "테마"·"디자인 토큰" 교체와 본질이 같습니다 — 컴포넌트의 구조(형태)는 그대로 두고 색상 토큰과 표면 스타일(그림자·모서리 반경)만 바꿔 여러 브랜드 스킨을 만드는 것과, 같은 금형에 다른 CMF 를 입히는 것은 같은 발상입니다.

언제 쓰나

하나의 형태로 여러 라인업(색상 옵션, 프로/라이트 등급)을 낼 때, 소재의 촉감·내구성이 브랜드 인상을 좌우할 때.