Alchemy: cooking up a TPV

Alchemy-logoSovereign Engineer poked me about the beta release of a v3- based third-party viewer going by the name of Alchemy, which was announced to the world on Saturday April 26th, 2014.

Now the name might be familiar to some, give that the pot has been simmering away on this one since around the middle of 2013, and there have been a number of blog posts on the associated website and some discussion over at SL Universe. However, it can take time to pull a viewer together – not to mention maintain it – so much so that Shakespeare himself couldn’t have put it better when he wrote Double, double toil and trouble; Fire burn, and caldron bubble, even if the meaning is a little reversed in this case, and the doubling of toil falls onto the alchemists who are bringing this latest TPV to life.

Nevertheless, the beta release – version  14.4.26.30997 – is now out for Windows, Mac and Linux (all, I believe, 32-bit). I’m not entirely sure which LL code base the viewer is built upon as there is no indication in either the About floater or on the website, but I’m guessing it’s probably the 3.7.4 or 3.7.6 code base, given the presence of things like the recent HTTP updates.

The overall aim of the viewer, according to the website, is to provide: “A Second Life Protocol compatible viewer targeted at stability, performance, and having a well thought out skin and feature set”.

Currently, three active members of the team are listed on the website: Sovereign Engineer (aka Drake, the project lead), Luminous Luminos (aka Cryo) and Inusaito Kanya (aka Lirusaito), all of whom have worked on / contributed to other TPV projects. The viewer also lists Miguael Liamano (aka Tarnix) and Captains Ghost, both of whom (or one or the other) appear to be taking care of the website.

So, what of the viewer itself?

Well, first off, this is a beta release, so don’t expect it to be all bells and whistles and how-do-you-dos. In terms of menus and Preferences, it has everything you’d expect of a v3-based TPV aimed at Second Life, including Havok sub-licensing support (which means this isn’t a viewer aim towards OpenSim as well).

The UI is a clean slate grey colour, slightly darker than the LL viewer, but with opacity set to 0.95 by default for the active floater, and inactive floaters at 0.55. In terms of size and general presentation, many of the floater panels appear more-or-less as they are rendered within the official viewer, although there are some shaper colour contrasts apparent, which can deceive the eye and brain into thinking some of the panels are more cluttered in Alchemy than is actually the case.

An example of this is World Map. There are no significant differences between it and the LL World Map. However, the flatter colours in the Alchemy world map, perhaps aided by the black / dark background to input and check boxes, tricks the eye into seeing the map as being somewhat more crowded than is actually the case when first opened.

Which is not to say all of the floaters are untouched. The build floater, for example, has been reworked to include popular open-source additions – notably Qarl Fizz’s prim alignment tool – and has been reorganised somewhat. The result, assisted by the subtle use of shading, is a more regimented feel to the floater which naturally helps the eye in locating options and option groups.

The Alchemy build floater (r) compared to the original LL viewer build floater: the former has a more regimented, easy-on-the-eye approach to its layout  without making significant changes
The Alchemy build floater (r) compared to the original LL viewer build floater: the former has a more regimented, easy-on-the-eye approach to its layout without making significant changes

When it comes to Preferences, Alchemy again doesn’t stray too far from the LL “norm”, although there are a number of TPV-specific additions, and there are hints of the Things to Come. The latter takes the form of an additional Preferences tab called Interface, which currently comprises three sub-tabs: General, Inventory and Status Bar, all of which have but one or two options for the time being, although more will doubtless follow as the viewer progresses.

Some of the tabs have been re-worked from the LL original; a good example of this is the Chat tab, which both splits-off the notification options into a sub-tab while adding a number of additional check-box options (turning off the typing animation, etc), which are again popular in TPVs. Chat also includes sub-tab for popular chat shortcut commands which Firestorm (and before it, Phoenix) made popular.

Alchemy's updated chat tab in Preferences
Alchemy’s updated chat tab in Preferences

Performance-wise, the view is slick and fast, easily on a par with all current v3-based viewers in terms of fps when running on my primary machine; I was getting 70+ fps at ground level in a region with five other avatars and a lot going on, which was more than adequate for my needs, and even when visiting The Golden Age of Russian Avant-Garde, I found my fps up in the 50s, which kept me perfectly happy during my explorations there.

