Kokua and Black Dragon go 64-bit in Second Life

As the Lab’s 64-bit Alex Ivy viewer progresses through release candidate stage and the point where the code is regarded as a stable enough for TPVs to start picking up, viewer developers having been doing just that.

First out of the v5-stage gates at the start of September was Nicky Perian with 64-bit versions of Kokua for Windows and Mac. Towards the middle of the month, NiranV Dean issued a 64-bit version of Black Dragon for Windows.

It should be noted that in neither case are the provided 64-bit viewers the final, polished article. Nicky has clearly labelled his versions as test releases, which Niran is referring to his as an alpha series of releases.

I’ve not driven either viewer to any great extent, so the following is more informational than anything else. Please refer to the links at the end of this article for all download links to the viewers.

Kokua 64-bit

The Kokua 64-bit builds come in both RLV and non-RLV versions. Each is functionally identical to the other, with the exception of … RLV inclusion.  For convenience, I downloaded the 64-bit Windows version with RLV. all of the versions are based on the Lab’s Alex Ivy code base.

The Windows viewer builds include the SL Launcher .EXE, designed to ensure the correct version of the viewer (32-bit or 64-bit) is installed on your PC when updating the viewer. However, at this point, neither actually utilises it directly: the installation short-cut for the viewer points directly to the viewer .EXE. As the Launcher is also intended to start / terminate the viewer’s crash logging, and given – if I recall correctly – Kokua utilises the Lab’s viewer update process, I assume use of the Launcher may / will be folded-into the Kokua’s 64-bit Windows flavours in the future.

Beyond this, the viewer is functionally identical to the last full release of Kokua (5.0.6.41208), with additional updates from the more recent LL viewer releases since that date. This means the 64-bit viewer now includes the Asset HTTP updates from the Lab and the current release version (5.0.7.328060). I understand the 32-bit versions of the viewer have also been merged with these updates, but have not been formally released.

Nicky does note that there are some issues with the Mac 64-bit version of the viewer, some of which prompted an update following an initial release of the test viewers. Some of these have been logged via JIRA with the Lab (such as BUG-41395). For those downloading and trying the viewer, he particularly requests that feedback be given on notifications and taking / processing snapshots, which have caused noticeable issues in merging the code (obviously, feedback on other aspects of the viewer and problems encountered is also welcome).

Black Dragon 64-bit

Black Dragon currently has the SL Launcher removed. This generates a warning on starting the viewer, advising users to run things from the Launcher and to update short-cuts accordingly. However, it doesn’t interfere with the viewer’s operations.

The 2.9.0 64-bit version incorporates Niran’s more recent updates up to his 32-bit 2.8.2 release. For those with hardware which can handle it, Black dragon continues to offer a graphics experience several points above other viewers. For some people, this is somewhat mitigated by the viewer’s menu system presentation, which can take a little getting used to but really isn’t that hard to steer around. The large number of graphics options exposed / added can be a little frightening to those not into graphics tweaking – but again, there’s no real need to play around with any you’re not familiar with when adjusting settings.

In addition to the 64-bit iteration, the viewer includes further refinements to SL shadows, including an attempt to deal with a particular annoyance for photographers: disconnected shadows. That is, shadows which just fall short of actually visually connecting with the object casting them, and which at time no amount of jiggling with settings such as shadow quality and/or shadow bias can fix. A further change is that HTTP pipelining has been disabled within the viewer.

Rough-and-Ready Performance Notes

The benefits in using 64-bit versions of the viewer – for those who can – are much better memory utilisation and potentially a reduced crash rate and, potentially, a boost in overall viewer performance. In terms of the latter, and while direct comparisons are always subjective (and dependent upon some factors outside of your control, such as the complexity of any other avatars in your field of view / in the region, etc), I carried out some very rough-and-ready tests using ~Neive~ as my testing-point, and with the viewers all set-up according to my review system specifications.

Baseline test location: ~Neive~ 199, 155, 27, facing west, with three (or in the case of the Black dragon 32-bit version test, four) avatars within draw distance. All measurements were taken after setting the preferences in each viewer, and clearing object and texture caches before doing a fresh load to ensure each viewer had the scene locally cached. I then launched each viewer in turn, let the scene load from cache, measured, shut-down and launched the next & repeated.

