Announcement

Collapse
No announcement yet.

Do you guys have screen tearing?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Do you guys have screen tearing?

    I recently changed my old 6 years old 24inch 1920x1200 monitor with more modern 2017 and 2018 models.Two 27 4k 60hz ones and one 2560x1080 75hz.For some reason i still notice what is called screen tearing? A horizontal wobbly line in the midle of the screen when i move the characters view up and down at normal mouse speed.All these monitors have 5ms response time so that shoudnt be a problem.In the rail shooter that I am making this is more obvious as its faster pace.

    Went to the UDKEngine and changed the bSmoothFrameRate=TRUE to FALSE in order to remove the FPS cap and it looks like that took care of the problem.I still notice it but its so slight that i dont consider it a problem at this moment.

    Now, i suspect that bSmoothFrameRate is udks VSYNC?? If i remember, when VSYNC is on it is responsible to eliminate the chance of screen tearing and not render unneeded frames.

    Than why am I eliminating screen tearing when im deactivating it ? Its completly opposite of what it should be done.

    Or is there another way to eliminate the tearing or to play with Vsync in the engine?

    #2
    It depends on the combination for the graphics card x monitor in use. Vsync is used to make sure the memory data will not be changed during the refresh of the monitor's image and in this case you would not see the tearing effect normally. What you might be experiencing is that you are trying to show 4k with a card that can't complete the memory changes before the refresh at the monitor takes place, so in this case Vsync is useless. When you are not seeing tearing with Vsync turned off means that your card most of the time are matching the changes with the monitor refresh rate, but that is more of a coincidence and not every software will show the same results.

    Which is the graphics card you got?

    The only technique known to get rid of screen tearing besides Vsync is frame buffer techniques, meaning you have separate memory area for displaying and one area for writing changes by the application, and in this case what is done is a quick copy of one frame buffer to the other one. New monitors with adaptive sync (Freesync and Gsync) does not require any technique mentioned (VSync and frame buffer) but adaptive sync monitors have a range which the adaptive works, like 70-120Hz, so in this case if your card goes below or higher this range you will start seen tearing again. The solution ranges on what specifically is happening: if the card frames are dropping the low limit, means you need a faster card, and if the card frames are going above the high limit, means you need a better monitor. Notice that, each software application will have different results, so gaming you might see things, while watching video you might not. More static image will not tear, more fast paced action (like games can do) will be more likely to show tearing.
    Nilson Lima
    Technical Director @ Rigel Studios Ltda - twitter: @RigelStudios
    Art is a state of Spirit

    Join us at Discord:
    https://discord.gg/uFFSEXY
    UE4 Marketplace:
    Cloudscape Seasons

    Comment


      #3
      Originally posted by NilsonLima View Post
      It depends on the combination for the graphics card x monitor in use. Vsync is used to make sure the memory data will not be changed during the refresh of the monitor's image and in this case you would not see the tearing effect normally. What you might be experiencing is that you are trying to show 4k with a card that can't complete the memory changes before the refresh at the monitor takes place, so in this case Vsync is useless. When you are not seeing tearing with Vsync turned off means that your card most of the time are matching the changes with the monitor refresh rate, but that is more of a coincidence and not every software will show the same results.

      Which is the graphics card you got?

      The only technique known to get rid of screen tearing besides Vsync is frame buffer techniques, meaning you have separate memory area for displaying and one area for writing changes by the application, and in this case what is done is a quick copy of one frame buffer to the other one. New monitors with adaptive sync (Freesync and Gsync) does not require any technique mentioned (VSync and frame buffer) but adaptive sync monitors have a range which the adaptive works, like 70-120Hz, so in this case if your card goes below or higher this range you will start seen tearing again. The solution ranges on what specifically is happening: if the card frames are dropping the low limit, means you need a faster card, and if the card frames are going above the high limit, means you need a better monitor. Notice that, each software application will have different results, so gaming you might see things, while watching video you might not. More static image will not tear, more fast paced action (like games can do) will be more likely to show tearing.
      Well, in the past was just a 1080p monitor with a standart gtx670 which was more than enough.Right now i do have my game testing at 4k, but the gpu is a (im ashamed to say it) a quadro p6000(so a titan xp).I did experienced the same situation with my other pc which has the same 4k monitor but with a gtx 1080ti.So at complex levels, i do get fps of 80 and up at 4k.

      Comment


        #4
        In the case of P6000 with 4k monitor at 60Hz it will work ok with VSync ON for no tearing, and you need to make sure your Display Port cables are good enough to handle 4k at 60Hz, meaning they need to be at least DP 1.3+ compatible. If the cables are not compatible you will have an insta-downgrade to 30Hz, meaning you will see tearing.

        In the case of 1080TI with 4k monitor at 60Hz it will work ok with VSync ON for no tearing, if you are using Display Port you have same recommendations as above, but if you are using HDMI you need to make sure both monitor and cables are at least HDMI 2.0+. The case with HDMI is even worst than Display Port, because Display ports have being around for much more time than HDMI at higher refresh rates, so it is likely easier to get a good cable for DP but not for HDMI.

        Both P6000 and 1080TI with the 1440p monitor at 75Hz will need also a good cable, but definitely in this case you will want adaptive sync, because both cards will be faster than the monitor can keep up.

        Just an advice thou, activating VSync also leads to input lag, which is bad for action gaming, all other uses it is fine.

        Tearings will always happen despite the hardware combination if the frames drop or exceed the ranges for the monitor: 60Hz for the 4K, 75Hz for the 1440p. As I explained, even with adaptive sync you might get to tearing if you are not in the sweet spot range for the monitor.
        Last edited by NilsonLima; 01-31-2019, 11:53 AM.
        Nilson Lima
        Technical Director @ Rigel Studios Ltda - twitter: @RigelStudios
        Art is a state of Spirit

        Join us at Discord:
        https://discord.gg/uFFSEXY
        UE4 Marketplace:
        Cloudscape Seasons

        Comment


          #5
          Originally posted by NilsonLima View Post

          Tearings will always happen despite the hardware combination if the frames drop or exceed the ranges for the monitor: 60Hz for the 4K, 75Hz for the 1440p. As I explained, even with adaptive sync you might get to tearing if you are not in the sweet spot range for the monitor.
          Well, that explains it i supose.So, tearing can be something normal in that case? I didnt thought it loud be important to mention, but in regards to the monitor cables i did my homework and bought separate DP cables that were certified on the display port web page.(45 euro each ;( ) So i do have the quality cables.On the other hand, my monitors only support freesync which is for AMD gpus.
          To tell the truth, in normal games having the vsync disabled or enabled in the games menu(if provided) works as expected.For some reason i notice this slight screen tearing only in a UDK build game(for which i have to remove the 60fps limit in order to eliminate the tear).

          I now start to suspect that it might be a nvidia driver setting and will have to take a look.Either way, as you said, each monitor will resemble a different situation.
          But still curious if other members are experiencing this..

          Cheers

          Comment


            #6
            Some of my players reported screen tearing. I'm experimenting with the bSmoothFrameRate setting now. When I set that to false, the game runs great on my computer at 100+ fps, but then I get to a part of the game where it just looks very... I don't know... blurry and vibratey? Anything off the top of your head that could cause that?

            Edit: Nevermind. It happens whether I disable bSmoothFrameRate or not. Maybe it just looks worse with it off. I'm going to post a separate thread about that.
            Last edited by Nathaniel3W; 02-03-2019, 08:22 AM.
            Check out Himeko Sutori, the upcoming tactical RPG where you control armies of over 100 unique characters.

            Comment


              #7
              Originally posted by Nathaniel3W View Post
              Some of my players reported screen tearing. I'm experimenting with the bSmoothFrameRate setting now. When I set that to false, the game runs great on my computer at 100+ fps, but then I get to a part of the game where it just looks very... I don't know... blurry and vibratey? Anything off the top of your head that could cause that?

              Edit: Nevermind. It happens whether I disable bSmoothFrameRate or not. Maybe it just looks worse with it off. I'm going to post a separate thread about that.
              Glad and sad that i wasn't the only one.I highly doubt that the bSmoothFrameRate has anything to do with blurry and vibratey.I blame nvidia drivers as i have encountered a few render issues that i can not connect to the engine, so the drivers must be it.Not related, but i have found that it is a good idea to have microsoft framework 3 and probably 3.5 on a windows 10 pc that uses a dx9 udk game.It does help with a few ''mystery issues'' that may or may not occure.Either way, im going to leave my game to False and if someone doesnt like it, he can change it later on.I dont see the problem of a 60hz monitor dysplaying more than 60fps.Either way, people tend to complain that they want more fps just to show off their gpu anyway..

              Comment

              Working...
              X