본문 바로가기

테크일기21

Three.js 재료 완전 정복! 현실감부터 카툰 스타일까지 한눈에 보기 안녕하세요, 코드아키텍트입니다.오늘은 Three.js에서 재료(Material)에 대해 공부한 내용을 정리해보려고 합니다. 5가지 재료 + 1Material을 한국어로 ‘재료’라고 번역할 수 있지만, 한국어로 쓰면 조금 어색한 느낌이 들긴 하죠. 어쨌든, Three.js에는 5가지 주요 재료 + 1가지가 존재합니다. 왜 굳이 +1이라고 표현했는지는 글을 읽어보시면 자연스럽게 알게 되실 거예요.먼저 다섯 가지 기본 재료는 다음과 같습니다:MeshBasicMaterialMeshLambertMaterialMeshPhongMaterialMeshStandardMaterialMeshPhysicalMaterial이 재료들은 모두 3D 지오메트리를 얼마나 사실적으로 표현할지에 따라 선택하게 됩니다. 다시 말해, 프로젝.. 2025. 6. 25.
AI는 설계와 시공을 바꿀 수 있을까 안녕하세요, 코드아키텍트입니다. 테크 일기라고는 했지만, 이제 그냥 일기가 되어버린 요즘. 아무튼 오늘도 몇 자 적어봅니다.최근 읽은 리포트 하나를 소개드리며 시작해볼까 합니다.👉 Autodesk State of Design & Make 2025 - Addressing Talent Gaps 이 리포트에서는 디지털 전환과 AI 역량 확보를 통해 디자인 및 제조 산업 전반의 인력 격차를 해결하려는 시도가 다뤄지고 있습니다. 이와 관련해 AI에 대한 제 생각을 좀 나눠보려 합니다. AI에 대한 수요와 현실적인 제약 “AI를 써야 한다”는 이야기는 누구나 합니다. 설계를 하는 사람도, 건설 현장을 관리하는 사람도 모두 AI 도입을 말합니다. 하지만 그만큼 실현도 쉽지는 않습니다. 자율주행처럼 정답이 명확한 .. 2025. 6. 23.
맥킨지 컨설팅 제안서, 이렇게 만든다: 7단계 구조 완전 분석 안녕하세요, 코드아키텍트입니다.오늘은 맥킨지 컨설팅 제안서 문서를 기반으로, 그들이 제안서를 어떻게 구성하는지 정리해봤습니다.(※ 자료는 제가 개인적으로 구한 내용이라 출처를 명확히 밝히긴 어렵습니다. 따라서 내용의 정확성에는 어느 정도 한계가 있을 수 있음을 미리 말씀드립니다.) 1. 시작은 “왜?“에서부터 — 요청의 맥락과 목적 이해하기 건축을 전공하면서 가장 많이 들었던 질문 중 하나가 바로 “그래서 이걸 왜 하는데?”였습니다.컨설팅도 마찬가지더라고요. 시작점은 항상 ‘이 일을 왜 하느냐’입니다. 고객이 우리에게 어떤 요청을 했는지, 그리고 그 요청의 이면에는 어떤 진짜 목적이 있을지를 먼저 고민합니다.여기서 포인트는 “우리가 이해한 바로는…”이라는 표현을 쓰는 거예요. 명확하게 정의하면서도 동시에.. 2025. 6. 21.
웹 3D, 어디까지 해봤니?Autodesk Tandem + Three.js 실험기 마이너하지만 깊은, Tandem Viewer에서 Three.js 객체 띄우기 안녕하세요, 코드아키텍트입니다.오늘은 제가 회사 프로젝트를 하면서 다뤘던 조금은 마이너한 개발 경험을 짧게 소개해보려 합니다. 보안상 깊은 기술적 디테일은 언급하기 어렵지만, 전체적인 맥락과 느낀 점 정도는 공유해도 괜찮을 것 같아서요. 웹에서 3D를 보여준다는 것 웹에서 3D를 보여주는 건 생각보다 간단하지 않습니다. 단일 객체나 단순한 박스 모델 정도라면 괜찮지만, 파일 크기가 20~30MB를 넘기 시작하면 얘기가 달라집니다. Three.js와 같은 라이브러리는 내부적으로 WebGL을 활용합니다. 이 WebGL은 기본적으로 사용자의 GPU 성능에 의존합니다. 즉, 동일한 코드라도 보는 사람의 컴퓨터 성능에 따라 완전히 다른.. 2025. 6. 20.
THREEJS 다시 배우기 #2 프로그램은 프로젝트를 해야 많이 배울 수 있습니다그러다 문득 Threejs로 어떤 프로젝트를 해볼까라는 생각에 이르렀습니다아무래도 베이스가 건축이다 보니 건축과 관련된 것이 떠오릅니다그 중에서도 공간의 관계성을 표시하는 프로젝트를 생각했습니다. 전문용어로는 Space Syntax라고 합니다. 공간의 관계성을 나타내고 나아가서 설계에 반영하는 방법입니다.이 방법을 활용하면 공간 설계에 있어 보안적으로 문제가 되는 곳은 없는지 찾는 것들이 가능합니다. 그럼 이 방법을 어떻게 구현할지 생각을 해보아야 합니다단순히 3D모델을 쓸 수도 있지만, 3D 포멧 중 관계성을 지원하지 않는 경우도 여럿있습니다. 따라서, ifc와 같은 포멧을 사용하는게 좋을 것이라고 예상할 수 있습니다해당 ifc를 관계성으로 나타내기 위해.. 2025. 6. 8.
THREEJS 다시 배우기 #1 이사와 결혼 등등으로 글이 밀립니다머리로는 써야한다 하지만 손가락은 민첩하지 못합니다어쨋든 다시 글을 써봅니다여러가지 기술에 발을 걸치고 있지만제 핵심에는 3D가 있습니다예전에 일하던 방식대로 라이노와 그래스호퍼를쓴다면 쉽고 빠르게 해결할 수 있지만확장성에 한계가 있습니다그런마음에서 Threejs를 시작했습니다Threejs journey라는 근본강의도 들었지만이번에는 메뉴얼을 보며 공부를 하고 있습니다R3F도 썼었지만 이제는Vite와 vanilla js로 옮겨왔습니다메뉴얼로 공부하면서 느낀것은생각보다 체계적이라는 것이었습니다가령 Scene graph라는 개념은 Threejs journey에서는잘 다루지 않는 내용입니다. 해당 개념은 객체간의 관계성을 넣는 것으로 이해하면 코드를 훨씬 편하게 구성할 수 있.. 2025. 6. 6.