Viewer
FPS Static FPS panning left / right
Firestorm 64-bit 5.0.7.529121 25 22-28
SL Alex Ivy 5.1.0.508209 38 33-38
Kokua 32-bit 5.0.6.41208 23 20-23
Kokua Alex Ivy 5.1.0.42217 37 34-37
Black Dragon 32-bit 2.8.22 36 33-38
Black Dragon 64-bit 2.9.0 Alpha2 45 33-46

Notes:

  1. Firestorm 64 is currently not using the Lab’s 64-bit code base, and so might be considered an indirect comparison, rather than a like-for-like code base comparison.
  2. Black Dragon has many additional exposed / tweaked graphics options, and a number of defaults somewhat different to the default viewer. In measuring, I attempted to tweak the viewer back more towards the default viewer.

Also note that the static fps numbers are a median based on fluctuations in numbers; the panning figures represent the average high/low fps values when panning. All measurements taken via the Stats floater (CTRL-SHFT-1) to ensure consistency of displayed floaters in the viewer.

As indicated towards the top of this article, I’ve not really played that much with either viewer, so cannot comment in-depth on overall performance  / stability, etc.

Links and Downloads

Advertisements

Kokua viewer: looking to the future

On Tuesday, July 25th, I received an e-mail from Nicky Perian, lead developer for the Kokua viewer. Sent to the Kokua Dev mailing list, the notice was also later posted to the Kokua website.

In short, Nicky will, in October – and for very good reason – be stepping back from a direct, hands-on leadership role in maintaining Kokua, and he is hoping that those in the community who are able to support viewer development will step forward to fill the void and take responsibility for helping to ensure the viewer continues into the future.

The notice – which I’m sure Nicky will have no problems in seeing reproduced here reads in full:

Hello all,

This coming October I will turn 75 years old. I intend to have minimal (consulting only) involvement with Kokua after that. Hopefully, someone will take over the project or it will fade away.

Between now and then I intend to cut some routine building and updating. The first cut will be the RLV build of Kokua OpenSim followed by RLV build of Kokua Second Life then NoRLV build of Kokua OpenSim.

That will leave The NoRLV build of Kokua Second Life version.

I want to thank all who have contributed to Kokua including other third-party viewer project developers and those that work for Linden Lab.

I will try to complete the Alex Ivy integration. Kokua Project Alex Ivy Windows versions can be
built and tested now.

Test down loads can be found at
https://sourceforge.net/projects/kokua.team-purple.p/files/Kokua-Projects/
The source code for Second Life resides at:
https://bitbucket.org/kokua/kokua-sl-64
The source code Open Sim which is at start state with the last commit 5 months ago resides at:
https://bitbucket.org/kokua/kokua-os-64

Nicky has worked tirelessly to develop and maintain Kokua, and other, the viewer has been one of the first v5 style viewers to update with features and code from Linden Lab, as well as maintaining strong support and parity with Marine Kelley’s RLV. While Kokua hasn’t been my primary viewer, I have always found it to be stable, reliable and straightforward to test as updates have been released. As such, I’d like to thank Nicky for all of his work in keeping the viewer and the project going.

Should anyone fancy taking on the work with Kokua, individually or as a team, as well as following the links to the repositories as Nicky has provided, do please contact him and discuss opportunities and intentions with him so that if more than one person does step forward, you can all be put in proper contact with one another.

I’ll of course continue to cover the updates Nicky is planning, and will cover any future updates and releases of the viewer and the project hopefully rolls into the future.

Viewer updates: Kokua 5.0.6 for Second Life and RLV 2.9.21.3

In week #21, both the Kokua viewer for Second Life and the Restrained Love viewer updated to achieve parity with the current SL viewer release (version 5.0.5.326444 at the time of writing).

Kokua for Second Life updated to version 5.0.6.41208 (release notes) on Friday, May 26th, 2017, while the Restrained Love updating to version 2.9.21.3 (release notes) on Thursday, May 25th.

As the core changes to both viewers are more-or-less the same in terms of their parity with the official viewer, this review provides a combined recap of these updates for both viewers, from the oldest to most recent. Kokua users please note that the documented changes do not necessarily apply to the Kokua OpenSim version.

Custom Folders for Uploads

Kokua 5.0.6.41208 for Second Life and Restrained Love 2.9.21.3 users can now select the inventory folders into which uploads – images / textures, sounds, animations and mesh models –  are saved by default (rather than having all textures + images go to Textures for example).

