Viewer 2.0: Another reason to love Imprudence?

… or Emerald, or Meerkat, or CoolViewer, or…

If Tateru is right (and she usually seems to be right about these things), the story goes something like this: a Long Time Ago, when the Grid was young, the Lab dreamed about the Next Big Version of Second Life, under the obvious name Second Life 2.0. As the months went by, though, and SL turned out to be fsking wonderful and wildly popular, and much of the Lab’s time was taken up in keeping the Grid from crashing, rather than aiming at a Big Flag Day when everything would suddenly change, things were introduced more incrementally (the end of telehubs, the introduction of flexies and sculpties, and so on). On the client side, we got Windlight (which is still not done, grr), the abortive attempt to introduce viewer skins (which failed because everyone hated the first one they did), and not much else.

Now apparently the Lab is still thinking in terms of the Next Big Rev of the viewer as a comparatively large and sudden change, under the name Viewer 2.0. What will Viewer 2.0 be like? Hard to say.

Last year when bopping around the official Wiki, I came across the Landmarks and Navigation Project page, which contained among other things a rather painful section called “Food For Thought”, which argued that it might be a good idea to get landmarks out of inventory, and to “deprecate” user picks, apparently based on someone from an outside design company hired to think about Viewer 2.0, observing that:

  • in the ten minutes they’d spent in SL (or there.com, or Metaverse, or maybe it was Club Penguin, who can keep these things straight?), they hadn’t found landmarks and picks useful, and
  • web browsers don’t have them, so they can’t be good.

Also in the Food For Thought section were some thoughts on how to make search in SL more like Web search, since as we all know SL is basically a website, and Web search is perfect for websites.

I winced heavily at this, as would anyone who’s actually used SL and knows how important LMs and Picks are, and (since it’s a Wiki) I went in and made some changes to make it less painfully clueless. Shortly thereafter, someone commented on Second Thoughts that this whole “Food For Thought” thing had been essentially retracted in an SLDEV posting, where the external team says that actual Resis had told them that getting rid of LMs and Picks was an awful idea, so those things were no longer on their list. (Why they were, and are, still in the Wiki is a bit of a mystery.) So I reverted most of my Wiki changes, and just stuck in a note pointing at that SLDEV posting.

The “Landmarks and Navigation Project” page has been pretty much moribund since then, and I haven’t heard the name of that particular outside design company (“VectorForm” I think is was) mentioned again. The Lab hired “Big Spaceship” (apparently another design company, not a children’s cartoon) to improve the user experience, and they applied modern user-centered design principles by adding lots of extra black pixels and decorative design elements to the Second Life website. The decorations were removed or scaled back when Residents complained about not actually being able to see much information because of all the screen space they took up, but I believe the extra black pixels are still there on the homepage, helping save electricity or something.

Last March, the Lab put up a weblog posting about its goals for the next viewer (under the name “Viewer 2009”); they were very vague, on the order of “make it better”, only with UI buzzwords.

Then back last June, Tateru Nino got hold of an early Viewer 2.0 prototype that had somehow found its way onto the public daily-build servers. My main impression of it was that it wasn’t all that interesting, except that it added the ability to organize one’s friends list (a good idea!) and replaced the right-click pie menus with traditional dropdowns (which seemed like a bad idea, in a sigh-whatever sort of way).

Shortly after Tateru’s posting about it, that viewer vanished from the build servers, and as far as I know it hasn’t been heard from again.

Then just the other week, Tateru (again!) posted an interview with M Linden in which (being M Linden) he says various painfully chirpy things about the Viewer presentation at SLCC09 (which I didn’t see) and the new viewer in general, including talking about (sigh) getting rid of the pie menus, and also notably referring to:

the browser-like location bar where you enter a region name (e.g., p squared), hit return and voila you are magically teleported there. It is really slick and every time I use it I smile.

This worries me because:

  • He says “browser-like” as though it’s obviously a good thing,
  • He either doesn’t realize that the slick new thing he’s describing is basically already on the Map dialog, or he’s assuming that the people he cares about don’t know that, and
  • If that’s what makes him smile, I have no idea what else he might think is “slick”.

He also said “I really like the sliding side panel.” Gah. Too much emphasis on form over function imho. He didn’t even say “we’ve done studies, and determined that this sliding-panel design is better than what he have now.” He just “likes”, it. Oh boy.

