2022.01.09 14:32
안녕하세요. 저는 Qwilight 이라는 리듬 게임을 개발하고 있는 사람입니다. 이 게임은 특이하게도 (개발 히스토리상 어쩔 수 없게도) WPF를 베이스로 게임 플레이 스크린은 Win2D라는 Direct2D 라이브러리를 통하여 렌더링하고 있습니다.
곡 선택 (WPF) => 게임 플레이 (Win2D) => 게임 결과 (Win2D) => 곡 선택 (WPF) => ...
그런데, 반디캠의 게임 캡처가 이런 구조의 게임을 캡처할때 오동작하는 것 같습니다. WPF 상태일때 캡처를 시작하고 Win2D로 넘어가서 게임 플레이를 한 다음에 다시 WPF로 돌아오고나서 캡처를 중단하니 Win2D가 렌더링한 부분은 전혀 캡처가 되지 않습니다.
원인은 WPF에서 Win2D를 구동하려면 XAML Islands를 통하여 구동해야되는데 이 과정에서 WPF와 Win2D의 HWND가 달라지고 둘은 서로 다른 DirectX Context (WPF: DX9, Win2D: DX11)를 가지므로 발생하는 것 같습니다.
처음에는 게임의 어쩔 수 없는 한계로 넘어가려고 했으나 같은 게임 캡처 방식 (후킹)을 사용하는 XBOX Game Capture, GeForce Experience, Xsplit 등은 문제가 없어서 한번 문의를 드리게 되었습니다. (반면 OBS는 반디캠과 비슷한 증상이 발생합니다)
예제 프로그램 저장소는 다음과 같습니다. https://github.com/pcfulife/WPFwithWin2D
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
11602 | 반디캠으로 녹화가능한 것들 [23] | 반디소프트 | 2009.07.17 | 850914 |
11601 | 문화상품권, 게임상품권 결제 추가 [8] | 반디소프트 | 2011.05.31 | 406556 |
11600 | 외장 그래픽 장착된 노트북에서... [8] | 구매자 | 2015.05.29 | 206750 |
11599 | 엘카토카드 4k60 캡쳐 질문드립니다 [1] | peace | 2019.01.29 | 132243 |
11598 | 오디오 인터페이스로 기타 엠프 시뮬레이터 녹음하는 것 관련해서 질문드립니다. [1] | 잠든개 | 2018.02.04 | 112984 |
11597 | 반디캠을 무료로 다운 받을 수 있다는데 어떻게 된거예요? [5] | 스유군 | 2011.05.11 | 74425 |
11596 | 반디소프트 MPEG-1 디코더 [1] | 민디 | 2011.11.15 | 67290 |
11595 | 무료녹화시간 [1] | H_star | 2017.06.25 | 63260 |
11594 | [질문] 구매 후 시리얼 잃어 버렸을 경우 [2] | wassup | 2009.09.02 | 62747 |
11593 | 소리안함체크 때문에 오디오 녹음 [2] | ㅇㅇ | 2010.05.16 | 61037 |
11592 | aqua player 녹화가 안되나요? [1] | 오헌진 | 2011.02.12 | 57985 |
11591 | 반디캠 사이트 로고는 너무 했네요. [3] | 사키 | 2011.05.06 | 57082 |
11590 | 반디캠 녹화 후 재생이 안돼요. [1] | 마마 | 2011.08.10 | 54718 |
11589 | 제품 시리얼번호확인요청 [1] | 정완균 | 2019.07.01 | 54658 |
11588 | 반디캠 왼쪽상단에 fps 숫자가 안뜨네요 . (평가품) [1] | 샬라라라 | 2011.05.09 | 54459 |
11587 | 저장방법 | 휴니 | 2011.10.18 | 52645 |
11586 | 추가오디오장치 [1] | asd123 | 2011.08.07 | 50471 |
11585 | directx/opengl 창 녹화시 녹화시작 버튼이 꺼져있어요.(SKYHD CaptureX HDMI를 이용) [1] | 존스탁스 | 2012.12.19 | 48927 |
11584 | 제품 설명에 보니 [1] | k16 | 2009.05.13 | 48085 |
11583 | 일시정지를 할수있나요? [1] | 일시정지 | 2011.05.12 | 46975 |
안녕하세요.
반디캠컴퍼니입니다.
해당 내용을 개발팀에 전달하였습니다.
감사합니다.