-
Notifications
You must be signed in to change notification settings - Fork 54
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
secondlife/viewer#2349: Avatar/animesh rendering correctness pass #2364
Conversation
@@ -688,6 +671,81 @@ bool LLRenderPass::uploadMatrixPalette(LLVOAvatar* avatar, LLMeshSkinInfo* skinI | |||
return true; | |||
} | |||
|
|||
// Returns true if rendering should proceed | |||
//static | |||
bool LLRenderPass::uploadMatrixPalette(LLVOAvatar* avatar, LLMeshSkinInfo* skinInfo, const LLVOAvatar*& lastAvatar, U64& lastMeshId, bool& skipLastSkin) |
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.
Inspection of LLDrawPoolMaterials
indicated that there are several important things to check when drawing a rigged mesh:
- Is the avatar null? If so, don't render.
- Note: Some cases of null avatar are more suspicious than others. Some may be bugs. I previously added
llassert(avatar)
here for a bit to catch some bugs, but I'm not convinced all cases of null avatar are bugs.
- Note: Some cases of null avatar are more suspicious than others. Some may be bugs. I previously added
- Is the matrix palette not defined? If so, don't render.
- During alpha draw passes, shaders are interleaved, so don't assume the skinning is up-to-date if the shader changes
count, | ||
false, | ||
(GLfloat*)&(mpc.mGLMp[0])); | ||
continue; |
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.
This is now a continue
, but was previously a return
. The return
appeared to not be correct, as it would interfere with the rendering of other objects in the draw pool.
No description provided.