From 11642fd3a218185187bb356f2f446313694d4be4 Mon Sep 17 00:00:00 2001 From: Yuri Kunde Schlesner Date: Thu, 28 Aug 2014 15:21:54 -0300 Subject: Rework OpenGL renderer. The OpenGL renderer has been revised, with the following changes: - Initialization and rendering have been refactored to reduce the number of redundant objects used. - Framebuffer rotation is now done directly, using texture mapping. - Vertex coordinates are now given in pixels, and the projection matrix isn't hardcoded anymore. --- src/video_core/video_core.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/video_core/video_core.h') diff --git a/src/video_core/video_core.h b/src/video_core/video_core.h index 5e8129b5a..609aac513 100644 --- a/src/video_core/video_core.h +++ b/src/video_core/video_core.h @@ -17,6 +17,10 @@ namespace VideoCore { // 3DS Video Constants // ------------------- +// NOTE: The LCDs actually rotate the image 90 degrees when displaying. Because of that the +// framebuffers in video memory are stored in column-major order and rendered sideways, causing +// the widths and heights of the framebuffers read by the LCD to be switched compared to the +// heights and widths of the screens listed here. static const int kScreenTopWidth = 400; ///< 3DS top screen width static const int kScreenTopHeight = 240; ///< 3DS top screen height static const int kScreenBottomWidth = 320; ///< 3DS bottom screen width -- cgit v1.2.3