Over on Second Thoughts, Prokofy Neva opined that the passage I quoted there probably means that the Lab was going to get rid of landmarks as inventory objects, in favor of just cutting-and-pasting in and out of the location bar that makes M smile. I think this is pretty unlikely, myself, because of the apparently very strong negative feedback that VectorForm got when they originally floated that thought. But you never know! I have signed Prokofy’s petition on Landmarks, and I’d urge you to do the same (if only so that M doesn’t see a petition with just a couple dozen names on it, and think “heh, I guess people don’t care about LMs anymore!”).

Apparently some other people don’t like the new viewer nearly as much as M says he does. The Herald (an SL humor magazine) published what is apparently a collection of early tester comments on the current incarnation of Viewer 2.0, and the impression that I get from reading it is that, once again, it’s been designed by some wet-behind-the-ears UI designers, who don’t have any deep knowledge of Second Life or Resi usage patterns, but who do like “slick” stuff like sliding panels and cutesy icons.

Do read it for yourself and form your own opinion on what’s going on. But it made me shake my head.

However! To some extent it doesn’t matter. Viewer 2.0 itself can’t actually get rid of landmarks in inventory, because landmarks being in inventory is a server-side thing. If the Lab is really clueless enough to make LMs hard to manipulate and trade in the mainline viewer, I’ll just keep right on using Imprudence, or Emerald, or any of the other third-party viewers that are owned by people with a bit more practical sense. They will continue to have nice useful landmarks unless the Lab actually breaks them on the server, and there would be so much uproar about that due to broken content that I really can’t imagine them doing that.

This goes back to what I said the other day about third-party viewers: not only do they speed up innovation and unleash creativity, they also allow us to mostly just ignore any silly mistakes the Lab might make with the mainline viewer. It doesn’t entirely free us from the consequences of such mistakes, because some people (and especially newborns) will always be using the mainline viewer, and if it becomes harder to interact with those folks, and harder to help them out, that would be unfortunate. And more subtly, some changes to the mainline viewer could cause cultural changes that would eventually impact all of us (if for instance landmarks were made less useful, landmark-givers would probably become rarer).

But in general I think the third-party viewers are a real help here. While I don’t think they’ll go as far as removing landmarks as inventory items, the Lab will make mistakes with Viewer 2.0. But because no one is locked into that viewer, no one has to suffer from those mistakes if they’d rather not, and since they presumably know this, the Lab may think a bit harder before making random changes based on someone thinking a sliding sidebar looks slick. Even if it’s M Linden who thinks that…

What does your SL look like?

Contributing to a meme I first saw on HeadBurro Antfarm’s weblog, here’s a screenshot of what my SL (at least sometimes) looks like:

What my SL looks like

(Also availlable in larger size.)

Answering the questions that seem to go with the meme:

1. Name: I always have display of nametags and grouptags turned on. Mostly because I always want to be able to see who’s who and what amusing tag they’re wearing (it’s a great icebreaker), but also just because I seldom remember that it can be turned off, or how.

2. Group tags: I usually have some group tag or other showing, and this only leads to embarrassment once in awhile.

3. Chat bubbles: I never turn on chat bubbles, I even tend to forget they exist. Do other people use them? Are they useful?

4. Mini map: On when exploring, or even just moving around, off otherwise. Used extensively for dot-chasing.

5. Camera/Movement Controls: Never have either of these on; I am pretty good with the mouse-based camera and the arrow keys for moving around. And for really tricky navigational situations I can sit on my hoverdisc and use “teleport to camera position”. :)

6. HUDs: I hardly ever wear any HUDs at all. The only exceptions are my swimmer (which hasn’t worked since the latest Havoc update and I really need to upgrade) and Girl Dale’s special elegant-lady AO (which I use only at really grand affairs). Oh, and the occasional trick-skating controller or something. My equivalent of MystiTool / MultiGadget’s AV radar (a HUD thing that shows you who is around) is my magic bracelet’s radar, which is a command-line thing (i.e. I say something in chat on a particular channel, and it answers me via chat-to-owner).

7. Text colours: Pretty much the defaults, although I’m unhappy enough with the current default of “unreadably dark blue” for stuff that I say in chat that I might actually change it.

8. Selection Beam: On, and either the default color or whatever I last whimsically changed it to. :)

9. Hovertips: Always on, on all objects. (But not on land, for some reason.)

10. UI windows: I have the IM window open at the top most of the time, because I seem to be in four or five (or seven or ten) personal or group IMs most of the time. I will occasionally close it, but not usually for long. I have the Local Chat window open on the lower left if there’s local chat going on that I might want to scroll back in. And I have inventory open in the lower right if I’m, um, doing things with inventory. Other stuff gets opened temporarily more or less in the middle. Ah, and the edit box replaces the local chat window when I’m building or inspecting.

11. Search area: What search area?.

