All submissions to this site are governed by the Second Life Viewer Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.

Review Board 1.6.11

Welcome to the Second Life Viewer Code Review tool.
See the documentation on our wiki for how to use this site.

BUG-1709: Tiny prims do not rescale properly at very high viewer framerates

Review Request #617 - Created Feb. 17, 2013 and updated

MartinRJ Fayray Reviewers
viewer
BUG-1709
None viewer-release
At high framerates tiny prims get stuck upon interpolation when they are resized via script.
I fixed that by comparing the original scale versus the new target scale (instead of comparing the original scale versus the new interpolated target scale),
in lldrawable.cpp "updateXform" to decide whether a scale change requires an immediate rebuild or not.
See test plan in Jira: https://jira.secondlife.com/browse/BUG-1709

Repository: https://bitbucket.org/MartinRJ/bug-1709
Review request changed
Updated (Feb. 17, 2013, 7:02 p.m.)
  • See test plan in Jira: https://jira.secondlife.com/browse/BUG-1709

    See test plan in Jira: https://jira.secondlife.com/browse/BUG-1709
    
    Repository: https://bitbucket.org/MartinRJ/bug-1709
Posted (Feb. 18, 2013, 7:25 a.m.)
I don't understand this "fix" at ALL. It doesn't seem to make any sense :/... What you need is to set the final scale once the distance between destination and current become LESS than the minimum interpolation distance, because then interpolation will never update it anymore. This fix just makes condition true all the time for your test case at your frame rate, but will still fail to reach the final scale when you increase the frame rate (or when the destination scale is simply so close to the start scale that this condition is never true).
  1. Hello Aleric,
     
    I’m sorry you don’t understand this fix at all.
     
    In short: other cases like the one you mentioned
     
    >still fail to reach the final scale
     
    will be treated in other parts of the code and are parts of other if/else conditions.
    
    I am aware that the LL version of drawable.cpp differs in several places from the one that Henri (or other TPVs) uses for example,
    and the change of this fix will not make sense in other viewers.