|
|
|
[
Permlink
| « Hide
]
Lex Neva added a comment - 20/Mar/07 08:33 AM
For starters, llLookAt() and llRotLookAt() would be nice. I'd also like to see llApplyRotationalIImpulse() and llSetTorque work.
this would be extremely helpful for lots of purposes, specially those related with animation, but not only that
That should help with attachment hugger and kissing better to get them line up right for animations.
Voted I personally would not want to see this done unless it only applied to the owner of the script... This has major grief potential just as llPushObject does now.... also note.... that the rotational impulse component of an llPushObject does not work on agents.
I agree with Sontse about the griefing potential, but I think that if this was addressed in the same way as llPushObject is (with regions being set to allow/disallow these functions for avatars other than an object's owner), the problem would be addressed.
I agree that this would be extremely useful.
And I do not see any griefer issues if it were applied in the same way that animations are: ie with a getPermissions requirement. This should work exactly as permission take controls, permission Animate etc. do. Thus the AV would have to provide permissions, either explicitly or implicitly. It would also be useful to be able to get a rotation heading directly from an AV. Currently I can do so by getting a rot from an attached HUD, but it would be nice to not need that. We used to have this at one time. Is broken now and I need it badly for several prjects I am working on, not to mention fixing old scripts.
I disagree about griefing. Really. Someone ROTATING you, is hardly the most heinous crime.
I think this should be implemented in 2 ways. As in, both of them. 1. llLookAt etc. Should work with PERMISSION_TRIGGER_ANIMATION. Since it is, to uneducated eyes, a form of animation. 2. llApplyRotationalImpulse . Should require no permission, but not work in no push zones. Or on an avatar who's seated/non phys I see absolutely no reason to even consider griefer issues NOR to add the burden of asking permissions.
Why? Because all the calls needed already exist, they are all simply rotational variants of calls that can move avatars around linearly, or unimplemented parameters to calls that can move avatars linearly. For someone to use these for griefing they'd have to convince you to attach a prim to yourself, and once they do that the script's already able to orbit you, accelerate you laterally fast enough that you lose connection to the sim, and so on. Being able to rotate you as well adds no new danger, and the requirement that the prim be attached to you means you can't be shot or bombed into a spin. Actually....it may not orbit you... but it can crash you from client side if you were spinning too fast that your client crashes from trying to view everything around you at once if you were in mouselook.
...but of course, I hardly don't see how this can be griefer's way to abuse people. Maybe in a prank joke for wearing something. I'm all against permission trigger.... they are too much of a hasle to script. Permission triggers are a hassle, yes. But requiring it to be done from a worn object is too limited.
simply have the permission auto granted for attachments like animation permission. And unattached objects have to ask. Actually, I agree with argent. llPushObject doesn't need permission. Why should this.
No permission needed. I would like llLookAt() and llRotLookAt() to work with agents again. As for permissions, surely this isn't an issue? Using those two functions it would only work from within attachments anyway, which are typically given permission for most things right away.
I agree that being able to rotate the agent who is wearing the script is desiable and has zero griefer uses.
For a hugger you can use llMoveToTarget to position your agent in front of the other agent. llGetObjectDetails will give you the other agents rotation so you can work out where to move to. The same goes for any other situation where you need to place your avatar at a location and facing the correct direction. The only way to do it now it so rez an object around them and have it bump into one side of them to turn them. Hardly accurate, and not very friendly to anyone else who gets in the way. I Vote yes. Darling. I Vote for it, but should only work from attachments on the owner
Sounds like a good idea to me. I don't see a problem with changing the existing functions to work on avatars.
Though it should be noted that agents only turn on one axis normally (the z axis). The other two axis are kept locked. Should the other axis be unlocked for these functions? Or maybe we should have a special avatar turning function where the x & y axis can be locked or unlocked by a boolean. Just make it physical rotation, is all. SO that it doesn't affect you if you're sitting.
If you're standing and unprotected, there are plenty worse things someone can do to you already. Spinning doesn't add any problems. I think the real problem is that the sim doesn't control unlinked agent rotation, the viewer does... the sim just passes the facing information it gets from the viewer around, and other people's viewers adjust the avatar's appearance to match.
Is this really a "New Feature" if it's asking for the repair/reinstatement of functions in LSL that are documented as "Broken?"
Reopened SVC-2204 and made a sub-task of this. I believe this is the main feature people want.
Hi,
I voted too.
I don't understand why llPointAt() is more a problem that other way to piss of people ? (sorry for my poor english... hehe, break me too This is important for certain projects to make Second Life more Accessible to people with disabilities, as well.
How would it work?
Glad you asked. You request permissions: PERMISSION_MOVE_AVATAR. When permissions are granted, you treat the avatar like any other physical prim. llRotLookAt() would give the desired rotation control. llMoveToTarget() would be essentially the same as 'Go To...' in the pie menu. llSetPos() and llSetRot() would be useful for less realistic simulations. Ignore X- and Y-axis rotation information; use Z only. Ideally, physics commands would replace current flight enhancement techniques. One downside for the accessibility application is that the user of the script would have to give permissions each time a HUD is worn, eg. Policies could be implemented much like with permissions for other HUD apps, or with chairs that always get permission to animate. Glad I don't have to iron all that out just now. Echolation is used by blind RL with clickers, there needs to be methods for them to do this other then just the available pluggins which should also have browser UI options
that echolocation thing has nothing to do with this proposal, does it? Having actual collision geometry data avaibale to scripts would be great, but lsl isn't capable of doing the sound tricks required to shape a sound in response to the environment to that level, blind people would probably get a better feedback for the environment by using the vOICe ( http://www.seeingwithsound.com/
anyway, back to the topic, how do you propose llSetRot and such would work when the object isn't an attachment? I think it would be better to have new commands specificly for rotating the avatar, physicly and not (of course only when permission is granted, and for attachments permission could be auto-granted like how it happens with some of the other permissions) I've been wanting a way to do this for ages, along with implementing the broken look_at target in llMapDestination (third parameter that does nothing.) Heck, I'd be happy if rotating the prim an avatar is sitting on actually changed their rotation. But it doesn't. Sometimes yes, but 90% of the time you stand up facing the same direction you faced when you sat down.
@Cinco: I don't think we need any further permission requests. The ones we have are burdensome enough and llMoveToTarget() works quite well now without crippling it. Your suggestion would in fact break all existing flight assists, among other things. Enclosing content of a notecard that explains the value of adding this feature to the disabled community in Second Life:
Several individuals and groups in Second Life are working on scripts that make it easier for people with disabilities to use this immersive environment. However, Linden Scripting Language has some inherent limitations that the scripters, and those who use the scripts, must somehow overcome. One of these is that LSL cannot easily change the direction that your avatar is facing--your "rotation". This was possible at one time, but it is no longer available. Why is this important? Someone who is Blind or Visually Impaired can check to see which way they are facing, but if they wish to face a particular direction, they must guess at how long to hold down the arrow keys. It is possible to set a "target" rotation that will notify you when you reach a particular facing, but it is still very easy to overshoot. So, the "simple" act of turning to face a doorway or to face someone with whom you are speaking may not be so simple for them. Someone with motor impairment that affects fine motor control may likewise have difficulty turning. Imagine directing your avatar's facing by saying "Turn left" or "Turn right" instead of using your keyboard. This is just one example of how someone with motor impairment might use Second Life, of course. Facing a specific direction in a smooth and realistic manner could be difficult in either case. If you know that Joe Avatar is at 47 degrees from your position, you could issue a command to "face 47 degrees", and your avatar would be "looking" at him. This makes social interaction smoother and more realistic, as well as making travel and interaction with objects in-world easier. The desire to have Avatar Rotation returned to LSL is not limited to the Disability Community. Others have already begun this effort. http://jira.secondlife.com/browse/SVC-56 If you log in to this site with your SL Username and Password, you can vote for this issue. Voting does not compel Linden Lab to address our concerns in the way that we desire! However, they did create this site because they want user input. They do pay attention to these votes, and they tend to focus on those issues that receive the highest number of votes. Please, consider adding your vote. Thank you, Kelindra and Tigro: this is not about echolocation or sound, at least not exactly. It is about turning your avatar to face a specific direction.
Still, they could be used together. For example, my wife, Dianna Muircastle, has been practicing with vOICe to open the door to her office. From the center of her office (which is her home position) it is almost due SouthEast. She has tools already that tell her which way she is currently facing, and that tell her which way she needs to face to have the door directly in front of her. The problem that this feature would address is making those two numbers match. The first try to open the door took her close to 30 minutes. Now she can manage it in about 2 minutes on average. Think about that: taking an average of 2 minutes just to get yourself lined up properly to open a door that is in the place where you wake up every time you log in to SL. If she could change her avatar facing with precision, I think that could be shaved down to seconds. Door is at 5 meters at X degrees, so type /3 face X, /3 go 5, double-check to make sure she is lined up properly on the door, and click. EDIT: I double-checked this with Dianna. She corrected me: 2 minutes is a GOOD day, not an average. 5 minutes is more average now. Think of the awesome hugger we could finally have.
It's not as simple as having non-physical prim position commands control the avatar, because then you'd lose the ability to control the prim. Now you could have the prim take and release permissions over and over again, but it would be much simpler to stick to the physical movement API, particularly since the avatar has fewer degrees of freedom than a prim.
If there's a missing API to set the Z rotation of the avatar, add a new call. I'm surprised nobody's said anything. It seems like this according to the design: the simulator tells a client an avatar's position, but rotation is the opposite: the client tells the sim the avatar's rotation.
Think of your viewpoint with your camera behind you... and how even if things push you around, even if they make the avatar appear to rotate momentarily, you never experience the camera turning around. If it happened I bet it would grab your attention! Yes, it would have to be implemented by having the sim send a message to the client asking that the avatar be turned to a specific facing.
Major issue? With all the bugs out there, and the need for HTML to be finished and countless other features? Downgrading to normal priority.
I'd like to hear from Linden Lab as to the feasibility as well as impact. It is not like avatar animations as those are done client-side. Controlling the head, I'd imagine, yes. Controlling the body's rotation? Not so sure. I started to clean up a collar script for someone... and a temper tantrum when I discovered the LSL function to turn the avatar lacked a certain something - like working.
I believe this is a valid problem that needs to be solved
I think this would be most useful especially if someone is somewhat visually impaired - I'm always in favor of ways to help those that may be especially challenged by the virtual technical environment.
Could we please stop the priority wars? Normal was just fine for this issue. It is frustrating, and inconsistent in the way avatar rotation is handled even when sitting, but it is not a major priority. And those trying to pull the handicap trump card should turn their attentions elsewhere. Fixing sound and voice chat is more useful for the visually impaired. I don't see any use whatsoever for rotating a blind avatar. If you can't see, you aren't walking around a 3D environment designing clothes and building houses.
Those issues aside, if someone knows where the JIRA for llMapDestinations()'s failure to use the third rotation parameter is, could you link it to this one? Ditto for anything regarding sit/stand's unstable behavior vis-a-vis avatar rotation. They're all related. I'm guessing that fixing one fixes many if not all of them. Cheshyr: rotating a blind user's avatar with any degree of precision is very difficult for them. I am one of the people making assistive tech for people with disabilities, and this is one of the major complaints I have received. This has nothing to do with designing clothes and building houses, but there are most definitely Blind and Visually Impaired people walking around in Second Life. I am married to one of them, and I work with others. There are also people with severe motor impairment in Second Life, and I have worked with them as well. For them, it IS a Major Issue.
As for "Fixing Sound and Voice Chat", I have heard no complaints about either. Nor do all Blind people use Voice Chat. If you are interested in learning more about these issues, please contact me in-world for a demonstration of some of the LSL-based technology that Blind people use to navigate Second Life and an explanation of how this will fix a Major problem for them. I meant no disrespect. In high school I had a blind friend who I frequently went to movies with to act as a narrator, explaining what she couldn't figure out from the dialogue and sound effects. However, the key point there is a human was doing the narrating. I don't know of any computer system able to describe a virtual environment, or even a still photograph in any meaningful way.
Changing the priority on this issue because a handful of users might need it to navigate seems like overkill. The same madness that led my former boss at the Registry of Motor Vehicles to force me to make the website accessible to the blind "in case they needed to renew a driver's license." I don't know what drugs they feed government decision makers, but they're bad ones. from what I've read of reports of the vOICe users, it can provide somthing quite close to actual sight after enough training
and I imagine that with the right settings (perhaps a custom Windlight sky/lights, or perhaps some tweaking of the rendering system itsel)f, Second Life could become even easier for the vOICe beginners than RL I don't think the fact people with disabilities have just a bit more dificulty than the rest of the people with aiming their avatar after the same amount of training justifies bumping up the priority here, in RL it isn't uncommon for blind people not stare or face the same direction a sighted people would in a given situation, and people with motion related disabilities depending on the severity can only turn and aim themselves with the help of others. But many others use joysticks or other types of input devices to move and I don't see why that approach wouldn't work with SL as well it should also be possible to use AutoHotkey combined with a purposely made hud to assist with doing certain movements in SL I don't think this ability is any more important to people with disbilities than it is for the rest, what is needed to overcome the lack of this feature is just about the same for both types of people, being blind is no excuse to suck at videogames, haven't you heard about that guy that had his eyes removed when he was a kid? I don't mean to offend anyone, what I'm trying to say here is that I believe the difficulty some people report with aiming themselves is just lack of practice, if they had been practicing using these type of controls for a similar amount of time as the rest of the people they would probably turn just about as easilly, gotta play more, and "watch" more other people doing it as well with whatever means they got avaiable We're getting off topic. If you would like to discuss alternative forms of assistive technology, please contact me off these boards. It's been tried, and this is the option that the customer base has stated would work best for them, hence the increase in votes. I'm happy to discuss that further, but let's stick to the JIRA rules and keep this board for discussion of this specific item.
As for the classification as "Major": It was set to Major when I first got here. This topic has been up since 2007, reopened at least once, and set to Major by someone who presumably had no knowledge of the disability issues. Over 150 people have voted for it since without feeling it needed a downgrade. The person who did downgrade it cited that they wanted other things first as a reason. JIRA does not include a "vote against" option: if you want something else first, go vote for that instead! Nor is arguing against the interests of People with Disabilities going to get very far, either: one survey shows that as much as 20% of the SL population self-identifies as having a Disability of some sort, and we are working to bring more in. We have as much right to have our voice heard here as anyone else. As soon as the downgrade occurred, I reset it to Major. If you feel I abused the system by doing so, I suggest using the existing grievance channels already in place. Dear Linden Labs,
I think that's it's pretty shameful of you to use the disabled as part of your PR for Second Life, yet you don't even have the courtesy to assign someone to look at this feature. Despite the major benefits to a large minority of your community (I have no idea just how many of those 20% of physically disabled customers would directly benefit) and a general benefit to the rest. But then, the company is not about being honourable is it? C if you've not come across the word honourable before, here's the definition: Adjective honourable (comparative more honourable, superlative most honourable) Comparative Superlative 1. worthy of respect there was at one time a function for this, ''llPointAt(vector v?)'" so code is existing, just likely commented out
updating with mention that this affects all server versions so far,
The need for mobility control for those with disabilities to enjoy second life outweighs any perceived benefit this may give to griefers.
The question of griefing was discussed a fair bit a while back. I cannot, off-hand, think of many reasons* why we need to be able to rotate an avatar except through something attached to the avatar or through something the avatar is sitting on. Setting rotation on teleport might be one, but as for "drive-by rotating": no. Avatar rotation should only be performed with implicit (attach/sit) or explicit permission.
All of the assistive tech that I am aware relevant to this is attached to the Av. *(But if you know of a reason, please share!) huggers and other coordinated avatar motion without poseballs and such is one of the possibilities
perhaps simply allowing avatar rotation along the Z axis to be physical would work perfectly, for objects not attached the angular impulse part of llPushObject woudl do it, unless the land has push completly blocked (instead of just weakened), and attached objects would use the the physics commands that affect rotation on the prim that run the command, push doesn't need permission, and nor those the translational phys commands that also work on an avatar if run from an attachment somthing I put together just now:
(edit: I'm removing the code tags, I don't like horizontal scrolling) edit2:gonna try to make it less mangled without having to have horizontal scrolling edit3: I should've RTFM to start with, now it should look good on the page (also the preview button was underused,sorry). I've managed to make everything looks right except there is no indenting, and it will look mangled by email (without the pjira rendering engine), I've just tested and copying the stuff between the /////////s (after rendered by pjira) and pasting back into SL works just like the original, if indentations are really important for you, or you don't wanna come to pjira and copy the text from here, you can use the original one, the only changes are presentation and a couple of typos ///////////////////////////////////////////////////////////// //do whatever you want with this code //2d topology only, no jumps nor flight requirements nor obstacles taken in consideration //tested only with Emerald Greenlife viewer with Restrained life functionality enabled //too simple, doesn't do any checks nor anything, just the basic algorithm to do the job and any extra code necessary to make a working proof of concept //How to use: place the script on a prim you own, set the key of the target bellow, save the script, and start holding the forward key till you hit the target //key of target avatar or object to home on default { state_entry() { llSetTimerEvent(0.2); } timer() { vector tpos = llList2Vector(llGetObjectDetails(target, [OBJECT_POS]),0); //target position, if going to specific coordinates instead of going after an object or avatar, replace everything after the = sign and before the ; with the vector of the destination vector opos = llList2Vector(llGetObjectDetails(llGetOwner(), [OBJECT_POS]),0); //owner position, used to calculate the angle to face the target position float ang = -llAtan2(tpos.x-opos.x, tpos.y-opos.y)+ PI_BY_TWO; //angle calculated based on relative position of the target to the owner, for some reason it's 90 degrees off, PI_BY_TWO==90 degrees llOwnerSay("@setrot:" +(string)ang+"=1");//sends the command to set the rotation for the client to process, needs Restrained Life functionality } } ////////////////////////////////////////////////// Updated to critical because this stops some REALLY important scripting things from happening, and by this time in SL's life it really should have been addressed.
I am going to disagree on the "Critical" matter, myself.
According to the guidelines, "Critical" is for "Generally, most crashes (particularly if they're easy to reproduce and affect many), content loss, significant memory leaks, greatly reduced performance, etc." "Major" is for "Major loss or impairment of function, including rarer crashes." While I obviously consider this to be important, it is not at the level of "Critical" in my opinion. As this question of Priority has come into question (and contention) more than once in recent memory, I ask that a Linden settle the matter. Well, the issue with the priorities is that they are worded mainly for bugs.
I think for new features the best thing to do is try and rate it by how complex the feature is, as the number of votes should express the desirability/demand for the feature. In this case the issue probably shouldn't be above normal, as it isn't likely that hard to implement. The main concern with it (and its derivatives) is that if we change rotational functions to affect avatars, then it could have unforeseen effects, for example in scripts that currently have these functions. Currently their rotational element will do nothing, but if it's suddenly activated what impact could that have? Some things could break as a result. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||