12. UI Size: 1.0, I think? And running in a window. I don’t even really know what the “UI Size” control does.

13. Bandwidth and Cache: Bandwidth at 500, I think, and cache at 500MB.

14. Graphics: These vary around alot; I sometimes turn them way down to (try to) reduce lag, or way up to see things pretty. I used to turn off Avatar Imposters, but now I’ve gotten used to the little paperdolls. At friend Bamika’s suggestion I’ve turned Video Memory down to like half of what it was, and that SEEMS (touch wood) to have reduced my really horrible sub-one-fps problems in crowded scenes (yay!).

15. Web links: open in the internal browser, just ’cause why not. I don’t click on web links much anyways.

16. Logging: all chat and IM, and new chats start up with previous log tail showing. The more information the better!

17. Camera constraints: disabled, always.

18. Away: pretty useless, as one always pops out instantly anyway.

19. Busy: I never use it, as (a) I don’t know quite what it does, and (b) I believe that one thing it does is if someone tries to give you something, you don’t get the thing. Hello??

20: Look at recent chatting person: wow, I always forget we have that! That would be a useful feature to use. :)

So in the screen shot, the windows on the sides (local chat and inventory) would often be closed in practice, as would the minimap sometimes, but that’s where they show up when they’re up. And the fact that my camera is somewhere off to the side of the default view is typical; I’m always camming around here and there and around and through.

What does your SL look like?

Lags, Freezes, and RenderGeom

So for a long time I was having occasional whole-machine crashes in Second Life, where I’d get a Blue Screen of Death from Windows, blaming the video drivers for something, or the screen would go black and the machine unresponsive, or the machine would stop responding with the screen just frozen on whatever I was last seeing, or the machine would power down entirely.

Camming around too fast or too far from my AV seemed to increase the crashing, so I slowly got trained not to do that (although ordinarily camming all over the heck is one of my chief occupations).

There were a few days when the entire machine would lock up about half the time that I tried to start up the SL viewer, and the other half the time it would usually lock up or crash within an hour or so. That was horrible, and I was afraid I’d just have to give up SL entirely. Then it stopped doing that for no apparent reason, and as of 1.19 I’ve pretty much stopped having SL-related machine crashes entirely. The viewer itself crashes once in awhile, but not often, and it’s pretty quick to start up again.

Now I’m running 1.20, the former RC now actually Released, and things seem even better. FSP seems higher, and camming and zooming and so forth seem smoother. I’m back to camming all over the place, and I haven’t had any crashes at all yet on 1.20 (knock wood), although I expect that I will eventually. And I like some of the new 1.20 features (stretching images in the image previewer, clicking on names in chat and IM to bring up profiles, being able to be smug about how low my Avatar Rendering Cost is, etc, etc), and I haven’t found anything I really dislike. Yay!

There’s still one very annoying viewer behavior left, though. Sometimes at random (and I think more often when there are alot of AVs around, but I could be wrong about that) my fps (frames per second, the framerate) will drop from some normalish value to significantly less than one; that is, my view of SL will get updated less often than once per second! And it’s not only the view; because of the way the SL viewer is written, it means that it also won’t notice my keystrokes or mouse actions except every second or two (or three or…). Which makes it pretty much impossible to do anything, even chat!

If I turn off prim rendering (control shift alt 9, natch), things get fast again. On the other hand everyone is bald and all buildings and objects vanish. :) So I can chat again and stuff, but I can’t sit on things, and I tend to walk into walls.

My investigations so far reveal that pretty much invariably what’s happening is that the “RenderGeom” part of the viewer has gone insane, and started to eat up huge amounts of time. The figure there shows the timing graphs (control shift 2) during one of these “freezelag” times, both with and without prim rendering on. The top part of the graph is with prim rendering on and a horribly low FPS rate; note that almost the entirety of each horizontal bar is the grey color of RenderGeom. The bottom half is with prim rendering off and a high FPS; RenderGeom is still significant, but not like 95% of rendering time. The bottom part is also what the bars look like, roughly, when I have prim rendering on but I’m not freezelagging. (Note that the chart is in normalized mode, so each bar is the same size, even though the absolute scene rendering time is much much much higher in the top ones.)

Has anyone else experienced similar stuff? Have any clever suggestions? There’s a JIRA on the problem, and it has an internal Linden issue number, but it doesn’t seem to be getting alot of visible attention or work. If anyone has seen any other related JIRA (I did search for “RenderGeom”), a pointer to that would also be greatly appreciated.

Isn’t that all fascinating? :) In other news, I’ve been flying around and exploring and dancing and talking to people and writing scripts and stuff!