← 블로그 목록

DirectX 9는 왜 당시 윈도우 게임 개발자들에게 큰 사건이었나

Microsoft가 DirectX 9.0에서 고급 셰이더 언어와 더 강한 그래픽 프로그래밍 기능을 밀어붙이면서, 윈도우 게임 개발의 기준이 한 단계 올라갔다.

DirectX 9는 왜 당시 윈도우 게임 개발자들에게 큰 사건이었나

DirectX 9는 왜 당시 윈도우 게임 개발자들에게 큰 사건이었나

지금 기준으로 보면 DirectX 9는 오래된 기술처럼 보인다. 하지만 2000년대 초 윈도우 게임 개발자들에게 DirectX 9.0은 꽤 큰 전환점이었다. Microsoft는 2003년 1월 DirectX 9.0을 소개하면서, 고급 셰이더 언어와 더 확장된 프로그래머블 그래픽스 기능을 전면에 내세웠다.

핵심은 단순한 버전 업이 아니었다. 개발자가 그래픽 하드웨어를 더 직접적으로, 그리고 더 높은 수준의 언어로 다룰 수 있게 됐다는 점이 중요했다.


가장 큰 변화는 HLSL이었다

Microsoft는 DirectX 9.0의 핵심으로 고급 셰이더 언어(High-Level Shader Language, HLSL)를 강조했다. 이전에도 버텍스 셰이더와 픽셀 셰이더는 있었지만, HLSL은 이를 더 사람이 읽기 쉬운 형태로 작성하고 툴체인과 연결할 수 있게 해 주었다.

당시 공식 소개문에서도 HLSL은 C 언어 계열 문법을 바탕으로, 다양한 그래픽 하드웨어에서 비슷한 시각 효과를 더 쉽게 만들 수 있게 해 주는 환경으로 설명된다. 이건 현업 개발자 입장에서는 꽤 컸다. 셰이더를 더 적극적으로 쓰는 게임이 늘어나기 시작했고, 렌더링 파이프라인을 만지는 방식도 바뀌었다.


DirectX 9는 “더 멋진 화면”만 뜻하지 않았다

DirectX 9.0을 이야기할 때 흔히 그래픽 품질만 떠올리지만, 실제 의미는 조금 더 넓다.

즉 DirectX 9는 “눈에 띄는 그래픽 효과가 많아졌다”는 결과만이 아니라, 윈도우 게임 그래픽 프로그래밍의 작업 방식이 더 본격적인 셰이더 중심으로 이동했다는 의미를 가진다.


그래서 당시 개발자들이 다시 공부해야 했던 것이다

DirectX 9 시대의 개발자는 단순히 API 함수 호출만 아는 수준으로는 부족해졌다. 셰이더를 이해해야 했고, GPU가 어떤 계산을 맡는지 알아야 했으며, 고정 기능 파이프라인 중심 사고에서 조금씩 벗어나야 했다.

물론 그 변화가 하루아침에 모든 스튜디오를 바꾼 것은 아니었다. 하지만 이후의 DirectX 10, 11, 12로 이어지는 흐름을 보면, DirectX 9는 확실히 그 방향을 굳힌 버전이었다. 오늘의 실시간 렌더링 파이프라인을 당연하게 여긴다면, 그 출발선 가운데 하나가 이 시기라고 봐도 무리가 없다.


핵심 정리

DirectX 9.0이 중요했던 이유는 단순히 새 SDK가 나왔기 때문이 아니다. HLSL과 프로그래머블 셰이더 모델이 전면에 등장하면서, 윈도우 게임 개발이 더 본격적인 GPU 프로그래밍 시대로 넘어가는 계기가 되었기 때문이다.

당시 개발자들이 “다시 공부해야 한다”고 느꼈던 것도 당연했다. API 하나를 더 배우는 수준이 아니라, 그래픽을 만드는 사고방식 자체가 바뀌는 시기였기 때문이다.

참고 자료

← 목록으로
Related

함께 읽으면 좋은 글

Unreal EngineDirectX렌더링
언리얼 엔진을 쓴다면 DirectX를 꼭 배워야 할까

언리얼 엔진만으로도 게임을 만들 수 있는데 굳이 DirectX를 공부해야 할까? 두 기술의 관계를 정확히 이해하고, 언제 DirectX 지식이 필요한지, 어떤 순서로 학습하는 것이 현실적인지 정리한다.

MMORPG서버 구조관심 범위
MMORPG 서버에서 ‘방’보다 중요한 것은 누구에게 무엇을 보여 줄지 정하는 일이다

MMORPG 서버 설계의 진짜 문제는 ‘방을 몇 개로 나눌까’가 아니라 ‘각 플레이어에게 지금 무엇이 relevant한가’를 어떻게 싸게 계산하느냐다. 거리 기반 필터링과 공간 분할 같은 interest management가 그래서 중요하다. 좋은 서버는 많이 보내는 구조가 아니라 ‘어떻게 덜 보내도 충분하게 만들까’를 푸는 구조에 가깝다는 점을 정리한다.

게임 개발데이터베이스트랜잭션
온라인 게임에서 트랜잭션을 모르면 왜 아이템과 재화 버그가 반복되는가

온라인 게임에서 반복되는 아이템 복사·재화 누락·거래 절반 반영 버그의 공통 원인은 대개 ‘여러 변경이 한 묶음으로 처리되지 않은 것’이다. 트랜잭션은 이론 시간의 용어가 아니라 이런 절반만 성공한 상태를 막기 위한 기본 장치다. ACID 암기보다 ‘무엇과 무엇이 반드시 함께 성공해야 하는가’를 정하는 일이 더 실무적이라는 점을 정리한다.