To set a custom folder for an upload type:

  • Go to Inventory and right-click on the desired folder.
  • Select Use As Default For. This opens a sub-menu of upload types (shown on the right).
  • Click on the type of upload you wish to always save to that folder.

Note that this only applies to uploads: images / textures, mesh models, etc., received via transfer or will still go to the their “default” system folders (so a texture received via transfer will still go to Textures, for example).

The folders set for uploads can be reviewed via the new Preferences > Uploads tab.

The new options shown for selecting a default destination folder for uploads (left), and the new Upload panel in Preferences, which lists the locations (right) – via Kokua, click for full size, if required

Block List Tally and Grid Status Button

Kokua 5.0.6.41208 and Restrained Love 2.9.21.3 now have display a tally of those blocked in the viewer (People Floater > Blocked), and include the Grid Status button which can be added to any toolbar position in the viewer window, providing direct access to Second Life grid status updates, which are displayed in the viewer’s built-in browser.

Avatar Complexity Rendering Updates

These releases of Kokua and Restrained Love include a number of improvements to avatar complexity rendering. Full details of these changes can be found in Second Life Maintenance RC: Avatar Rendering updates and more, and are summarised here.

  • The Options for how another avatar is rendered are now Default (i.e. in accordance with your avatar complexity threshold setting); Always (i.e. always render the selected avatar) or Never (i.e. permanently render them as a grey imposter). These options have also been moved to a sub-menu on the right-click Avatar context menu.
  • Following Firestorm’s lead, adjusted settings for avatar rendering will now persist across log-ins for the viewer, until either reset or your settings are cleared by a clean install or similar.
  • There are two new options for Avatar Complexity, located on the Preferences > Graphics tab.
    • The first is a check box, Always Render Friends, which is pretty much self-explanatory: when checked, friends will always fully render, regardless of the viewer’s Avatar Complexity threshold.
    • The second is an Exceptions button, which adds a further level of control for how other avatars – including friends – are rendered by the viewer.
Left: the new render options sub-menu in the Avatar context menu (seen when right-clicking on another avatar). Right: the new Preferences > Graphics tab options for avatar rendering (see below for the exceptions button). Images via Kokua – click for full size, if required

Note that Kokua’s pie menu does not display the “Default” option correctly when used on other avatars. Instead, the option is labelled as “>”. As per Nicky’s comment below, this is now fixed.

Rendering Exceptions

The Exceptions button described above enables named avatars to be either fully or never rendered by the viewer, regardless of any other avatar rendering settings. It comprises two new floaters: the exceptions list (Avatar Render Settings, below left) and the search floater (Choose Resident, below right), accessed by clicking the “+” button on the exceptions list and then selecting whether you want to always or never render the avatar you’re about to choose.

Rendering Exceptions allows you to select individual avatars (e.g. from those close to you or your friends list or via search) you always / never want to render, regardless of your other avatar complexity settings. Via Restrained Love Viewer.

It is possible to update how an avatar in the exceptions list is displayed by right-clicking on the avatar’s name and selecting the required option (Default, Always, Never) from the displayed drop-down list.  Note that “Default” will remove the avatar’s name for your exceptions list and display them in-world in accordance with your overall Avatar Rendering Complexity setting.

Changing how an avatar in the exceptions list is rendered. Via Restrained Love Viewer

Continue reading “Viewer updates: Kokua 5.0.6 for Second Life and RLV 2.9.21.3”

Kokua and Restrained Love go Bento in Second Life

Project Bento - now a part of the Kokua Second Life viewer and the Restrained love Viewer
Project Bento – now a part of the Kokua Second Life viewer and the Restrained Love Viewer

Kokua and Restrained Life have become the latest viewers to update to v5.x status, with release of versions support the Project Bento code.

Kokua 5.0.0

Kokua 5.0.0..40327 for Second Life (release notes) appeared on Saturday, December 17th, bringing with it Bento rendering support, plus additional fixes and improvements:

  • FMOD Ex audio streaming libraries updated to version 4.44.64.
  • Avatar texture display now works.
  • Pie menu updates.
  • Pie menu “Sit here” response no longer ignores llSetSitText(string), and should now display the defined scripted target prompt (e.g. “Ride” or “Fly”, etc., rather than “Sit Here”).

