contour-terminal / contour

Modern C++ Terminal Emulator
http://contour-terminal.org/
Apache License 2.0
2.41k stars 104 forks source link

[error] Shader log: Fragment info on start #715

Closed GoldsteinE closed 1 year ago

GoldsteinE commented 2 years ago

Contour Terminal version

Contour Terminal Emulator 0.3.2-unreleased

Installer source

Github: source code cloned

Operating System

NixOS

Architecture

x86-64

Other Software

No response

Steps to reproduce

I’m not sure if this is reproducible, so I’ll dump some additional information here.

I use nvidia with proprietary drivers (version 515.48.07) and contour built from commit 6d706d066534514e9af050d9bc31d88850bfdd24. My WM is i3 without a compositor. Settings that seem render-relevant are set to default values.

The issue happens on terminal start.

Expected Behavior

contour starts with no errors.

Actual Behavior

contour shows the following error on start:

[error] Shader log: Fragment info
        -------------
        0(30) : warning C7012: not unrolling loop that executes 16384 times since maximum loop unroll count is 4096
        0(30) : warning C7012: not unrolling loop that executes 16384 times since maximum loop unroll count is 4096
Full log up to error message (with debug gui.display,gui.input,gui.session,error ) ``` [2022-06-05 00:34:53.204408] [gui.session] Configuring terminal. [2022-06-05 00:34:53.204448] [gui.session] Setting terminal ID to VT525. [2022-06-05 00:34:53.204454] [gui.session] maxImageSize=3840x2160, sixelScrolling=true [2022-06-05 00:34:53.204490] [gui.display] contentScale: 1 [2022-06-05 00:34:53.204499] [gui.display] contentScale: 1 [2022-06-05 00:34:53.232039] [gui.display] contentScale: 1 [2022-06-05 00:34:53.232059] [gui.session] Assigning display. [2022-06-05 00:34:53.232093] [gui.display] contentScale: 1 [2022-06-05 00:34:53.232099] [gui.display] sizeHint: 1920x1500 (1920x1500) [2022-06-05 00:34:53.232246] [gui.session] Starting main loop with thread id 140655279994432 [2022-06-05 00:34:53.243269] [gui.display] contentScale: 1 [2022-06-05 00:34:53.243283] [gui.display] sizeHint: 1920x1500 (1920x1500) [2022-06-05 00:34:53.243344] [gui.display] TerminalWindow.resizeEvent: size 1962x1500 (1962x1500) [2022-06-05 00:34:53.243353] [gui.display] called with 1962x1500 in Primary [2022-06-05 00:34:53.243357] [gui.display] Scrollbar Pos: Hidden [2022-06-05 00:34:53.243361] [gui.display] TW 0x0+1962x1500, SB invisible, 0x0+42x1500, value: 0/0 [2022-06-05 00:34:53.299641] [gui.display] contentScale: 1 [2022-06-05 00:34:53.299660] [gui.display] initializeGL: size=1962x1500, scale=1 [2022-06-05 00:34:53.299679] [gui.display] contentScale: 1 [2022-06-05 00:34:53.299682] [gui.display] sizeHint: 1920x1500 (1920x1500) [2022-06-05 00:34:53.299687] [gui.display] contentScale: 1 [2022-06-05 00:34:53.299758] [gui.display] Loading vertex shader: :/contour/opengl/shaders/text.vert [2022-06-05 00:34:53.301213] [gui.display] Loading fragment shader: :/contour/opengl/shaders/text.frag [2022-06-05 00:34:53.301440] [gui.display] Loading vertex shader: :/contour/opengl/shaders/background_image.vert [2022-06-05 00:34:53.301461] [gui.display] Loading fragment shader: :/contour/opengl/shaders/background_image.frag [error] Shader log: Fragment info ------------- 0(30) : warning C7012: not unrolling loop that executes 16384 times since maximum loop unroll count is 4096 0(30) : warning C7012: not unrolling loop that executes 16384 times since maximum loop unroll count is 4096 ```

Additional notes

I’m not sure if this even a bug, since contour seems to work correctly after that, but I thought that behaviour is worth reporting.

christianparpart commented 2 years ago

Hey @GoldsteinE.

Thanks for the report. This is gladly not really an error but merely a warning from the graphics driver that cannot unroll a loop due to its high iteration count (16384), which may affect performance.

But you are right, it should not contain the text "error" if it is not considered one. I'd like to keep this information in some way to the log, but the severity should change and only be printed when requested as such.

Yaraslaut commented 1 year ago

After https://github.com/contour-terminal/contour/pull/1071 log for shaders can be asked via --debug gui.shader or will be included in --debug all