jonaburg / picom

A lightweight compositor for X11 (previously a compton fork)
Other
961 stars 100 forks source link

Not working at all. #3

Open notsatvrn opened 4 years ago

notsatvrn commented 4 years ago

Platform

Arch Linux

GPU, drivers, and screen setup

R7 250 and Intel Graphics 3000. Dual monitors.

name of display: :0 display: :0 screen: 0 direct rendering: Yes Extended renderer info (GLX_MESA_query_renderer): Vendor: X.Org (0x1002) Device: AMD Radeon HD 8600 Series (OLAND, DRM 3.37.0, 5.7.8-xanmod2-2-xanmod, LLVM 10.0.0) (0x6610) Version: 20.1.3 Accelerated: yes Video memory: 2048MB Unified memory: no Preferred profile: core (0x1) Max core profile version: 4.6 Max compat profile version: 4.6 Max GLES1 profile version: 1.1 Max GLES[23] profile version: 3.2 Memory info (GL_ATI_meminfo): VBO free memory - total: 1613 MB, largest block: 1613 MB VBO free aux. memory - total: 2910 MB, largest block: 2910 MB Texture free memory - total: 1613 MB, largest block: 1613 MB Texture free aux. memory - total: 2910 MB, largest block: 2910 MB Renderbuffer free memory - total: 1613 MB, largest block: 1613 MB Renderbuffer free aux. memory - total: 2910 MB, largest block: 2910 MB Memory info (GL_NVX_gpu_memory_info): Dedicated video memory: 2048 MB Total available memory: 5120 MB Currently available dedicated video memory: 1613 MB OpenGL vendor string: X.Org OpenGL renderer string: AMD Radeon HD 8600 Series (OLAND, DRM 3.37.0, 5.7.8-xanmod2-2-xanmod, LLVM 10.0.0) OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.1.3 OpenGL core profile shading language version string: 4.60 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.1.3 OpenGL shading language version string: 4.60 OpenGL context flags: (none) OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.1.3 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Environment

BSPWM

picom version

vgit-d718c

Configuration:

# Basics.
backend = "glx";
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
xrender-sync-fence = true;

# Fading.
fading = true;
fade-delta = 5;
fade-in-step = 0.05;
fade-out-step = 0.05;
no-fading-openclose = false;

# Other.
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-rounded-corners = true;
detect-client-opacity = true;
detect-transient = true;
detect-client-leader = true;
unredir-if-possible = true;
unredir-if-possible-delay = 0;
unredir-if-possible-exclude = [ ];
invert-color-include = [ ];
use-damage = true;
vsync = true;
refresh-rate = 0;

# Opacity
inactive-opacity = 0.5;
inactive-opacity-override = false;
active-opacity = 1.0
opacity-rule = [
  "100:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FULLSCREEN'",
  "100:_NET_WM_STATE@[1]:32a = '_NET_WM_STATE_FULLSCREEN'",
  "100:_NET_WM_STATE@[2]:32a = '_NET_WM_STATE_FULLSCREEN'",
  "100:_NET_WM_STATE@[3]:32a = '_NET_WM_STATE_FULLSCREEN'",
  "100:_NET_WM_STATE@[4]:32a = '_NET_WM_STATE_FULLSCREEN'",
  "100:_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FOCUSED'",
  "0:_NET_WM_STATE@[0]:32a *= '_NET_WM_STATE_HIDDEN'",
  "0:_NET_WM_STATE@[1]:32a *= '_NET_WM_STATE_HIDDEN'",
  "0:_NET_WM_STATE@[2]:32a *= '_NET_WM_STATE_HIDDEN'",
  "0:_NET_WM_STATE@[3]:32a *= '_NET_WM_STATE_HIDDEN'",
  "0:_NET_WM_STATE@[4]:32a *= '_NET_WM_STATE_HIDDEN'"
];

# Focus
focus-exclude = [
  "_NET_WM_STATE@[0]:32a = '_NET_WM_STATE_FOCUSED'"
];

# Window types
wintypes:
{
  tooltip = { shadow = false; full-shadow = false; };
  dock = { shadow = true; full-shadow = true; above = true; };
  dnd = { shadow = false; full-shadow = false; };
  popup_menu = { shadow = false; full-shadow = false; };
  dropdown_menu = { shadow = false; full-shadow = false; };
  normal = { shadow = true; full-shadow = true; };  
};

# Shadow.
shadow = true;
shadow-radius = 5;
shadow-offset-x = -3;
shadow-offset-y = -3;
shadow-opacity = 0.5;
shadow-exclude = [
  "class_g = 'firefox' && argb",
  "class_g = 'Glava'",
  "name *= 'picom'",
  "! name~=''"
];

# Blur.
blur: {
  # requires: https://github.com/ibhagwan/picom
  method = "dual_kawase";
  #method = "kernel";
  strength = 3;
  # deviation = 1.0;
  # kernel = "11x11gaussian";
  background = false;
  background-frame = false;
  background-fixed = false;
  kern = "3x3box";
}
blur-background-exclude = [
  "class_g = 'Brave-browser'",
  "class_g = 'GLava'"
];

Steps of reproduction

  1. Build the latest version of your picom fork.
  2. Install and run with --experimental-backends.

Expected behavior

Fading works like normal, and so does the animations.

Current Behavior

Animations do not work half the time, and nor does fading, which used to work just fine.

Stack trace

Doesn't crash.

jonaburg commented 4 years ago

You'll have to increase your fade-delta most likely. This fork uses the same float for fading as it does the animations, which have now been reduced to microseconds depending on your cpu clock. I may separate this into another variable in an upcoming commit, so it's at least separate from the fading calculations, so that others don't have to deal with changing their default fade-delta values.

Also, play around with the transition-length and transition-pow-(x/y/w/h) values representing length and animation smoothing, you may have better mileage by tweaking them. Can you please explain what happens when you adjust these values?

notsatvrn commented 4 years ago

When I adjust the fade delta, it appears to have no affect on the animations. I will try the transition variables right now, and report back if I find a difference.

notsatvrn commented 4 years ago

Nope, still nothing.

jonaburg commented 4 years ago

are there any noticable differences if you try to run it with the xrender backend vs glx?

notsatvrn commented 4 years ago

Nope, and xrender is very laggy.

jonaburg commented 4 years ago

Strange. Can you please clearly explain where you are at right now? You mention: Animations do not work half the time, and nor does fading, which used to work just fine.

After adjusting the fade delta, you confirm it has no effect on the animations, but can you provide if it reverts issues with the fading back to what you would expect? In addition to this, you mention that the animations don't work half the time. Could you please explain what this means, in what capacity, and in what kind of 'lagginess' do you feel? Is there any spike in CPU usage during this lagginess?

notsatvrn commented 4 years ago

It does revert the fading back to normal. The animations worked once, and only once. And when using xrender, the mouse doesn't move properly, and it looks like its running below my monitors refresh rate.

unai-ndz commented 4 years ago

I also have an R7 250 so I felt like testing your config.

I can't reproduce the issues you mention besides xrender being laggy which stops happening if I turn off the blur. (This happens in both this fork and in the original picom mind you.)

I use the amdgpu driver which maybe makes a difference. I think radeon is the default for this card. You can check which one you are using with: lspci -k | grep -EA3 'VGA|3D|Display'. Feel free to ping me if you want more details about my setup.

notsatvrn commented 4 years ago

I ended up not using this fork and got an RX 570 recently. I use amdgpu because of Vulkan support so using radeon would be out of the question.