-
Notifications
You must be signed in to change notification settings - Fork 64
viewer#1200 Avatar rotates 360 degrees when viewed from the top and below #1240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
indra/newview/llagent.cpp
Outdated
@@ -1453,48 +1453,70 @@ LLVector3 LLAgent::getReferenceUpVector() | |||
return up_vector; | |||
} | |||
|
|||
|
|||
#pragma optimize("", off) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
I felt that I would forget to remove it :-)
3b04c12
to
2fb93f7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's test it.
@@ -112,6 +112,7 @@ class LLAgentCamera | |||
//-------------------------------------------------------------------- | |||
public: | |||
void switchCameraPreset(ECameraPreset preset); | |||
ECameraPreset getCameraPreset() const { return mCameraPreset; } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See the second file in this commit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And what would happen with custom presets? Like a rear view, but slightly to the side?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just want to mention that all 3 "default" presets (Front, Rear, Side) can be overwritten. For example, you can set the values of 'Rear' and 'Side' to be the same as 'Front'. Basically, they are almost the same as 'custom' presets, but have their own buttons and default values, stored in the file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe the current bug relates to the default preset settings, and the fix as well
We will solve the issues with custom presets when having bugs relates to them, not before
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So in this case, it looks like those bugs will appear in the very first round of testing. Why wait, then?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So in this case, it looks like those bugs will appear in the very first round of testing. Why wait, then?
Nothing is changed for custom presets
If we don't have bugs with them right now, why should they appear after this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I meant something like that:
- Open 'Camer controls'
- Select 'Front view'
- Click 'Save as preset' button
- Choose 'Replace a preset' and select 'Rear'
- (then repeat and select 'Side')
- Click 'Save as preset' button once again
- And save as new preset.
After that the bug will be reproducible on all camera preset views, including REAR, GROUP, CUSTOM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test plan for QA now includes testing presets, so I'm tentatively approving this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the user explicitly sets incorrect preset settings, the bugs like this are expected, but they won't be treated as bugs
For example, if user choses the color scheme with white color for font and background, the text becomes unreadable, but this is not a bug, yes? :-)
indra/newview/llagent.cpp
Outdated
} | ||
} | ||
// don't let user pitch if pointed almost all the way down or up | ||
if (gAgentCamera.getCameraMode() == CAMERA_MODE_THIRD_PERSON || |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you add this cheack? Won't this negatively affect avatar customization mode which isn't listed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because each preset requires different checks
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The avatar customization mode won't be affected because it doesn't use vertical angles close to 1 and 179
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And CAMERA_MODE_FOLLOW? That's a mode where script overrides control over camera and otherwise acts as a CAMERA_MODE_THIRD_PERSON, doesn't appear to affect mouselook
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CAMERA_MODE_FOLLOW also doesn't seem to use critical values of the vertical angle (1 or 179)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I checked and it behaves exactly like CAMERA_MODE_THIRD_PERSON in most cases with the kart, except camera follows behind you in some cases. But it depends on a script, ex: a rocket or a plane can easily trow your camera high up so I suggest checking those cases or at least providing a test plan that would cover them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With CAMERA_MODE_FOLLOW your camera could rotate any directions without any action from your side
So this bug doesn't make sense for CAMERA_MODE_FOLLOW
When the vertical angle takes critical values 1 or 179, camera could rotate, and nobody treats this like a bug
2fb93f7
to
c5a009e
Compare
But may be retarget it to maint C? |
Sounds good. |
See #1200
This change applies
pitch()
to a copy of themFrameAgent
and checks the resulting vertical angleThe new value of
mFrameAgent
is used only if the resulting vertical angle doesn't exceed the limitsThis method is more precise than any attempts to guess the resulting angle before applying
pitch()