Massive refactoring of xenia::ui and GL swap behavior.

This seems to dramatically improve most games (especially with
--vsync=false), though it may cause swap issues with others.
New code should be easier to port, and enables elemental-forms to be
drawn for any emulator UI.
This commit is contained in:
Ben Vanik
2015-07-12 22:03:47 -07:00
parent e69c7b00a8
commit 15c17459be
61 changed files with 1994 additions and 2623 deletions

View File

@@ -165,22 +165,18 @@
<ClCompile Include="src\xenia\kernel\xobject.cc" />
<ClCompile Include="src\xenia\memory.cc" />
<ClCompile Include="src\xenia\profiling.cc" />
<ClCompile Include="src\xenia\ui\control.cc" />
<ClCompile Include="src\xenia\ui\elemental_control.cc" />
<ClCompile Include="src\xenia\ui\file_picker_win.cc" />
<ClCompile Include="src\xenia\ui\gl\blitter.cc" />
<ClCompile Include="src\xenia\ui\gl\circular_buffer.cc" />
<ClCompile Include="src\xenia\ui\gl\gl4_elemental_renderer.cc" />
<ClCompile Include="src\xenia\ui\gl\gl_context.cc" />
<ClCompile Include="src\xenia\ui\gl\gl_profiler_display.cc" />
<ClCompile Include="src\xenia\ui\gl\wgl_control.cc" />
<ClCompile Include="src\xenia\ui\gl\wgl_elemental_control.cc" />
<ClCompile Include="src\xenia\ui\main_window.cc" />
<ClCompile Include="src\xenia\ui\graphics_context.cc" />
<ClCompile Include="src\xenia\ui\loop.cc" />
<ClCompile Include="src\xenia\ui\loop_win.cc" />
<ClCompile Include="src\xenia\ui\window.cc" />
<ClCompile Include="src\xenia\ui\menu_item.cc" />
<ClCompile Include="src\xenia\ui\win32\win32_control.cc" />
<ClCompile Include="src\xenia\ui\win32\win32_file_picker.cc" />
<ClCompile Include="src\xenia\ui\win32\win32_loop.cc" />
<ClCompile Include="src\xenia\ui\win32\win32_menu_item.cc" />
<ClCompile Include="src\xenia\ui\win32\win32_window.cc" />
<ClCompile Include="src\xenia\ui\window_win.cc" />
<ClCompile Include="src\xenia\vfs\device.cc" />
<ClCompile Include="src\xenia\vfs\devices\disc_image_device.cc" />
<ClCompile Include="src\xenia\vfs\devices\disc_image_entry.cc" />
@@ -396,8 +392,6 @@
<ClInclude Include="src\xenia\kernel\xobject.h" />
<ClInclude Include="src\xenia\memory.h" />
<ClInclude Include="src\xenia\profiling.h" />
<ClInclude Include="src\xenia\ui\control.h" />
<ClInclude Include="src\xenia\ui\elemental_control.h" />
<ClInclude Include="src\xenia\ui\file_picker.h" />
<ClInclude Include="src\xenia\ui\gl\blitter.h" />
<ClInclude Include="src\xenia\ui\gl\circular_buffer.h" />
@@ -405,19 +399,13 @@
<ClInclude Include="src\xenia\ui\gl\gl4_elemental_renderer.h" />
<ClInclude Include="src\xenia\ui\gl\gl_context.h" />
<ClInclude Include="src\xenia\ui\gl\gl_profiler_display.h" />
<ClInclude Include="src\xenia\ui\gl\wgl_control.h" />
<ClInclude Include="src\xenia\ui\gl\wgl_elemental_control.h" />
<ClInclude Include="src\xenia\ui\graphics_context.h" />
<ClInclude Include="src\xenia\ui\loop.h" />
<ClInclude Include="src\xenia\ui\main_window.h" />
<ClInclude Include="src\xenia\ui\loop_win.h" />
<ClInclude Include="src\xenia\ui\menu_item.h" />
<ClInclude Include="src\xenia\ui\platform.h" />
<ClInclude Include="src\xenia\ui\ui_event.h" />
<ClInclude Include="src\xenia\ui\win32\win32_control.h" />
<ClInclude Include="src\xenia\ui\win32\win32_file_picker.h" />
<ClInclude Include="src\xenia\ui\win32\win32_loop.h" />
<ClInclude Include="src\xenia\ui\win32\win32_menu_item.h" />
<ClInclude Include="src\xenia\ui\win32\win32_window.h" />
<ClInclude Include="src\xenia\ui\window.h" />
<ClInclude Include="src\xenia\ui\window_win.h" />
<ClInclude Include="src\xenia\vfs\device.h" />
<ClInclude Include="src\xenia\vfs\devices\disc_image_device.h" />
<ClInclude Include="src\xenia\vfs\devices\disc_image_entry.h" />