summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--dist/qt_themes/qdarkstyle/style.qss222
-rw-r--r--src/core/hle/service/sockets/bsd.cpp48
-rw-r--r--src/core/hle/service/sockets/bsd.h4
-rw-r--r--src/video_core/renderer_opengl/gl_shader_decompiler.cpp1
-rw-r--r--src/video_core/renderer_opengl/gl_texture_cache.cpp40
-rw-r--r--src/video_core/texture_cache/surface_base.cpp2
6 files changed, 194 insertions, 123 deletions
diff --git a/dist/qt_themes/qdarkstyle/style.qss b/dist/qt_themes/qdarkstyle/style.qss
index a3983b27e..9814b06dd 100644
--- a/dist/qt_themes/qdarkstyle/style.qss
+++ b/dist/qt_themes/qdarkstyle/style.qss
@@ -2,7 +2,8 @@ QToolTip {
border: 1px solid #76797C;
background-color: #5A7566;
color: white;
- padding: 0px; /*remove padding, for fix combobox tooltip.*/
+ /*remove padding, for fix combobox tooltip.*/
+ padding: 0;
opacity: 200;
}
@@ -13,7 +14,7 @@ QWidget {
selection-color: #eff0f1;
background-clip: border;
border-image: none;
- border: 0px transparent black;
+ border: 0;
outline: 0;
}
@@ -27,10 +28,10 @@ QWidget:item:selected {
}
QCheckBox {
- spacing: 5px;
+ spacing: 6px;
outline: none;
color: #eff0f1;
- margin-bottom: 2px;
+ margin: 0 2px 1px 0;
}
QCheckBox:disabled {
@@ -163,7 +164,7 @@ QMenuBar::item:selected {
}
QMenuBar::item:pressed {
- border: 1px solid #76797C;
+ border: 1px solid #18465d;
background-color: #3daee9;
color: #eff0f1;
margin-bottom: -1px;
@@ -171,9 +172,9 @@ QMenuBar::item:pressed {
}
QMenu {
- border: 1px solid #76797C;
+ border: 1px solid #434242;
+ padding: 2px;
color: #eff0f1;
- margin: 2px;
}
QMenu::icon {
@@ -190,11 +191,21 @@ QMenu::item:selected {
color: #eff0f1;
}
-QMenu::separator {
- height: 2px;
- background: #76797C;
- margin-left: 10px;
- margin-right: 5px;
+QMenu::item:disabled {
+ color: #54575B;
+}
+
+QMenu::item:disabled:hover,
+QMenu::item:disabled:selected {
+ background-color: #393e43;
+ color: #666;
+}
+
+QMenu::separator,
+QMenuBar::separator {
+ height: 1px;
+ background-color: #54575B;
+ margin: 2px 4px 2px 40px;
}
QMenu::indicator {
@@ -203,10 +214,7 @@ QMenu::indicator {
height: 18px;
}
-
-/* non-exclusive indicator = check box style indicator
- (see QActionGroup::setExclusive) */
-
+/* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */
QMenu::indicator:non-exclusive:unchecked {
image: url(:/qss_icons/rc/checkbox_unchecked.png);
}
@@ -223,9 +231,7 @@ QMenu::indicator:non-exclusive:checked:selected {
image: url(:/qss_icons/rc/checkbox_checked_disabled.png);
}
-
/* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */
-
QMenu::indicator:exclusive:unchecked {
image: url(:/qss_icons/rc/radio_unchecked.png);
}
@@ -243,12 +249,12 @@ QMenu::indicator:exclusive:checked:selected {
}
QMenu::right-arrow {
- margin: 5px;
+ margin-right: 10px;
image: url(:/qss_icons/rc/right_arrow.png)
}
QWidget:disabled {
- color: #454545;
+ color: #4f515b;
background-color: #31363b;
}
@@ -259,23 +265,30 @@ QAbstractItemView {
border-radius: 2px;
}
-QWidget:focus,
-QMenuBar:focus {
+QAbstractItemView:disabled,
+QAbstractItemView:read-only {
+ alternate-background-color: #232629;
+}
+
+QWidget:focus {
border: 1px solid #3daee9;
}
QTabWidget:focus,
QCheckBox:focus,
QRadioButton:focus,
-QSlider:focus {
+QSlider:focus,
+QTreeView:focus,
+QMenu:focus,
+QMenuBar:focus,
+QTabBar:focus {
border: none;
}
QLineEdit {
background-color: #232629;
padding: 5px;
- border-style: solid;
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
border-radius: 2px;
color: #eff0f1;
}
@@ -285,9 +298,10 @@ QAbstractItemView QLineEdit {
}
QGroupBox {
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
border-radius: 2px;
- margin-top: 20px;
+ margin-top: 12px;
+ padding-top: 2px;
}
QGroupBox::title {
@@ -295,12 +309,12 @@ QGroupBox::title {
subcontrol-position: top center;
padding-left: 10px;
padding-right: 10px;
- padding-top: 10px;
+ padding-top: 2px;
}
QAbstractScrollArea {
border-radius: 2px;
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
background-color: transparent;
}
@@ -319,7 +333,7 @@ QScrollBar::handle:horizontal {
}
QScrollBar::add-line:horizontal {
- margin: 0px 3px 0px 3px;
+ margin: 0 3px;
border-image: url(:/qss_icons/rc/right_arrow_disabled.png);
width: 10px;
height: 10px;
@@ -328,7 +342,7 @@ QScrollBar::add-line:horizontal {
}
QScrollBar::sub-line:horizontal {
- margin: 0px 3px 0px 3px;
+ margin: 0 3px;
border-image: url(:/qss_icons/rc/left_arrow_disabled.png);
height: 10px;
width: 10px;
@@ -379,7 +393,7 @@ QScrollBar::handle:vertical {
}
QScrollBar::sub-line:vertical {
- margin: 3px 0px 3px 0px;
+ margin: 3px 0;
border-image: url(:/qss_icons/rc/up_arrow_disabled.png);
height: 10px;
width: 10px;
@@ -388,7 +402,7 @@ QScrollBar::sub-line:vertical {
}
QScrollBar::add-line:vertical {
- margin: 3px 0px 3px 0px;
+ margin: 3px 0;
border-image: url(:/qss_icons/rc/down_arrow_disabled.png);
height: 10px;
width: 10px;
@@ -427,15 +441,14 @@ QScrollBar::sub-page:vertical {
QTextEdit {
background-color: #232629;
color: #eff0f1;
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
}
QPlainTextEdit {
background-color: #232629;
- ;
color: #eff0f1;
border-radius: 2px;
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
}
QHeaderView::section {
@@ -467,15 +480,6 @@ QMainWindow::separator:hover {
spacing: 2px;
}
-QMenu::separator {
- height: 1px;
- background-color: #76797C;
- color: white;
- padding-left: 4px;
- margin-left: 10px;
- margin-right: 5px;
-}
-
QFrame {
border-radius: 2px;
border: 1px solid #76797C;
@@ -518,25 +522,19 @@ QToolButton#qt_toolbar_ext_button {
QPushButton {
color: #eff0f1;
- background-color: #31363b;
border-width: 1px;
- border-color: #76797C;
+ border-color: #54575B;
border-style: solid;
- padding: 5px;
+ padding: 6px 4px;
border-radius: 2px;
outline: none;
+ min-width: 100px;
+ background-color: #232629;
}
QPushButton:disabled {
background-color: #31363b;
- border-width: 1px;
border-color: #454545;
- border-style: solid;
- padding-top: 5px;
- padding-bottom: 5px;
- padding-left: 10px;
- padding-right: 10px;
- border-radius: 2px;
color: #454545;
}
@@ -553,11 +551,11 @@ QPushButton:pressed {
QComboBox {
selection-background-color: #3daee9;
- border-style: solid;
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
border-radius: 2px;
- padding: 5px;
+ padding: 4px 6px;
min-width: 75px;
+ background-color: #232629;
}
QPushButton:checked {
@@ -571,8 +569,7 @@ QAbstractSpinBox:hover,
QLineEdit:hover,
QTextEdit:hover,
QPlainTextEdit:hover,
-QAbstractView:hover,
-QTreeView:hover {
+QAbstractView:hover {
border: 1px solid #3daee9;
color: #eff0f1;
}
@@ -591,6 +588,7 @@ QComboBox QAbstractItemView {
QComboBox::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
+ left: -6px;
width: 15px;
border-left-width: 0px;
border-left-color: darkgray;
@@ -610,8 +608,8 @@ QComboBox::down-arrow:focus {
}
QAbstractSpinBox {
- padding: 5px;
- border: 1px solid #76797C;
+ padding: 4px 6px;
+ border: 1px solid #54575B;
background-color: #232629;
color: #eff0f1;
border-radius: 2px;
@@ -622,12 +620,14 @@ QAbstractSpinBox:up-button {
background-color: transparent;
subcontrol-origin: border;
subcontrol-position: center right;
+ left: -6px;
}
QAbstractSpinBox:down-button {
background-color: transparent;
subcontrol-origin: border;
subcontrol-position: center left;
+ right: -6px;
}
QAbstractSpinBox::up-arrow,
@@ -654,22 +654,27 @@ QAbstractSpinBox::down-arrow:hover {
image: url(:/qss_icons/rc/down_arrow.png);
}
-QLabel {
- border: 0px solid black;
+QLabel,
+QTabWidget {
+ border: 0;
}
QTabWidget {
- border: 0px transparent black;
+ padding-top: 1px;
}
QTabWidget::pane {
border: 1px solid #76797C;
padding: 5px;
- margin: 0px;
+ position: absolute;
+ top: -1px;
+ border-top-right-radius: 2px;
+ border-bottom-right-radius: 2px;
+ border-bottom-left-radius: 2px;
}
QTabWidget::tab-bar {
- /* left: 5px; move to the right by 5px */
+ overflow: visible;
}
QTabBar {
@@ -677,10 +682,6 @@ QTabBar {
border-radius: 3px;
}
-QTabBar:focus {
- border: 0px transparent black;
-}
-
QTabBar::close-button {
image: url(:/qss_icons/rc/close.png);
background: transparent;
@@ -696,36 +697,33 @@ QTabBar::close-button:pressed {
background: transparent;
}
-
/* TOP TABS */
-
QTabBar::tab:top {
color: #eff0f1;
- border: 1px solid #76797C;
- border-bottom: 2px transparent;
- background-color: #31363b;
- padding: 4px 16px 2px;
- min-width: 38px;
+ border: 1px solid #54575B;
+ background-color: #2a2f33;
+ padding: 4px 16px 5px;
+ min-width: 36px;
border-top-left-radius: 2px;
border-top-right-radius: 2px;
}
QTabBar::tab:top:selected {
- color: #eff0f1;
- background-color: #54575B;
- border: 1px solid #76797C;
- border-bottom: 2px solid #3daee9;
- border-top-left-radius: 2px;
- border-top-right-radius: 2px;
+ border-color: #76797C;
+ background-color: #31363b;
+ border-bottom-color: #31363b;
+}
+
+QTabBar::tab:top:!selected {
+ margin-top: 1px;
+ border-bottom-color: #76797C;
}
QTabBar::tab:top:!selected:hover {
background-color: #3daee9;
}
-
/* BOTTOM TABS */
-
QTabBar::tab:bottom {
color: #eff0f1;
border: 1px solid #76797C;
@@ -750,9 +748,7 @@ QTabBar::tab:bottom:!selected:hover {
background-color: #3daee9;
}
-
/* LEFT TABS */
-
QTabBar::tab:left {
color: #eff0f1;
border: 1px solid #76797C;
@@ -777,9 +773,7 @@ QTabBar::tab:left:!selected:hover {
background-color: #3daee9;
}
-
/* RIGHT TABS */
-
QTabBar::tab:right {
color: #eff0f1;
border: 1px solid #76797C;
@@ -847,7 +841,7 @@ QDockWidget::float-button:pressed {
QTreeView,
QListView {
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
background-color: #232629;
}
@@ -978,8 +972,8 @@ QSlider::handle:vertical {
}
QToolButton {
- background-color: transparent;
- border: 1px transparent #76797C;
+ background-color: #232629;
+ border: 1px solid #54575B;
border-radius: 2px;
margin: 3px;
padding: 5px;
@@ -988,7 +982,6 @@ QToolButton {
QToolButton[popupMode="1"] {
/* only for MenuButtonPopup */
padding-right: 20px;
- /* make way for the popup button */
border: 1px #76797C;
border-radius: 5px;
}
@@ -996,7 +989,6 @@ QToolButton[popupMode="1"] {
QToolButton[popupMode="2"] {
/* only for InstantPopup */
padding-right: 10px;
- /* make way for the popup button */
border: 1px #76797C;
}
@@ -1015,19 +1007,14 @@ QToolButton::menu-button:pressed {
padding: 5px;
}
-
/* the subcontrol below is used only in the InstantPopup or DelayedPopup mode */
-
QToolButton::menu-indicator {
image: url(:/qss_icons/rc/down_arrow.png);
top: -7px;
left: -2px;
- /* shift it a bit */
}
-
/* the subcontrols below are used only in the MenuButtonPopup mode */
-
QToolButton::menu-button {
border: 1px transparent #76797C;
border-top-right-radius: 6px;
@@ -1052,14 +1039,22 @@ QPushButton::menu-indicator {
}
QTableView {
- border: 1px solid #76797C;
+ border: 1px solid #54575B;
gridline-color: #31363b;
background-color: #232629;
}
+QTreeView:disabled {
+ background-color: #1f2225;
+}
+
QTableView,
QHeaderView {
- border-radius: 0px;
+ border-radius: 0;
+}
+
+QListView:focus {
+ border-color: #54575B;
}
QTableView::item:pressed,
@@ -1088,7 +1083,7 @@ QHeaderView::section {
background-color: #232629;
color: #eff0f1;
padding: 0 5px;
- border: 1px solid #403F3F;
+ border: 1px solid #434242;
border-bottom: 0;
border-radius: 0px;
text-align: center;
@@ -1118,9 +1113,7 @@ QHeaderView::section:checked {
background-color: #334e5e;
}
-
-/* style the sort indicator */
-
+/* sort indicator */
QHeaderView::down-arrow {
image: url(:/qss_icons/rc/down_arrow.png);
}
@@ -1150,14 +1143,13 @@ QToolBox::tab {
}
QToolBox::tab:selected {
- /* italicize selected tabs */
font: italic;
background-color: #31363b;
border-color: #3daee9;
}
QStatusBar::item {
- border: 0px transparent dark;
+ border: 0;
}
QFrame[height="3"],
@@ -1194,7 +1186,6 @@ QProgressBar::chunk {
QDateEdit {
selection-background-color: #3daee9;
- border-style: solid;
border: 1px solid #3375A3;
border-radius: 2px;
padding: 1px;
@@ -1218,7 +1209,7 @@ QDateEdit::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 15px;
- border-left-width: 0px;
+ border-left-width: 0;
border-left-color: darkgray;
border-left-style: solid;
border-top-right-radius: 3px;
@@ -1234,3 +1225,14 @@ QDateEdit::down-arrow:hover,
QDateEdit::down-arrow:focus {
image: url(:/qss_icons/rc/down_arrow.png);
}
+
+QComboBox:disabled,
+QPushButton:disabled,
+QAbstractSpinBox:disabled,
+QDateEdit:disabled,
+QLineEdit:disabled,
+QTextEdit:disabled,
+QToolButton:disabled,
+QPlainTextEdit:disabled {
+ background-color: #2b2e31;
+}
diff --git a/src/core/hle/service/sockets/bsd.cpp b/src/core/hle/service/sockets/bsd.cpp
index 884ad173b..f67fab2f9 100644
--- a/src/core/hle/service/sockets/bsd.cpp
+++ b/src/core/hle/service/sockets/bsd.cpp
@@ -42,6 +42,26 @@ void BSD::Socket(Kernel::HLERequestContext& ctx) {
rb.Push<u32>(0); // bsd errno
}
+void BSD::Select(Kernel::HLERequestContext& ctx) {
+ LOG_WARNING(Service, "(STUBBED) called");
+
+ IPC::ResponseBuilder rb{ctx, 4};
+
+ rb.Push(RESULT_SUCCESS);
+ rb.Push<u32>(0); // ret
+ rb.Push<u32>(0); // bsd errno
+}
+
+void BSD::Bind(Kernel::HLERequestContext& ctx) {
+ LOG_WARNING(Service, "(STUBBED) called");
+
+ IPC::ResponseBuilder rb{ctx, 4};
+
+ rb.Push(RESULT_SUCCESS);
+ rb.Push<u32>(0); // ret
+ rb.Push<u32>(0); // bsd errno
+}
+
void BSD::Connect(Kernel::HLERequestContext& ctx) {
LOG_WARNING(Service, "(STUBBED) called");
@@ -52,6 +72,26 @@ void BSD::Connect(Kernel::HLERequestContext& ctx) {
rb.Push<u32>(0); // bsd errno
}
+void BSD::Listen(Kernel::HLERequestContext& ctx) {
+ LOG_WARNING(Service, "(STUBBED) called");
+
+ IPC::ResponseBuilder rb{ctx, 4};
+
+ rb.Push(RESULT_SUCCESS);
+ rb.Push<u32>(0); // ret
+ rb.Push<u32>(0); // bsd errno
+}
+
+void BSD::SetSockOpt(Kernel::HLERequestContext& ctx) {
+ LOG_WARNING(Service, "(STUBBED) called");
+
+ IPC::ResponseBuilder rb{ctx, 4};
+
+ rb.Push(RESULT_SUCCESS);
+ rb.Push<u32>(0); // ret
+ rb.Push<u32>(0); // bsd errno
+}
+
void BSD::SendTo(Kernel::HLERequestContext& ctx) {
LOG_WARNING(Service, "(STUBBED) called");
@@ -80,7 +120,7 @@ BSD::BSD(const char* name) : ServiceFramework(name) {
{2, &BSD::Socket, "Socket"},
{3, nullptr, "SocketExempt"},
{4, nullptr, "Open"},
- {5, nullptr, "Select"},
+ {5, &BSD::Select, "Select"},
{6, nullptr, "Poll"},
{7, nullptr, "Sysctl"},
{8, nullptr, "Recv"},
@@ -88,15 +128,15 @@ BSD::BSD(const char* name) : ServiceFramework(name) {
{10, nullptr, "Send"},
{11, &BSD::SendTo, "SendTo"},
{12, nullptr, "Accept"},
- {13, nullptr, "Bind"},
+ {13, &BSD::Bind, "Bind"},
{14, &BSD::Connect, "Connect"},
{15, nullptr, "GetPeerName"},
{16, nullptr, "GetSockName"},
{17, nullptr, "GetSockOpt"},
- {18, nullptr, "Listen"},
+ {18, &BSD::Listen, "Listen"},
{19, nullptr, "Ioctl"},
{20, nullptr, "Fcntl"},
- {21, nullptr, "SetSockOpt"},
+ {21, &BSD::SetSockOpt, "SetSockOpt"},
{22, nullptr, "Shutdown"},
{23, nullptr, "ShutdownAllSockets"},
{24, nullptr, "Write"},
diff --git a/src/core/hle/service/sockets/bsd.h b/src/core/hle/service/sockets/bsd.h
index 0fe0e65c6..3098e3baf 100644
--- a/src/core/hle/service/sockets/bsd.h
+++ b/src/core/hle/service/sockets/bsd.h
@@ -18,7 +18,11 @@ private:
void RegisterClient(Kernel::HLERequestContext& ctx);
void StartMonitoring(Kernel::HLERequestContext& ctx);
void Socket(Kernel::HLERequestContext& ctx);
+ void Select(Kernel::HLERequestContext& ctx);
+ void Bind(Kernel::HLERequestContext& ctx);
void Connect(Kernel::HLERequestContext& ctx);
+ void Listen(Kernel::HLERequestContext& ctx);
+ void SetSockOpt(Kernel::HLERequestContext& ctx);
void SendTo(Kernel::HLERequestContext& ctx);
void Close(Kernel::HLERequestContext& ctx);
diff --git a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
index 7b2a3a00b..a1ac3d7a9 100644
--- a/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_decompiler.cpp
@@ -1019,7 +1019,6 @@ private:
}
return {{"gl_ViewportIndex", Type::Int}};
case 3:
- UNIMPLEMENTED_MSG("Requires some state changes for gl_PointSize to work in shader");
return {{"gl_PointSize", Type::Float}};
}
return {};
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp
index e95eb069e..d4b81cd87 100644
--- a/src/video_core/renderer_opengl/gl_texture_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp
@@ -176,6 +176,19 @@ GLint GetSwizzleSource(SwizzleSource source) {
return GL_NONE;
}
+GLenum GetComponent(PixelFormat format, bool is_first) {
+ switch (format) {
+ case PixelFormat::Z24S8:
+ case PixelFormat::Z32FS8:
+ return is_first ? GL_DEPTH_COMPONENT : GL_STENCIL_INDEX;
+ case PixelFormat::S8Z24:
+ return is_first ? GL_STENCIL_INDEX : GL_DEPTH_COMPONENT;
+ default:
+ UNREACHABLE();
+ return GL_DEPTH_COMPONENT;
+ }
+}
+
void ApplyTextureDefaults(const SurfaceParams& params, GLuint texture) {
if (params.IsBuffer()) {
return;
@@ -184,7 +197,7 @@ void ApplyTextureDefaults(const SurfaceParams& params, GLuint texture) {
glTextureParameteri(texture, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTextureParameteri(texture, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTextureParameteri(texture, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
- glTextureParameteri(texture, GL_TEXTURE_MAX_LEVEL, params.num_levels - 1);
+ glTextureParameteri(texture, GL_TEXTURE_MAX_LEVEL, static_cast<GLint>(params.num_levels - 1));
if (params.num_levels == 1) {
glTextureParameterf(texture, GL_TEXTURE_LOD_BIAS, 1000.0f);
}
@@ -416,11 +429,21 @@ void CachedSurfaceView::ApplySwizzle(SwizzleSource x_source, SwizzleSource y_sou
if (new_swizzle == swizzle)
return;
swizzle = new_swizzle;
- const std::array<GLint, 4> gl_swizzle = {GetSwizzleSource(x_source), GetSwizzleSource(y_source),
- GetSwizzleSource(z_source),
- GetSwizzleSource(w_source)};
+ const std::array gl_swizzle = {GetSwizzleSource(x_source), GetSwizzleSource(y_source),
+ GetSwizzleSource(z_source), GetSwizzleSource(w_source)};
const GLuint handle = GetTexture();
- glTextureParameteriv(handle, GL_TEXTURE_SWIZZLE_RGBA, gl_swizzle.data());
+ const PixelFormat format = surface.GetSurfaceParams().pixel_format;
+ switch (format) {
+ case PixelFormat::Z24S8:
+ case PixelFormat::Z32FS8:
+ case PixelFormat::S8Z24:
+ glTextureParameteri(handle, GL_DEPTH_STENCIL_TEXTURE_MODE,
+ GetComponent(format, x_source == SwizzleSource::R));
+ break;
+ default:
+ glTextureParameteriv(handle, GL_TEXTURE_SWIZZLE_RGBA, gl_swizzle.data());
+ break;
+ }
}
OGLTextureView CachedSurfaceView::CreateTextureView() const {
@@ -529,8 +552,11 @@ void TextureCacheOpenGL::ImageBlit(View& src_view, View& dst_view,
const Common::Rectangle<u32>& dst_rect = copy_config.dst_rect;
const bool is_linear = copy_config.filter == Tegra::Engines::Fermi2D::Filter::Linear;
- glBlitFramebuffer(src_rect.left, src_rect.top, src_rect.right, src_rect.bottom, dst_rect.left,
- dst_rect.top, dst_rect.right, dst_rect.bottom, buffers,
+ glBlitFramebuffer(static_cast<GLint>(src_rect.left), static_cast<GLint>(src_rect.top),
+ static_cast<GLint>(src_rect.right), static_cast<GLint>(src_rect.bottom),
+ static_cast<GLint>(dst_rect.left), static_cast<GLint>(dst_rect.top),
+ static_cast<GLint>(dst_rect.right), static_cast<GLint>(dst_rect.bottom),
+ buffers,
is_linear && (buffers == GL_COLOR_BUFFER_BIT) ? GL_LINEAR : GL_NEAREST);
}
diff --git a/src/video_core/texture_cache/surface_base.cpp b/src/video_core/texture_cache/surface_base.cpp
index 829268b4c..84469b7ba 100644
--- a/src/video_core/texture_cache/surface_base.cpp
+++ b/src/video_core/texture_cache/surface_base.cpp
@@ -135,7 +135,7 @@ std::vector<CopyParams> SurfaceBaseImpl::BreakDownLayered(const SurfaceParams& i
for (u32 level = 0; level < mipmaps; level++) {
const u32 width = SurfaceParams::IntersectWidth(params, in_params, level, level);
const u32 height = SurfaceParams::IntersectHeight(params, in_params, level, level);
- result.emplace_back(width, height, layer, level);
+ result.emplace_back(0, 0, layer, 0, 0, layer, level, level, width, height, 1);
}
}
return result;