Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

When are things 'there' and when are they not?

Rock Ryder
Registered User
Join date: 6 Oct 2006
Posts: 384
12-04-2007 11:44
Hi guys,

When I logged in this afternoon SL seemed quite slow, everything was taking ages to rezz. That got me thinking about the nature of 'rezzing'.

For example, although a wall in my home had not rezzed yet, and I could see the garden beyond, it was certainly 'there' as any attempt to walk to the garden resulted in a bump, as the invisible wall blocked my way. But on the other hand, an object (TV) which I also knew was 'there' but not rezzed yet, and was scripted (touch event) could not be selected, nor would it bring up the menu on touch that it should. But why? If the wall is 'there' but simply unseen, and bumps me, why isn't the TV 'there' and responsive to touch events?

Rock
Day Oh
Registered User
Join date: 3 Feb 2007
Posts: 1,257
12-04-2007 11:54
It is always there in fact, but the sim hasn't sent it to you yet. The sim knows where everything is and handles physics, and sends your avatar's position to you. Eventually, hopefully, it sends you (the visual parameters of) the objects so you can see them too.
Rock Ryder
Registered User
Join date: 6 Oct 2006
Posts: 384
12-04-2007 12:51
From: Day Oh
It is always there in fact, but the sim hasn't sent it to you yet. The sim knows where everything is and handles physics, and sends your avatar's position to you. Eventually, hopefully, it sends you (the visual parameters of) the objects so you can see them too.


But that is the point of my question/observation. If everything is 'there' but just not visible yet, as evidenced by my bumping into unrezzed walls, why do other objects that have not rezzed yet, eg my TV, not react to my touch? In fact, you cannot select any object that has not rezzed yet, but you can collide with them. That is what I find odd.

Rock
Darien Caldwell
Registered User
Join date: 12 Oct 2006
Posts: 3,127
12-04-2007 13:11
your client sends movement information to the sim. Sim handles the physics, so says "oops a wall".

You click at nothing, where your TV should be, but the client doens't see it, so it is incapable of sending the server any touch info, as the TV doesn't exist to the client yet.

Server based inteaction will work, client based won't until the item becomes apparent.
_____________________
Day Oh
Registered User
Join date: 3 Feb 2007
Posts: 1,257
12-04-2007 13:31
Each object in the sim has an identifier (LocalID) that clients use to interact with it. You get the objects' LocalID's along with the aforementioned visual parameters. Let's say your TV is object # 240... once the TV shows up in your viewer, your viewer knows that if you click it, you want to touch object 240.

These are the messages your viewer sends to the sim to trigger touch_start and touch_end on an object:
http://wiki.secondlife.com/wiki/ObjectGrab
http://wiki.secondlife.com/wiki/ObjectDeGrab
Johan Laurasia
Fully Rezzed
Join date: 31 Oct 2006
Posts: 1,394
12-04-2007 13:43
From: Rock Ryder
Hi guys,

When I logged in this afternoon SL seemed quite slow, everything was taking ages to rezz. That got me thinking about the nature of 'rezzing'.

For example, although a wall in my home had not rezzed yet, and I could see the garden beyond, it was certainly 'there' as any attempt to walk to the garden resulted in a bump, as the invisible wall blocked my way. But on the other hand, an object (TV) which I also knew was 'there' but not rezzed yet, and was scripted (touch event) could not be selected, nor would it bring up the menu on touch that it should. But why? If the wall is 'there' but simply unseen, and bumps me, why isn't the TV 'there' and responsive to touch events?

Rock


The object type and vectors were loaded... the textures were not, hence, you bumped into it, the server has the object 'there', but the textures are not loaded yet. There are times when I can fly though a wall, then after it's 'there' I cannot.
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
12-04-2007 19:58
From: Johan Laurasia
The object type and vectors were loaded... the textures were not, hence, you bumped into it, the server has the object 'there', but the textures are not loaded yet. There are times when I can fly though a wall, then after it's 'there' I cannot.

not quite... all movemnt / physics are handled server side, so you being able to fly through a wall is actually an issue of your client not sending updates back fast enough (probably because it's being drowned by all the traffic from acknowledging rezzing items). as noted above, viewer interaction requires getting the object information from the server, but movement isn't handled that way, it's handled blind, because the av is treated as an object on the sim, and movemnt is fed in a constant stream
_____________________
|
| . "Cat-Like Typing Detected"
| . This post may contain errors in logic, spelling, and
| . grammar known to the SL populace to cause confusion
|
| - Please Use PHP tags when posting scripts/code, Thanks.
| - Can't See PHP or URL Tags Correctly? Check Out This Link...
| -
Deanna Trollop
BZ Enterprises
Join date: 30 Jan 2006
Posts: 671
12-04-2007 23:38
From: Johan Laurasia
The object type and vectors were loaded... the textures were not
This results in gray objects, not invisible objects.
Johan Laurasia
Fully Rezzed
Join date: 31 Oct 2006
Posts: 1,394
12-06-2007 14:46
From: Void Singer
not quite... all movemnt / physics are handled server side, so you being able to fly through a wall is actually an issue of your client not sending updates back fast enough (probably because it's being drowned by all the traffic from acknowledging rezzing items). as noted above, viewer interaction requires getting the object information from the server, but movement isn't handled that way, it's handled blind, because the av is treated as an object on the sim, and movemnt is fed in a constant stream



Well, I've definately been in situations where I've been able to fly into a stucture 'missing' a piece of the wall, then when the wall piece is rezzed, I cannot fly though it. So, maybe if a sim is heavily lagged, a client has freedom of movement until the server 'catches up' with the client.. I dont know.