Just in case there is anyone who missed it, Project Bento adds numerous new bones to the avatar skeleton to improve and enhance support mesh avatars (Bento does not work with the Second Life system avatar). This makes it easier to create and animate things like additional wings and limbs, and offers the opportunity for greater facial animations with mesh heads and faces, and even finger manipulation on mesh hands.

As with all Bento viewers, the visible viewer update is to the avatar menus (both right-click context and pie menu in the case of Kokua), where the Reset Skeleton and Reset Skeleton with animation options can be found.

Reset Skeleton options on Kokua 5.0.0 on the right-click context menus for other avatars (l) and your own avatar (r). With the pie menus they can be found under More > More > Reset (other avatars) and Appearance > Reset on your own avatar
Reset Skeleton options on Kokua 5.0.0 on the right-click context menus for other avatars (l) and your own avatar (r). With the pie menus they can be found under More > More > Reset (other avatars) and Appearance > Reset on your own avatar

These options have been added because sometimes, when changing between one mesh avatar and another, the basic SL avatar can become deformed, resulting in it looking squished, stretched, caught between two looks, or something else. This problem is generally the result of race conditions when the avatar’s appearance is being updated, and both of these buttons are intended to correct the problem  – the option to reset animations being intended to fix deformations which may be due to animations also kicking-in incorrectly / at the wrong time as well, which may cause an avatar to deform.

Restrained Love Viewer

Restrained Love Viewer 2.9.21 (release notes), released on Friday December 16th,  brings Bento support to that viewer as well. As with Kokua and other Bento capable viewers, this also sees the Reset Skeleton and Reset Skeleton with Animations options added to the right-click avatar context menus as the most visible sign of Bento support (outside of Bento meshes rendering correctly!).

In addition the update includes a minor change to RLV, with the “?” symbol no longer being used to identify a cheat inside emotes, as some emotes may end with genuine questions.

Additional Links

Kokua forks Second Life and OpenSim support

kokua-logoKokua, the viewer 4-style Second Life and OpenSim viewer has forked development between the two platforms.

The announcement came on Monday, September 26th, with lead developer Nicky Perian announcing the initial release of KokuaOS-4.1.0.38653 in a blog post thus:

Gavin Hird (macOS) is the lead developer for KokuaOS. This viewer is for OpenSim grids and is branched off at Kokua version 4.0.2. The default grid is set to 3rd Rock Grid as their support for Kokua and Imprudence extends back a number of years with the Hoagie sim contribution.

The reason for the split appears to be the increasing complexities in having a unified viewer code set supporting both OpenSim and Second Life, with Nicky noting:

While the ability to log on to Second Life is present, Jelly Doll support is not, and we expect more wandering away from Second Life as new features such as Bento Joints, and server infrastructure removal take place.

However, this shouldn’t be taken to mean that the OpenSim viewer will not be implementing changes made to the SL viewer; simply that only those changes which make sense to adopt will be carried forward into the OpenSim variant.

So, for example, KokuaOS-4.1.0.38653 includes the code from the Lab’s recently released Visual Outfits Browser, allowing OpenSim users to browse through their outfits using the thumbnail image feature, and the Windows version also includes the switch to using a media plug-in based on LibVLC to replace QuickTime.

Core updates with the OS-4.1.0.38653 release comprise:

  • Kukua OS-4.1.0.38653 includes the Visual Outfits Browsers from Second Life, but not Avatar Complexity
    Kukua OS-4.1.0.38653 includes the Visual Outfits Browsers from Second Life, but not Avatar Complexity

    There is no auto update capability. New updates must be manually installed and downloaded

  • Recent SL updates included comprise:
  • Excluded SL updates comprise:
    • Avatar Complexity (aka Jelly Dolls) and Graphics Presets
  • Media content on Linux uses Gstreamer, but can be switched to VLC by editing skins/mime_types_linux.xml- You can upload and play back sounds of up to 60 seconds
  • The Mac OSX version now use a gamma of 2.2 which improves tonal range of the scene.
  • Microphone and volume can be tested without an active session
  • Additional functionality in support of the OpenSim Export function
  • Almost complete localisation of the viewer to German.

Full details of all changes and known issues can be found in the OS-4.1.0.38653 release notes, and the download is available via the Kokua downloads wiki.

