Skip to content

Instantly share code, notes, and snippets.

View doitsujin's full-sized avatar
:octocat:
Working around game bugs since 2018

Philip Rebohle doitsujin

:octocat:
Working around game bugs since 2018
View GitHub Profile
#!/usr/bin/env bash
# default directories
dxvk_lib32=${dxvk_lib32:-"x32"}
dxvk_lib64=${dxvk_lib64:-"x64"}
# figure out where we are
basedir="$1"
# figure out which action to perform
#!/bin/bash
RESX=1920
RESY=1080
RESFS=1
CHARCREATION=0
export WINEPREFIX=$HOME/.wine-ffxiv
export WINEDEBUG=-all
export WINEFSYNC=1
From ead48c30b96cb585584dce766822fac09a753f98 Mon Sep 17 00:00:00 2001
From: Philip Rebohle <philip.rebohle@tu-dortmund.de>
Date: Tue, 30 Jul 2019 13:36:09 +0200
Subject: [PATCH] radv: Optimize rebinding the same descriptor set (v2)
Same idea as in 02a43edf186cb9998741ba765cb948bb238a122d, but
still call radv_set_descriptor_set, only skip BO list iteration.
Fixes performance issues in Wolfenstein Youngblood.
---
DISASM:
BB0:
s_mov_b32 m0, s4 ; befc0004
v_interp_p1_f32_e32 v4, v0, attr0.x ; d4100000
v_interp_p2_f32_e32 v4, v1, attr0.x ; d4110001
v_interp_p1_f32_e32 v5, v0, attr0.y ; d4140100
v_interp_p2_f32_e32 v5, v1, attr0.y ; d4150101
v_interp_p1_f32_e32 v6, v0, attr0.z ; d4180200
v_interp_p2_f32_e32 v6, v1, attr0.z ; d4190201
s_mov_b64 s[0:1], exec ; be80017e
@doitsujin
doitsujin / resolve.frag
Last active March 19, 2019 12:17
Fast resolve shader using VK_AMD_shader_fragment_mask
#version 450
#extension GL_AMD_shader_fragment_mask: enable
layout(set = 0, binding = 0)
uniform sampler2DMSArray s_image;
layout(location = 0) out vec4 o_color;
void main() {
Pixel Shader:
SPIRV (sha1: ba0970828742f964d7c3310b80cb98f016adc758):
; SPIR-V
; Version: 1.3
; Generator: Khronos; 0
; Bound: 4181
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
Memory-mapped registers:
GRBM_STATUS <- ME0PIPE0_CMDFIFO_AVAIL = 8
SRBM_RQ_PENDING = 1
ME0PIPE0_CF_RQ_PENDING = 0
ME0PIPE0_PF_RQ_PENDING = 0
GDS_DMA_RQ_PENDING = 0
DB_CLEAN = 0
CB_CLEAN = 0
TA_BUSY = 0
GDS_BUSY = 0
; SPIR-V
; Version: 1.0
; Generator: Khronos; 0
; Bound: 79
; Schema: 0
OpCapability Shader
OpCapability ImageQuery
OpCapability DerivativeControl
%1 = OpExtInstImport "GLSL.std.450"
OpMemoryModel Logical GLSL450