전체 화면 모드가 아닌 경우 GameWindow
객체에서 Size
속성을 호출하기 만하면 창의 크기를 조정할 수 있습니다. WindowState
에 대해 이미 알고 있습니다.
가장 중요한 작업은 GameWindow
클래스의 OnResize
메소드를 덮어 쓰는 것입니다. 전체 화면 모드로 설정하는 것을 포함하여 게임 창의 크기가 조정되면 자동으로 호출됩니다. 거기에서 뷰포트를 다시 초기화 할 수 있습니다.
예를 들어 현재 테스트중인 프로젝트에서 다음 코드는 창 크기를 조정하거나 전체 화면 모드로 이동할 때마다보기 포트의 크기를 올바르게 조정합니다. 전체 화면 모드로 전환 할 때 해상도 전환을 사용하지는 않지만 완벽하게 작동 할 것이라고 생각합니다. 아래의 예에서 yoursizehere
은 640x640이고 GL.Ortho 메서드를 사용하여 GameWindow.ClientSize
에 맞게 조절됩니다. (나는 그 문제에 대한 OpenTK (및 OpenGL에서 초보자이야) 그래서 난 아직도 자신을 배울 수있는 톤을 가지고 -하지만 아래 나를 위해 작동)
protected override void OnResize(EventArgs e)
{
base.OnResize(e);
GL.Viewport(this.ClientRectangle);
GL.MatrixMode(MatrixMode.Projection);
GL.LoadIdentity();
GL.Ortho(0, yoursizehere.Width, yoursizehere.Height, 0, -1, 0);
}
위의 예는 차원 뷰 포트입니다 내가 현재 실험하고있는 것 ... 2 차원에서 OpenGL 개념으로 파악하기에 충분한 문제가있는데도 3 가지가 있습니다!
희망이 있습니다.
GameWindow를 만들 때 창을 설정하는 방법을 알고 있습니다. 게임이 실행되는 동안 해상도와 전체 화면 상태를 변경하는 방법을 알아야합니다. – KobraX22
@ KobraX22. 아, 죄송합니다, 나는 당신의 질문을 오해했습니다. OpenTK 포럼을 사용해 보셨습니까? – kvark
지금 살펴 보겠습니다. – KobraX22