On Sat, 16 Feb 2013 19:44:51 -0000, MartinRJ Fayray wrote: > This is an automatically generated e-mail. To reply, visit: > http://codereview.secondlife.com/r/616/ > > Review request for Viewer.
Yes, it seems to work more or less OK. It however still fails to animate visible small resizing primitives (I saw this first on scripted nipples: the nipples failed to "stiffen" on screen while the prim actually resized and only a change in LOD (zoom-out followed with zoom-in) would update the prim size on screen). To reproduce that bug, create two prims, link them, and in the root prim put this script: integer Expanded = FALSE; default { touch_start(integer n) { vector scale = llList2Vector(llGetLinkPrimitiveParams(2, [ PRIM_SIZE ]), 0); Expanded = !Expanded; if (Expanded) { scale.x = 2.0 * scale.y; } else { scale.x = scale.y; } llSetLinkPrimitiveParamsFast(2, [ PRIM_SIZE, scale ]); } } Then wear the resulting object and resize it down to a very small size. Zoom on it and see how the child prim fails to resize when touching the object. To cure that bug you need to replace: LLVector3 vec = mCurrentScale-target_scale; if (vec*vec > MIN_INTERPOLATE_DISTANCE_SQUARED) (which makes no sense whatsoever: only damping interpolations need to be checked against MIN_INTERPOLATE_DISTANCE_SQUARED), with: if (old_scale != target_scale) Also, it makes no sense to use dist_vec_squared(old_pos, target_pos) > 0.f || (1.f - dot(old_rot, target_rot)) * 10.f > 0.f in the test you added to fix the out of FOV moving/rotating child prims bug. You simply need to test for changed position and rotation since you don't change the dist_squared variable in that case (this will also avoid having very slow, or very slightly rotating out of FOV prims to fail to update). Attached to this email is the diff I propose to add to your patch. Regards, Henri.
diff.txt
Description: Binary data
_______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/OpenSource-Dev Please read the policies before posting to keep unmoderated posting privileges