Following this, on October 1st, Nicky announced the release of the Second Life version of Kokua, version 4.1.1.39717. This update see the removal of all code which facilitated the switch between logging-in to Second Life or to OpenSim grids, and brings this viewer to parity with the Second Life 4.1.1 code base and with RLV-2.9.20.1.

Core updates in this release comprise:

  • Most menu items with OpenSim specific functionality has been deactivated.
  • Support for:
Kokua version 4.1.1.39717 for Second Life does include Avatar Complexity and Graphics Presets
Kokua version 4.1.1.39717 for Second Life does include Avatar Complexity and Graphics Presets
  • Mac OSX Updates:
    • Use of a gamma of 2.2 which improves tonal range of the scene. System gamma of 1.8 has not been used by Apple since Mac OSX 10.6
    • Support for OSX 10.12, with a minimum requirement of OSX 10.9
    • OSX send and receive buffer size has been increased for better network performance
  • Advanced and Develop menus updated with new functionality and more relevant HUDs
  • Improvements to:
    • Voice floaters and functionality
    • Media playback functionality, including in the chat / IM floater
    • Mesh uploads
    • The world map and mini map
  • The built-in AO now shows which animation is playing
  • Own voice dot and speaker indicator no longer shown over avatar’s head (via  Firestorm)
  • Almost complete localisation of the viewer to German.

Again, please read the release notes for all changes, updates and known issues with this release. The download is available via the Kokua downloads wiki.

The two versions can be run side-by-side, providing different installation locations are used (offered by default by the Windows installer) and chat logs.

Links

Kokua 4.0.1.37934

kokua-logoNicky Perian announced the release of Kokua 4.0.1.37934 on Tuesday, March 1st 2016.

The update sees Kokua gain parity with the latest release version of the viewer from Linden Lab (version 4.0.1.310054 (Maintenance release) at the time of writing), and also with the February 26th release of RLV version 2.9.16 from Marine Kelley.

Not that if you are currently still using a test version of the viewer, the automatic update feature will not function. A separate download and install is required.

CEF Updates

This release incorporates the Chromium Embedded Framework (CEF) updates for media from the Lab, as well as the assorted crash and bug fixes from the Maintenance release. Also included for CEF are a series of contributed updates for Linux, coming by way of Drakeo and including work by Nicky Dasmijn of Firestorm and Henri Beauchamp of CoolVL. Commenting on this, Nicky points out:

Drakeo’s development focus is media and providing Slackware viewer packages. Upstream CEF frequently issues security updates and Drakeo puts those into his own Slackware packaged viewers and contributes updates to Kokua. These security updates from CEF come more often than the Kokua release cycle, however, our Test viewers can be used to maintain a level of currency. Please remember that Linux viewers are Alpha and that is even more the case now that we no longer have the benefit of Linden Lab’s Quality Assurance run through of new features added to Linux viewers. We do our best to provide stable Linux viewers, but with the vast number of Linux distributions problems will occur that may not have timely solutions.

Inventory Updates

Transferable Items Filter

Kokua 4.0.1 includes a new Transferable Items Only inventory search filter. When active, this will limit the main inventory display to transfer enabled items only.

To prevent possible confusion / worry about inventory loss, the option does not persist between log-in sessions when enabled.

The new Transferable Items Only filter for inventory searches
The new Transferable Items Only filter will display only those items which are transfer enabled in your inventory

OpenSim Exportable Parameter

Kokua 4.0.1 adds an Exportable parameter to the Item Profile floater for OpenSim grids, allowing content creators to easily mark items they build as being exportable to other grids. The option is not displayed by the floater when logged-in to Second Life.

The OpenSim only Exportable parameter
The OpenSim only Exportable parameter

Do Not Let Me Fly

A new option added to Preferences  > Kokua and to the Commands menu is Do Not Let Me Fly. As the name suggests, when checked, it prevents your avatar from flying even where flying is enabled.  The option is specifically intended for use in combat zones where flying within the region may still be enabled, to prevent any risk of accidentally flying (such as when jumping an obstacle) and interrupting the combat flow.

The Do Not Fly option will prevent you avatar for accidentally flying whilst still allowing Page Up to be used for jumping
The Do Not Let Me Fly option will prevent you avatar for accidentally flying whilst still allowing Page Up to be used for jumping

Under the Hood

In addition to the above, the release includes numerous under the hood improvements and updates, all of which are listed in the downloadable change log for those interested.

Related Links