In support of the viewer, the team have started on a wiki – although this still in the very early stages of development; there is also a JIRA, and the source is available through BitBucket – all of which can be accessed via the Alchemy website, or through links in the Help menu of the viewer itself.

As a beta version of an emerging viewer, anyone trying it out shouldn’t expect it to be packed to the gills with the more common-or-garden open-source / TPV additions (there’s not RLV / RLVa, and no media filter, for example), but as noted above, capabilities will doubtless be added over time as the dev team further refine the direction in which they want to take the viewer. In the meantime, this is a good start, and it’ll be interesting to see how Alchemy develops – and both the pace at which it develops and the direction it takes in terms of its own feature set.

Related Links

Viewer release summaries 2014: week 17

Updates for the week ending: April 27th, 2014

This summary is published every Monday and is a list of SL viewer / client releases (official and TPV) made during the previous week. When reading it, please note:

  • It is based on my Current Viewer Releases Page, a list of all Second Life viewers and clients that are in popular use (and of which I am aware), and which are recognised as adhering to the TPV Policy
  • By its nature, this summary will always be in arrears
  • The Viewer Round-up Page is updated as soon as I’m aware of any releases / changes to viewers & clients, and should be referred to for more up-to-date information
  • The Viewer Round-up Page also includes comprehensive links to download pages, blog notes, release notes, etc., as well as links to any / all reviews of specific viewers / clients made within this blog.

Official LL Viewers

  • The current viewer updated to version 3.7.6.289164 (formerly the VoiceMO RC) on April 21st – core updates: Vivox 4.6.x libraries for improved stability & to address Mac Mavericks issues; fixes for accurately detecting Merchant status & improving Merchant Outbox error recovery. (download page, release notes)
  • Release channel cohorts (See my notes on manually installing RC viewer versions if you wish to install any release candidate(s) yourself):
    • SL Share 2 RC viewer version 3.7.7.289497 released on April 25th –  core updates: abilities to upload Tweets and snapshots to Twitter and / or snapshots to Flickr (download and release notes)
    • Sunshine / AIS v3 RC updated to version 3.7.7.289441 on April 24th – core updates: stability and performance improvements for SSA (download and release notes)
    • Maintenance RC viewer updated to version 3.7.7.289405 on April 23rd – core updates: 54 MAINT fixes, including Mac updates, UI fixes, GPU table updates, crash fixes & performance improvements (download and release notes)
    • Interest List RC updated to version 3.7.7.289461 on April 23rd – core updates: improvements to how the viewer and server work together to know what scene objects to draw (download and release notes)
  • Project viewers:
    • SL Share 2 project viewer removed due to the release of RC version.

LL Viewer Resources

Third-party Viewers

V3-style

  • Black Dragon updated to version 2.3.9.7 on  April 21st – core updates: “Godray” sun ray effect (preliminary – via Tofu Buzzard); BlurLight shader (via Tofu Buzzard); other minor updates (release notes)
  • UKanDo updated to version 3.7.6.27995 on April 22nd – core updates: Preferences updates; revised camera floater; addition of Firestorm pose stand (release notes)

V1-style

  • Cool VL viewer updated on April 26th, as follows: Stable: version 1.26.10.19; Experimental: version: 1.26.11.19; Legacy: version 1.26.8.56 – core updates: please refer to the release notes (downloads; release notes)

Mobile / Other Clients

  • No updates.

Additional TPV Resources

Related Links

SL projects updates 17/3: TPV developer meeting

A TPV developer meeting took place on Friday April 25th. The core items discussed in the meeting are reported below, with timestamps in the relevant paragraphs indicating the point at they are discussed in the video embedded here. My thanks as always to North for the latter.

Release Candidate Status

Interest List, Sunshine and Maintenance RC Viewers

[01:02] All of these RC viewers have been rebuilt during the week to use the current release viewer code base (version 3.7.6.289164, formerly the VoiceMO RC), and all look to be performing reasonably well. However, none have been in the release channel for long enough for significant stats to be gathered.

SL Share 2

[01:26] The SL Share 2 viewer was issued as a release candidate viewer on Friday April 25th, version 3.7.7.289497 (download and release notes). This viewer provides options to upload Tweets and snapshots to Twitter and / or snapshots to Flickr, and includes optional post-process filter capabilities which can be applied to snaps being uploaded to Flickr, Twitter and / or Facebook. See my review of the project viewer for further details.

Snowstorm Viewer

[02:30] The next Snowstorm viewer, featuring third-party code contributions from the open-source community (including Ima Mechanic’s BUG-1831 LSL syntax highlighting work, developed with the help of Cinder Roxley and Oz Linden), is now with LL’s QA team, and it is hoped this will be appearing as a project viewer in week 18 (week commencing Monday April 28th), assuming no issues are uncovered during the QA process.

Oculus Rift Viewer

[04:05] Other than bug fixes, the  current Oculus Rift closed beta viewer is not expected to go through any significant updates for the time being. However, it is anticipated that there will be further work on the viewer once the Lab has access to the new Rift SDK, and that this may well be “very significant”.

Zipper Project Viewer

[04:30] It is anticipated that the faster installation “zipper” viewer (currently version 3.7.5.288507 – download and release notes – dated March 28th) will become a release candidate viewer “very soon”.

Mac / Cocoa Update

[06:48] There is still no single project at the Lab which is focused on Mac Cocoa issues. However, fixes are being developed and are starting to appear as a part of overall viewer development and release process.

The current release viewer (version 3.7.6.289164), includes a Vivox update to the 4.6.x libraries, and so should resolve Mavericks-related voice issues (among other voice issues). Also, the Maintenance RC (version 3.7.7.289405) has a number of Mac / Cocoa fixes, including: MAINT-3135 “Cocoa Viewer: Mac Maximizing the viewer leaves garbage on the screen”; MAINT-3288 “MAC – Fullscreen mode issue in Viewer 3.6.7 (281793)”; MAINT-3506:  “Copy & Paste on mac viewer often generate undesired special characters at the end of the pasted line sometimes leading to crash “; and MAINT-3642 “Mac viewer can no longer export textures to TGA format”. However, as there is no over-arching project for Mac / Cocoa fixes, it is a case of checking the release notes for new RC and project viewers as they appear.

The infamous ALT-camera Cocoa bug (see FIRE-12241 (MAINT-3171) is an issue the lab has been looking at but have so far been unable to work out  why it is happening. Oz Linden invited TPV developers to consider poking at it and contributing code if they felt it is something they might be able to resolve.

Webkit Update

[12:01] Webkit is a third-party library used within the viewer for a number of tasks. For example,  it powers the built-in web browser, and is used to display profiles (unless you’re using a viewer supporting legacy profiles). It is also used with Media on a Prim (MOAP) and many in-world televisions.

There have been an increasing number of issues with webkit. The libraries used within SL are out-of-date, for example, something which has caused the Lab and TPVs a considerable amount of pain (see BUG-4763 and FIRE-12642, and FIRE-11057). Given these problems, Monty Linden has been focusing on trying to improve matters, notably by creating a new lqtwebkit library repo, which he describes as “extremely experimental”.

Firestorm have re-worked webkit for themselves, updating to version 5..2.1 for Windows, which seems to be resolving issues. They’re working to do the same with Linux and Mac, although there is a problem with the latter where buttons embedded in a Flash video will not work.

As reported last time, a further problem here is that the qtwebkit (on which lqtwebkit is based) has been deprecated by QT, so the Lab is faced with a decision as to what to do going forward. One option may be to go with CEF, but which direction the Lab will take has yet to be decided.

SL projects updates 17/2: Group chat, group bans

Server Deployments week 17 – recap

There was only on server deployment in week 17, and that was to the Magnum RC. It comprised the same server maintenance package as deployed to it in week 16, but with an additional fix for BUG-5763 (“AGENT_MOUSELOOK flag is often incorrect when llGetAgentInfo() is called within control() event”). There have been no reports of further issues, so it is anticipated that this package will be deployed to the other channels in week 18 (week commencing Monday April 28th).

SL Viewer

Updates

On Thursday April 24th, the Sunshine / AIS v3 RC viewer updated to version 3.7.7.289441, (download and release notes), while the SL Share 2 project viewer updated to version 3.7.7.289468 (download and release notes).

LSL Support for Materials

This has been an oft-requested feature, and has been under informal review within the Lab. However, some confusion was caused when the release notes for the SL release viewer version 3.7.6.289164 (promoted on Monday April 21st, and formerly the VoiceMO RC), apparently listed MAINT-3531 (“Feature Request: LSL support for material texture maps”) as resolved.

However, this is an error. So far, there has still been no actual work on the capability.

Group Chat Optimisation

There was a further test of Simon Linden’s ongoing group chat optimisation work at the Server Beta meeting on Thursday April 24th. This followed the usual pattern of multiple messages being sent by those at the meeting across two chat groups, with people sending message from different regions as well as Morris, where the Server Beta meeting is held. From my own perspective, I had no noticeable issue in switching between local chat and one of the group chat sessions, even with a lot of messages passing through the latter, and didn’t appear to result in any message loss or significant delay.

However, the second group did cause the viewer to lock-up for up to 20-30 seconds at a time when switching to it, and appeared to be linked to the fact that one test participant was repeatedly pasted a veritable wall of text in to the group chat (which, while pushing the viewer, was probably not representative of how most people engage in group chat sessions). Both Simon and Maestro Linden believe the extended pauses were viewer-side, rather than anything in the back-end chat servers, with Maestro observing, “My guess is that the typesetting of all that text, profile icons, etc., is taking a lot of time.”

There’s still no news on when testing with larger groups will commence on Agni, although Simon hopes this will be “soon”.

Group Bans

Baker Linden, ironing-out the remaining issues with Group Bans
Baker Linden, ironing-out the remaining issues with Group Bans

Baker Linden has been working on the group ban functionality – notably the viewer-side code, although there have been some server-side updates as well. He had a new test viewer available for people to poke at during the Server Beta meeting, and which includes the latest updates found in the release viewer, as well a various fixes.

One of the latter is a fix for the issue whereby only the first name on a list of people being invited into a group would be checked to see if that person had been previously banned (and thus prevented from joining); anyone else further down the list would had been previously banned would be allowed to re-join on receiving the invitation.

Baker also noted a message has been added as well for these situations, “so you should get a notice saying some people in your invite list are banned from the group and weren’t sent an invite,” he said prior to testing. “I’ve noticed this to be a pretty sporadic thing, but I don’t think it’s something I can easily fix — the code showed that it was sending every time.”

While no formal testing was carried on with the latest updates to the viewer, it was noted that there appears to be an issue with the people picker option, in that it failed to locate people for banning – even when they were standing alongside the person with group ban powers. This will doubtless be looked into further.

Those wishing to test the group ban functionality can do so by downloading the test viewer and running it on Morris on Aditi.

SL projects update: 17/1: server, viewer

Running slightly behind in weekly updates due to the small matter of RL house decorating. I long for the day when I can take a colour swatch and simply drag my choice from the swatch onto the wall and see the wall instantly painted…

Server Deployments: week 17

The Main (SLS) channel and the LeTigre and BlueSteel RC channels all have no scheduled deployments for the week.

On Wednesday April 23rd the Magnum RC received the same server maintenance package as deployed to it in week 16, but with an additional fix for BUG-5763 (“AGENT_MOUSELOOK flag is often incorrect when llGetAgentInfo() is called within control() event”). This bug was a regression in the original update, and which affects certain guns that only allow some actions when they think the user is in Mouselook and certain vehicle that change control behaviour when in Mouselook. Early indications are that the fix has been successful.

SL Viewer Updates

On Monday April 21st, the VoiceMO release candidate viewer, version 3.7.6.289164 ((download page, release notes)  was promoted to the de facto release viewer. This viewer pulls in Vivox 4.6.x libraries instead of 4.5 for improved stability and to address Mac Mavericks issues as well as fixes for accurately detecting Merchant status and improves recovery for Merchant Outbox errors. It should also removes the Windows crash reporter pop-up notification.

The Maintenance RC updated on Tuesday April 22nd to version 3.7.7.289405 (download and release notes). This RC includes over 50 MAINT category fixes broadly covering:

  • Multiple fixes to Mac viewer
  • GPU table updates
  • Fixes in Recent tab, Chat, LSL editor, land management, etc.
  • Help system update
  • Crash fixes
  • Performance improvements

The interest list RC updated on Wednesday April 23rd to version 3.7.7.289461 (download and release notes).  I’ve still not found the time to have a play with this viewer.

The sunshine RC should update as well, most likely before the end of the week. Please refer to my current viewer releases page for updates on SL viewer versions and TPVs listed by LL.

STORM-1831: LSL Syntax Updates

STORM-1831 is the work mainly undertaken by Ima Mechanic (with assistance from Oz Linden and Cinder Roxley) to improve syntax highlighting in the viewer’s LSL editor by allowing the viewer to obtain the information required for syntax highlighting directly from the simulator the viewer is connected to. This should eliminate issues with the current manually updated files used to manage syntax highlighting falling out-of-synch with new LSL syntax as new functions and parameters, etc., are added. Folded-in to this work should also be a change to the source code text allowance in the viewer’s LSL editor, increasing it from the current 65,000 characters to around 256,000.

The server-side support for this commenced deployment in week 2, but the viewer work has been subject to delay for a variety of reasons (not the least of which has been the number of RC and project viewers in the release and various project channels). However, it is hoped that a project viewer with this work (and possibly other STORM contributions) will be appearing either this week or in week 18, and Oz hopes to see some testing carried out using it once it does so.

 Group Chat Optimisation

Little to report on this, other than the Lab is “working out some kinks”. Further details on the status of Agni testing may be available at the Server Beta meeting.

Black Dragon viewer 2.3.9.7: with added “Godrays”

Blackdragon logoNiranV Dean released Black Dragon 2.3.9.7 (or 3.7.5.31492, if you go via Help > About Black Dragon / the log-in splash screen) on Tuesday April 22nd.  The release marks Black Dragon’s completion of the third-party viewer self-certification process and inclusion in the Third-party Viewer Directory.

The release brings Black Dragon up to parity with the Lab’s 3.7.? code base (I assume 3.7.6, but this is not made clear in the release notes), and includes a number of updates listed as:

  • Added: ‘Godray’ effect, without switch yet
  • Added: Machinima Background texture
  • Changed: Disabled Show Title info in Sound tab
  • Changed: Updated to Tofu’s latest BlurLight shader. Doesn’t use newly added RenderShadowGaussian…
  • Changed: Allow minimum Sun Size down to 0.01.

Of these, the “Godray” addition is perhaps the most interesting, adding as it does rays of sunlight to the sky which, under certain lighting conditions appear to be very effective. The option is still a work-in-progress, and so there is currently no toggle / switch in the UI for enabling / disabling it (it is off by default) – expect one to be added in due course as the work is finished-off.

Tofu Blizzard's "Godray" effect in Black Draon 2.3.9.7 (via the Black Dragon 2.3.9.7 release notes)
Tofu Blizzard’s “Godray” effect in Black Dragon 2.3.9.7 (via the Black Dragon 2.3.9.7 release notes)

However, for those comfortable with editing shader files, Niran has provided notes on how to enable the function via a thread on SL Universe. I confess, the instructions didn’t work for me – which is probably more down to operator error than anything – but the images supplied by Niran look pretty impressive, as does a video he’s produced of the capability, which comes from the mind of Tofu Buzzard.

Niran is currently working on a UI refresh designed to offer a minimalist approach to displayed information while retaining ease-of-use and maximising the in-world viewing area. No time frame for this appearing in a release is available at present, but once it does appear, I’ll hopefully be able to provide a more detailed review, together with a better look at the “Godray” functionality. For now, and in the case of the latter, I’ll leave you with Niran’s video.

Related Links