728x90
728x90
[ 게임 개발/Unreal Engine ][UE5 렌더링] 텍스처에서 디스플레이까지: 언리얼 엔진 픽셀 색상 과학과 sRGB vs Linear 파이프라인 총정리2025-03-01 14:57:26TL;DR — 3줄 핵심 요약• 문제: 텍스처는 sRGB로 저작되는데 엔진은 선형(Linear) 공간에서 계산한다. 임포트한 텍스처의 sRGB 플래그 하나만 잘못 잡아도 조명과 재질 색이 통째로 어긋난다.• 기술: 언리얼 엔진의 색 파이프라인은 텍스처 입력 → 선형 RGB 렌더링 → 포스트 프로세싱(ACES 톤매핑·그레이딩) → 디스플레이 출력의 4단계이고, 작업 색 공간(기본 Linear sRGB/Rec.709, 선택 시 ACEScg·Rec.2020)을 프로젝트 단위로 통일해야 한다.• 인사이트: 알베도는 sRGB ON, 노멀·러프니스·AO는 OFF가 기본 규칙이다. “무엇을 넣고, 엔진이 어떻게 처리하며, 무엇을 내보내는가”를 단계마다 확인하는 것이 색 일치의 핵심이다. https://youtu.be..
[ 42경산 & 알고리즘/자료구조 & 코테 ]코드트리 2025 리뉴얼 완전 분석: UI/UX 개편부터 백준·프로그래머스와의 비교까지2025-02-09 11:56:40TL;DR — 3줄 핵심 요약• 문제: 코딩테스트 학습 서비스 코드트리가 2025년 초 UI와 학습 기능을 크게 바꿨다. 무엇이 달라졌고 어디에 쓰면 좋은지 정리가 필요했다.• 기술/원인: 기업별 실력 진단과 맞춤 코스가 추가되고, 디자인이 정리되고 한국어·영어를 지원하며, 커리큘럼을 Trail로 바꿨다. 예시 코드는 5개 언어로 제공한다.• 해결/인사이트: 기초 학습과 유형 정리는 코드트리가 낫고, 문제 수와 실전 응시 환경은 백준·프로그래머스가 낫다. 세 플랫폼은 용도가 달라 함께 쓰는 편이 좋다.이 포스팅은 코드트리 x 글또 블로그 챌린지 2기를 통해 코드트리 체험권을 받아 작성한 후기입니다. 배너 이미지는 글또 김서현님이 제작해주셨습니다.들어가며: 1년 만의 두 번째 후기블로그를 운영하다 보면 조..
[ 42경산 & 알고리즘/자료구조 & 코테 ][알고리즘] 퀵 정렬(Quick Sort) 동작 원리와 시간 복잡도 분석: 피벗 선택과 분할 정복2025-02-02 20:27:41TL;DR — 3줄 핵심 요약• 문제: 퀵 정렬은 평균 O(n log n)으로 빠르지만, 피벗을 잘못 고르면 이미 정렬된 배열에서 O(n²)까지 느려진다.• 기술/원인: 피벗을 기준으로 작은 값과 큰 값을 나누고, 나뉜 두 구간에 같은 일을 반복한다. 분할이 한쪽으로만 되면 비교 횟수가 (n-1)+(n-2)+…+1이 되어 제곱이 된다.• 해결/인사이트: 랜덤 피벗, 미디언-오브-쓰리, 작은 구간의 삽입 정렬 전환, 꼬리 재귀, Introsort로 최악을 피한다. C++ std::sort도 Introsort를 쓴다.들어가며한 기업의 필기 테스트에서 나온 문제를 계기로 퀵 정렬을 다시 정리했다. 퀵 정렬은 평균 속도가 빠르고 추가 메모리를 거의 쓰지 않아 널리 쓰인다. 이 글은 기본 개념, 동작 원리, 최악..
[ 시스템 & 인프라/PintOS & CS ][데이터베이스] DB 인덱스(Index) 핵심 원리: B-Tree 구조와 검색 성능 최적화2025-01-16 16:28:01TL;DR — 3줄 핵심 요약• 문제: 직무 테스트에서 데이터베이스 인덱스를 설명하는 문항을 다 쓰지 못했다. 백엔드와 모바일 게임 서버에서 인덱스 설계는 읽기 성능을 좌우한다.• 기술/원인: 인덱스는 컬럼 값과 레코드 위치를 정렬해 둔 별도 자료구조다. 조회는 그 구조에서 위치를 먼저 찾아 전체 스캔을 피하지만, 삽입·수정·삭제 때는 인덱스도 함께 갱신해야 한다.• 해결/인사이트: WHERE, JOIN, GROUP BY, ORDER BY에 자주 쓰이는 컬럼에 선택도가 높은 것부터 건다. 만든 뒤에는 EXPLAIN으로 실제 사용 여부를 확인해야 한다.들어가며: 직무 테스트에서 놓친 주제며칠 전 한 기업의 직무 테스트를 봤다. CS 기초 필기였는데, 데이터베이스 인덱스 문항을 끝까지 쓰지 못했다. 인덱스는..
[ 회고 & 컬럼/성장 에세이 ]개발자 오늘도 마음 튼튼하게 성장하기 (하)2024-12-22 23:58:02TL;DR — 3줄 핵심 요약• 문제: 실력을 키우려는 개발자는 책임을 미루는 습관, 흐트러진 루틴, 미루는 습관, 낮은 자신감, 집중력 저하를 각각 따로 다뤄야 한다.• 기술/원인: 책은 다섯 가지 방법을 제시한다. 자기 일을 끝까지 책임지는 태도, 불필요한 것을 줄이는 생활 설계, 일을 작은 단위로 쪼개기, 완료한 일을 확인하고 칭찬하기, 25분 집중과 5분 휴식의 뽀모도로다.• 해결/인사이트: 다섯 방법의 공통점은 의지를 쓰지 않고 구조를 바꾼다는 것이다. 환경과 시간을 정해 두면 실행이 쉬워지고, 작은 완료가 다음 작업의 동력이 된다.이 글은 글또 커뮤니티와 길벗 출판사의 후원을 받아 작성한 서평입니다.들어가며앞선 글에서 『개발자 오늘도 마음 튼튼하게 성장하기』의 1장부터 5장을 정리했다. 이 글..
[ 회고 & 컬럼/성장 에세이 ]개발자 오늘도 마음 튼튼하게 성장하기 (상)2024-11-10 23:58:36TL;DR — 3줄 핵심 요약• 문제: 개발자는 집중이 필요한 일을 하면서도 알림과 소셜 미디어, 자기 의심 때문에 깊이 몰입하는 시간을 잃는다.• 기술/원인: 소셜 미디어는 좋아요와 댓글로 주의를 붙잡고, 얕은 확인을 반복하게 만든다. 몰입에는 방해를 없앤 환경, 정해진 시간, 명확한 목표, 충분한 휴식이 필요하다.• 해결/인사이트: 책은 소셜 미디어를 끊는 대신 경력에 쓰는 방법을 제안한다. 글과 프로젝트를 공개하고, 같은 목표를 가진 사람들(에코 체임버) 안에 자신을 두고, 그 안에서만 생각하지 않도록 다른 관점도 받아들인다.이 글은 글또 커뮤니티와 길벗 출판사의 후원을 받아 작성한 서평입니다.들어가며: 어떤 책인가글또에서 책 한 권을 받게 됐다. 여러 책 중에서 이 책을 고른 이유는 추첨 인원이 ..
[ 회고 & 컬럼/성장 에세이 ]글또 10기 다짐글 - 비전공 자동차2024-10-13 23:58:40TL;DR — 3줄 핵심 요약• 문제: 글또 10기를 시작하며 6개월 동안 무엇을 남길지 정해야 했다. 그 시기에 자동차를 처음 사서 운전을 배우고 있었다.• 기술/원인: 운전은 면허보다 차량 구매와 혜택, 도로교통법, 차량 보조 기능을 함께 알아야 실제로 쓸 수 있었다. 보조 기능은 신호와 갑자기 끼어드는 차를 처리하지 못했다.• 해결/인사이트: 결국 기본기가 결과를 갈랐다. 프로그래밍도 AI가 만든 답을 판별할 지식을 가진 사람만 제대로 쓸 수 있다. 10기에는 매일 기초를 쌓고, 읽는 사람에게 실제로 도움이 되는 글을 쓰기로 했다.들어가며: 차를 샀다얼마 전 자동차를 샀다. 캐스퍼 일렉트릭이다. 좋아하던 차종인 캐스퍼가 전기차로 나온다는 소식을 듣고, 경북 경산으로 이사한 시점과 맞물려 구매했다.캐..
[ 시스템 & 인프라/PintOS & CS ][CS:APP/C언어] Malloc Lab 동적 메모리 할당기 구현: Explicit Free List와 가용 블록 분할·병합 최적화2024-04-15 00:57:27TL;DR — 3줄 핵심 요약• 문제: Malloc Lab은 malloc, free, realloc을 직접 구현하는 과제인데, 사전 지식 없이는 무엇부터 손대야 할지 알 수 없었다.• 기술/원인: 힙은 sbrk로 늘어나며, 블록마다 크기와 사용 여부를 적은 헤더를 두고, 가용 블록은 리스트로 관리한다. 할당 방식(First Fit, Best Fit)과 병합(Coalescing)이 단편화와 처리 속도를 좌우한다.• 해결/인사이트: 사용률(얼마나 낭비 없이 썼는가)과 처리량(초당 몇 번 처리했는가)은 서로 맞바꾸는 관계다. 점수는 두 값을 함께 계산하므로 한쪽만 올리는 구현은 점수가 오르지 않는다.들어가며크래프톤 정글 4기에서 Malloc Lab을 구현해야 했다. 이 글은 그때 이해를 위해 정리한 사전 지식..
728x90
728x90