dx11 포팅 프로젝트 – uv애니, 빌보드 오브젝트, 알파처리

어제 아침부터 오후까지 코드를 짜서 uv애니를 처리하고 나서 빌보드 오브젝트를 처리했다. 모자란 잠을 보충하고 장보러 나갔다 들어와서 새벽부터 운동 시작. 새벽 5시경까지 발차기1000번 푸쉬업 1000번의 기본 수련을 완료. 그대로 잘까 하다가 잠도 안오고 해서 알파블랜딩 코드까지 완성지으려고 PC앞에 앉았다. 몇 줄 코딩이면 충분할줄 알았는데..이런 시봉. 결국 밤샜다. 아무리 해도 텍스쳐의 알파성분이 1로만 나왔다. 블랜딩 상태 … More dx11 포팅 프로젝트 – uv애니, 빌보드 오브젝트, 알파처리

dx11 필드처리-(타일텍스쳐*알파맵*라이트맵)

오전에 5시간 정도 작업해서 필드 지오메트리쪽은 처리해놓고 퍼질러 잤다. 오후 5시쯤부터 4시간 정도 작업해서 텍스쳐링까지 일단 완료했다. hlsl코드는 몇 분만에 후딱 작성했는데 dx11의 알파블랜딩 체계를 몰라서 애먹었다. 하다보니 dx11쪽이…인터페이스 체계가 더 일관된거 같기도 하다. 아무래도 dx9는 고정파이프라인과 쉐이더 파이프라인이 공존하다보니 깔끔함과는 거리가 멀었던것 같다. uv애니 구현해놓고 코드 정리좀 한 다음 2D개체 처리로 넘어가야겠다.

dx11 필드처리(와이어프레임모드)

몇 일간 계속 퍼질러 자고 놀러다니느라 상당히 늦어졌다. 필드쪽은 예전에 작업할때도 워낙 복잡하게 짰던 부분이라 포팅이 쉽지 않기도 했다. 과거에는 인덱스 버퍼와 버텍스 버퍼의 생성을 최대한 줄이기 위해 별별 짓을 다 했다. 그 덕에 꽤 복잡한 리소스 관리체계를 갖게 되었는데, 이제 dx11버젼을 만드는 마당에 굳이 그런 기능들은 필요없을것 같다. 드라이버도 충분히 안정적이고 비디오메모리도 충분하니까. 그래서 … More dx11 필드처리(와이어프레임모드)

dx11 라이트맵 처리

dx11의 리소스 관리 체계를 이해하지 못해서 삽질한게 30%. 사소한 코딩 실수를 눈치채지 못하고 삽질한게 50%. 귀찮아서 퍼질러졌던게 20%. 해서 라이트맵 매쉬 처리가 늦어졌다. 하여간 우여곡절 끝에 dx11버젼의 엔진에도 라이트맵 처리 코드를 집어넣었다. 적어도 그림자와 포스트 이펙트 정도까진 2월달 가기 전에 다 쑤셔넣는게 목표인데 잘 되려나… 좌측이 DX9엔진, 우측이 DX11엔진.

회사 관두고 나서 알게 된 버그 하나

전에 회사에서 ‘프로젝트 엡실론’ 알파테스트를 세번 하는 동안 유져들로부터 날라온 덤프중에 정말 죽어도 모르겠다 싶은 힙크래시 관련 덤프가 있었다. 맵 로딩중에 힙이 크래시하는 현상이었는데 186번의 주간빌드를 진행하면서 퇴사하는 그 날까지 원인을 밝히지 못했던 딱 한개의 버그였다. 3차 알파가 끝나고 한달이 지날때까지도 그 버그를 잡으려고 별 쇼를 다 했었다. Application Verifier에서 페이지힙 켜놓고 맵 체인지를 3000번씩 … More 회사 관두고 나서 알게 된 버그 하나

dx11 텍스쳐링

백수가 되니 더 바쁘다. 신경 쓰지 못했던 잡무들을 처리하느라, 사람 만나느라 바쁘다. 최근에 8년째 타는 내 쏘렌토 차량의 클러치쪽에 문제가 생겨서 이거 수리하느라도 시간과 정신 에너지를 꽤 소모했다. 여튼 오늘, 아니 어제부로 차량 수리까지 완료했기 때문에 간만에 코딩에 전념할 여유를 얻었다. 텍스쳐매니져와 매터리얼 매니져는 그 동안 커피숍에서 조금씩 포팅해서 넣었다. hlsl코드와 기타 자잘한 코드를 오늘 … More dx11 텍스쳐링

dx11 스키닝

그제와 어제 밤을 꼴딱 새가며 삽질을 한 덕에 이젠 별 두려움 없이 DX11을 사용할 수 있게 된 것 같다. 커피숍에서 DX11관련 첫번째 포스팅을 하고 스키닝 처리용 HLSLl코드만 작성해놨다. 친구랑 노닥거리다가 새벽2시쯤 집에 들어와서 나머지 코드를 작성했다. 버텍스포맷때문에 약간 삽질을 하긴 했지만 비교적 깔끔하게 스키닝 처리를 완료했다. 근데 정말 자료 너무 없다. 국내에선 DX11은 고사하고 DX10자료도 … More dx11 스키닝

dx11 첫 걸음

아이폰용 뭐를 만들어보려다가 불편한 맥os, 불편한 xcode, 아스트랄한 ObjectiveC가 나를 충격과 공포로 몰아넣기에 이내 포기했다. 안그래도 DX11을 학습할것이냐 아이폰 프로그래밍을 학습할것이냐 고민했었는데 아이폰을 포기했으므로 당연히 DX11이다. 지금껏 개발한 엔진을 DX11버젼으로 포팅하기로 결정. 기존 엔진에서 DX9에 의존적인 렌더러DLL을 DX11버젼과 DX9버젼 두개로 유지하기로 했다. 인터페이스는 그대로 유지하되 DLL만 교체하면 어느쪽이든 대응할 수 있도록. DX11 튜토리얼을 보면서 따라가는건 … More dx11 첫 걸음

팀장님 팀장님 그 옛날 우리 팀장님.

내가 게임회사에 입사한 것은 99년 7월이었고 첫 프로젝트는 코룸 외전이었다. 요새 사람들이 보면 무척이나 생소하게 여길 패키지 RPG게임이었다. 그 당시 우리 프로그램 팀장 K님은 프로그램 팀장이기도 하고 실질적인 프로젝트 리더이기도 했다. 무척 죄송하게도 그 당시에는 K팀장님을 과소평가했던거 같다. 그런데 11년이 지난 지금 과거를 되돌아보면 그 분이 참 대단한 분이었다고 생각한다. 프로그래밍 기술적인것보다도 프로젝트 리더로서 훌륭하게 … More 팀장님 팀장님 그 옛날 우리 팀장님.

DoF 결론

착란원 시뮬레이션 방식을 사용하니 많이 뭉개지면 이미지가 깨진다. 백통 렌즈 쓸때의 그 부드러운 느낌이 아니야. 하여간 안이뻐서 포기 블러링 이미지 합성 방식은 뛰어다닐때 지글거린다. 기본적으로 게임상에선 두 방식 모두 그닥 쓸데가 없다. 크로스헤어에 걸리는 놈들한테 포커스를 맞추게 해봤는데 정신만 사납다. 결론. 1.블러링 방식을 사용한다. 2.포커스는 주인공에 맞춘다. 3.비교적 원경에 대해서만 DoF가 적용되는것처럼 보이도록 상수를 조절한다. … More DoF 결론