linking object limits?
|
Celerity Epoch
Genius in absentia
Join date: 13 Nov 2002
Posts: 179
|
11-27-2002 10:20
is there a limit to the number of objects you can link at once? Or to how many you can move at once?
Yesterday I was working on my tower, it has the following basic parts :
4x Stone section ( 2 walls, 3 floors, roof ) total 24 objects 4x Glass Sections ( 2 walls, 3 floors, roof ) total 24 objects 3x Interior floor sections (4 objects per ) total 12 objects
grand total : 40 objects.
trying to select all individually wasn't hard, but no matter how I tried some objects would always be left behind on the move. So I tried linking things, no luck with large numbers.
so I tried makint 1 stone section a linked group then repeated until I only had 11 items, at which point it worked.
overall it seemed a little wonky.
|
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
|
12-04-2002 21:15
I think the numerical limit for linking objects together is 128. However, there are also limits for how far away objects can be when linked, so selecting a large collection and trying to link them all may fail for some of them. Note, that this failure can be intermitant, because it depends on how far the objects are from the "root" object (root = the last one you selected ==> if you selected them with drag-select then the "last" one is not obvious).
As to selecting lots of objects and trying to move them all at once... the move may cause a burst of network packets... if you lose packets going to the server then the objects will not move (unlikely if not impossible)... if you lose packets coming from the server then the objects will appear to have not moved but may have actually moved (more likely). Watch the little packet-loss indicator in the lower-right corner of the screen -- it should flash when lost packets are detected.
To figure out where the packets were lost you can: (a) try to bump into one of the objects that should have moved... if you can travel through it then it probably moved but your client lost an update packet... select it and deselect ==> it should pop to where it really is on the server (b) log out and log back in... all of the objects should appear in at their actual locations as the server knows them
HTH
|
Celerity Epoch
Genius in absentia
Join date: 13 Nov 2002
Posts: 179
|
distance from root.
12-05-2002 07:16
wouldn't it make more sense to make it distance from the local origin? all movement is relative to that point isn't it?
|
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
|
12-05-2002 22:17
quick way to know the root after a drag select, for those who haven't encountered this, is to hold shift and deselect the object you want as the root, and then to (still holding shift) reselect it.
_____________________
i've got nothing. 
|
Pat Murphy
The Wandering Wizard
Join date: 2 Dec 2002
Posts: 142
|
01-06-2003 20:10
Trying to link a 16 x 5 array of light source sphere's. It always leaves 6 behind. Also undo behavior while linking objects is completely unpredictable. I've tried individually selecting and drag selecting, same thing.
-Pat Murphy
_____________________
That's how they showed their respect for Paddy Murphy That's how they showed their honour and their pride; They said it was a sin and shame and they winked at one another And every drink in the place was full the night Pat Murphy died. -Great Big Sea
|
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
|
01-06-2003 20:28
also, my elevator home, is well not working it says "Alert: Set physics disallowed due to too many primitives" when did this happen? And why wasn;t i notified  btw it is 33 objects
_____________________
i've got nothing. 
|
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
|
01-07-2003 01:15
Pat... your light sources cannot be arbitrarily far from each other when linking them together. I'm not sure how close they have to be, but you should make sure that the _last_ light you select is somewhere in the middle of all of them... so as to reduce the maximum separation of the lights from the "root" object (i.e. the last primitive that was selected = the "root" = the primitive that highlights in yellow instead of light blue).
Nada... sorry about the limit on the number of primitives in dynamic objects. This is probably a hold-over from some limits we set a while ago to prevent very complicated objects from dragging the physics engine down. We might be able to raise the limit now... I'll experiment and see what can be done.
|
Charlie Omega
Registered User
Join date: 2 Dec 2002
Posts: 755
|
01-07-2003 02:08
From my experiences I've noticed that the max distance for linked objects is 40m. I have not been able to link further then that regardless where in the chain the parent object is. I learned this from linking 10x10 floor panels. Also when 4 10x10 floor panels are linked I am only able to have another row of 4 10x10 panels no more than this.
So I found that total surface area on a 2 dimensional plane is 40x20. I have not tried going the 3rd dimension yet.
|
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
|
01-07-2003 08:21
seriously though, it must of just gone into effect, since my elevator was working on january fourth when i held an impromtu scripting class. if i have to trim the elvator down, no biggy, or i can come up with some neat work around where objects are tracking each other, so no worries.
_____________________
i've got nothing. 
|
Pat Murphy
The Wandering Wizard
Join date: 2 Dec 2002
Posts: 142
|
01-07-2003 08:38
Andrew, My objects are all within a 1.5m by 0.5m area, and I've tried linking just the light sources and I've tried linking all the light sources to another object which is centered below the light sources and covers the entire area. None of this works it still leaves objects behind.
Incase you are wondering, I'm making a scrolling LED sign, it relies on llMessageLinked to tell the children (the LEDs) wether they should be on or off. It's pretty cool, it uses the individual bits of an integer to represent each LED, 1 int per row of 16 objects. And it operates completely dynamically, the message is just a string that can be changed at any time. The only problem (besides the linking) is the time it takes to look up the characters. Right now it scrolls through one list looking for the specified character, when the character is found it uses it's index to look up the corresponding codes in other lists. The problem is the initial list search, it takes for ever. If I can do string comparisons, I could sort the character set list, and use a binary search. Or I could do a way with the list entirely and do a huge series of if statements. The problem is I want to be able to easily add characters. And if I have to sort it each time that would be a nuisance.
Anyway, I'll demo it in a few days when I get it working, but anybody who can give me a hand, with linking or otherwise, the help would be greatly appreciated.
-Pat Murphy
_____________________
That's how they showed their respect for Paddy Murphy That's how they showed their honour and their pride; They said it was a sin and shame and they winked at one another And every drink in the place was full the night Pat Murphy died. -Great Big Sea
|
Charlie Omega
Registered User
Join date: 2 Dec 2002
Posts: 755
|
01-07-2003 11:33
Drop me a landmark and when im not manning the nightclub I can help. Or bring your project by the nightclub anytime Ill help with what I can. Also it is seeming to be a popular place to congregate now. Maybe one/some of the welcome loiterers can help also   ....
|
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
|
01-07-2003 13:25
Pat
Another way to do it would be to make a texture for each letter and number that you want to display on the LED (as well as an all-on and all-off texture), put them in the object's inventory, and swap textures when you want the dipsplay to change.
This is how the counters work on the Hot&Not counters in the disco hall. I think you could even examine the scripts on the counters as an example.
The advantage of this solution is that it is cheaper in all respects: $, bandwidth, client frame-rate, script operation, etc.
Otherwise, you may find the sheer number of lights in the object will tax your funds into the red in a very short time.
|
Andrew Linden
Linden staff
Join date: 18 Nov 2002
Posts: 692
|
01-07-2003 13:28
Nada
I can't imagine how the limit could have changed recently. We try to be very careful about changes to the current release, and I doubt such a change would have been sanctioned.
It's a mystery as to why it has only started to afflict you now, unless the warning is incorrect. Come to think of it... that is far more likely. I'll look into it.
|
Pat Murphy
The Wandering Wizard
Join date: 2 Dec 2002
Posts: 142
|
01-07-2003 18:35
Andrew, I considered that, and for practical purposes I will probably make a scrolling sign like that as well, but for sheer coolness I want this LED thing to work.
-Pat Murphy
_____________________
That's how they showed their respect for Paddy Murphy That's how they showed their honour and their pride; They said it was a sin and shame and they winked at one another And every drink in the place was full the night Pat Murphy died. -Great Big Sea
|
Pat Murphy
The Wandering Wizard
Join date: 2 Dec 2002
Posts: 142
|
01-07-2003 23:02
Well, the LED sign is up and running. I sped up the character loading by using the library llListFindList call instead of looping though. I got all the objects to link by linking them in small groups and then linking them all together. The only problem is that from time to time the LEDs go all out of whack, but it fixes itself if you click on it. I think it's a client problem, like the client isn't getting all the update information about the colors. Anyway, of courses it definitely isn't practical. It costs 810$ just to rez (and that is with the objects as non-lightsources), and there are bandwidth spikes each time it shifts. But hey, it's a really cool script.
-Pat Murphy
_____________________
That's how they showed their respect for Paddy Murphy That's how they showed their honour and their pride; They said it was a sin and shame and they winked at one another And every drink in the place was full the night Pat Murphy died. -Great Big Sea
|
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
|
grandfathered, or scripted
01-08-2003 17:14
I think my elevator house may be grandfather in, because i pulled one out of my invenotry and it acted fine, i didn't have time to see what would happen if i turned the physics off manually, so i am not sure, but... that is what i think.
_____________________
i've got nothing. 
|
Nada Epoch
The Librarian
Join date: 4 Nov 2002
Posts: 1,423
|
01-10-2003 09:58
i think that my object being physical may be an instance of the scripts being able to bend the rules... i haven't tested it, and i will not be able to tonight, someone else mind doing it and posting the results. All you need to do is make a linkked object of 33 objects and attach this code. default { state_entry() { llSetStatus(STATUS_PHYSICS,TRUE); } }
if it works, you will only know if you look at the objects panel in build mode, the physics box will be checked. If it doesn;t work, you will get spamed with a message that tells you there are too many objects.
_____________________
i've got nothing. 
|
Philip Linden
Founder, Linden Lab
Join date: 18 Nov 2002
Posts: 428
|
01-16-2003 10:30
This is an amazing achievement!
With a bit of work, I'd like to put something like this into the new user inventory for use on houses, etc.
I'll post some details in the projects section, and offer some $$ for a finished object.
Very Cool!
|