GSI

사용자 삽입 이미지

DirectX 코드를 사용해서 텍스처를 연결시켰다.
기존 코드 : http://www.iamgsi.com/entry/DirecrX-Managed-Create-a-Device-C
를 조금더 확장 시켰다.
이벤트 함수 OnResetDevice도 추가 했으며,
여기서 봐야 할 것은 윈도우 사이즈가 변할때 텍스처가 검정색으로 나올때가 있다.
이때 텍스처 함수 부분은 Managed로 해야 하는지는 잘 모르겠지만.
아래와 같은 인자를 사용하게 되는데 Managed를 할때는 몇개의 인자가 더 필요 하더라.

아래의 함수를 사이즈 변할때 호출해줘야 제대로 나오게 된다.
private void directXBaseView1_OnResetDevice(object sender, DeviceEventArgs e)
{
     ...
    if (texture != null)
        texture.Dispose();  // 이 코드를 넣지 않으면 메모리가 계속 누적된다. Texture가 계속해서 생성이 되는거 같다.
    texture = TextureLoader.FromFile(dev, @"d:\bbbb.jpg");
}

나머지는 타이머를 사용해서 화면은 계속해서 리프레쉬 해주었다.

Posted by gsi
: