Singularity 1.8.4: materials, particles, 64-bit Windows and more


Update: Singularity 1.8.4 was updated with release on November 16th, after an issue with the coamera controls was discovered in the build. Not other changes were made, and the functions / updates described in this overview remain current for the the 1.8.4 release.

Thursday November 14th saw the release of Singularity, which brought to the v1-style viewer a 64-bit Windows version to sit with the existing 32-bit Windows version, and alongside the 64-bit Linux offering.

The new release adds a good number of Lab-driven updates to the viewer, including materials processing support (which has been available in various pre-release / alpha versions of Singularity for a while), inclusion of Google Breakpad for better crash reporting, support for the GetMesh2 capability for improved mesh object downloading and inclusion of support for the new LSL particle options. The release also brings with it a host of TPV updates and improvements, either from the Singularity team or which have come by way of other viewers.

The following is a rapid-fire overview for the release, rather than an in-depth review. As always, for a complete list of updates and changes together with all attributions for originators / contributors, please refer the official release notes.

Materials, Particles, Breakpad

Materials arrives in the Singularity release viewer
Materials arrives in the Singularity release viewer

Materials processing support has been available for a while with pre-release and alpha versions of Singularity, and with, they arrive in the release version. For those familiar with using materials (diffuse, normal and specular maps), the Texture tab on the Build floater presents the expected options in a familiar layout.

A couple of nice additions with materials are the Synchronize Materials check box in the main build floater, and the carry-through of the UUID field from the texture picker to the normal / specular map pickers. The former makes it a simple one-step process to keep parameter changes between the different maps on the face of an object in synch, while the latter makes it easy to apply maps using their UUID if known.

The particles support sees Singularity able to support the latest particle parameters, including ribbon particles and particle glow. However, while testing the viewer, I found that it does not appear to support the particle muting capability LL also introduced, whereby right-clicking on a particle stream will mute the corresponding emitter.

The Google Breakpad crash reporting system is enabled by default on first installing release 1.8.4. Providing such reports allows a TPV team to better understand and deal with potential crash modes within a viewer and identify and eliminate potential errors which can result in crashes, and users are therefore encouraged to keep the option enabled. However, if you don’t wish to send any reports, or don’t wish to be asked prior to a report being sent should you crash, you can change the crash reporting setting through a drop-down menu in Preferences > General (shown below).

Google Breakpad enables crash reporting to the Singularity team, and can be configured through the Preferences > General tab
Google Breakpad enables crash reporting to the Singularity team, and can be configured through the Preferences > General tab


Menu Updates

Singularity adds some nice little touches to the use of the pie menu, and adds the option to switch between using the pie menu and context menus.

  • Shift-clicking on the central “hole” in the pie menu will either step you back through levels (if you have been using the More > option), or close the pie menu
  • The pie menu can be displayed when in Mouselook by holding the ALT key and right-clicking. It can be cleared by holding the ALT key and left-clicking
  • For those who, like me, prefer context menus, they can be enabled in place of the pie menu via Preferences > System > Use Context Menus instead of Pie Menus.

Other Updates of Note

This release of Singularity also includes the following updates:

  • Inclusion of the latest fixes for the latest ATi/AMD Catalyst drivers
  • Addition of the default camera presets to the Quick Preferences panel
  • Several improvements to the instant message panels
  • Improved reliability of the texture cache
The mini-map gets updated with additional options on the right-click menu
The mini-map gets updated with additional options on the right-click menu
  • Mini-map updates:
    • right-click option to hide or show objects
    • Ability to show Whisper, Chat and Shout range rings (hat rings aware of OpenSim chat range settings)
    • MiniMapPrimMaxAltitudeDelta and MiniMapPrimMaxAltitudeDeltaOwn debug settings added to allow customisation of objects displayed on the mini-map based on proximity
  • Linden tree animations re-enabled  (Advanced > Rendering > Animate Trees)
  • Clicking on clock toggles display of local time
  • Grid URLs can be entered directly into the login panel’s grid field, bypassing the need to open the Grid Manager
  • OpenSim / Aurora sim updates, including:
    • Support for variable-sized regions
    • More OpenSim conformity
    • Issue with teleport failures and saving scripts taking a very long time on OpenSim regions run in the same simulator instance fixed
  • And more, again, please refer to the release notes for details and for the code attributions of all updates.

Windows 64-Bit

The 1.8.4 release of Singularity sees the arrival of a Windows 64-bit version. There is a known issue with this version of the viewer, which lacks support for the  Quicktime plugin, so certain types of parcel media will not play. However, this does not affect streaming music and media on a prim (MoaP).

While my tests are far from conclusive, I have spent time running the 64-bit version on the SL Aditi (beta) grid and have encountered no problems or crashes.

Related Links

Resets, safe modes, and the journey so far

CuriosityIt’s been fairly quiet as the Mars Science Laboratory (MSL) rover Curiosity continues driving towards the point at which it is hoped the rover can traverse between a line of low-lying sand dunes and start exploring the lower slopes of Aeolis Mons, which NASA has dubbed “Mount Sharp”.

However, Thursday November 7th saw an unexpected hiccup in proceedings as Curiosity unexpectedly performed a “warm reset” (software reboot).  This occurred around four and a half hours after the new flight software uploaded to the rover (see my last mission report) had been temporarily loaded into memory as a part of the uploading and commissioning of the software, and while the rover was also transmitting data to the Mars Reconnaissance Orbiter (MRO) for later transmission to Earth.

A warm reset is executed when the flight software identifies a problem with one of the operations it is executing which may adversely affect the rover’s operations, and is a standard fault protection mode on all automated craft operated by NASA. It resets the software to its initial state, preventing further issues occurring. While there have previously been problems with Curiosity’s on-board computers, this was actually the first time since the rover’s arrival on Mars 16 months ago that a fault-related software warm reset had been executed.

Curiosity, seen here in an artist's impression working on Mars, suffered its first software reset on November 7th
Curiosity, seen here in an artist’s impression working on Mars, suffered its first software reset on November 7th

Following the reset, the rover resumed communications, but the mission team initiated a root cause analysis for the reset using the ground testbed unit (essentially, Curiosity’s Earthside “twin”). This revealed an error in a catalogue file for the existing onboard software was triggered when the catalogue file was executed by the newly uploaded flight software, causing the reset.  As a result of this analysis, the flight software team were able to determine the steps required to recover the rover to its operating state prior to the reboot. These were successfully uploaded to Curiosity, and on Sunday November 10th, the rover set confirmation to mission controllers that it has successfully transitioned back to a nominal surface operations mode.

“We returned to normal engineering operations,” software and systems engineer Rajeev Joshi from the Curiosity team at JPL reported following the transition. “We are well into planning the next several days of surface operations and expect to resume our drive to Mount Sharp this week.”

Following the successful reinstatement of normal operations for the rover, the mission science team resumed planning for the next stage of Curiosity’s surface activities, which were due to restart on Thursday November 14th.

Continue reading “Resets, safe modes, and the journey so far”

SL projects update week 46 (2): Server news, viewer update, group ban list

Server Deployments week 46 recap

As always, please refer to the week’s forum deployment thread for the latest news and updates.

  • Main channel: Tuesday November 12th:  no deployment
  • BlueSteel and LeTigre: received a maintenance package comprising further infrastructure changes for the yet-to-be-announced Experience Keys (experience tools) project
  • Magnum received a server maintenance project comprising a number of fixes and changes to script behaviours to prevent Estate managers and region owners from being teleported by llTeleportAgentHome() and so they are no longer affected by scripts which use ESTATE_ACCESS_BANNED_AGENT_ADD

Two further notable bug fixes with the Magnum release were “Sim crossing on vehicle fails when parcel at opposite sim border is full.” (BUG-4152) and a bug where a high draw distance set in the viewer would see the viewer to sometimes fail to connect to the requisite number of regions around it. According to Maestro Linden, this bug affects viewer using the current release viewer code (or earlier), but not the newer “Project Interesting” viewer code.

Speaking at the Server Beta meeting on Thursday November 14th, Maestro commented on the Magnum release, saying, “There were also under-the-hood changes to object inventory management, and llTakeControls() behaviour in LSL. Those shouldn’t cause any behavioural differences, but I added them to the release notes in case they did cause problems.” These are the “clean-up of ‘control grabbing’ in LSL scripts” referred to in the release notes.

Grey Goo Issues

The Magnum update also included updates to the grey goo fence, which is intended to combat griefing. The specific changes were to combat the use of large object rezzing, which can be used to crash a region. However, the tightening of the fence led to unforeseen problems, as Maestro reported:

There are reports in JIRA about building rezzer systems hitting the grey goo fence. The one case I saw was where one rezzed about a dozen large linksets rapidly, and when it hit the grey goo fence, it would ‘fail’ halfway through the rez. Anyway, Simon and I talked about how to address this; for now, I think he’s going to go with a fix where only large and physical linksets are penalised.

Another option under consideration is rather than denying the rezzing, to slow it down. It’s not clear which option will be taken forward by the Lab at this point, for now their intention is to deploy a fix to Magnum in week 47 which “unbreaks”, as Maestro put it, any affected rezzing systems on Magnum regions.

Maestro mixes and Baker be-bops at the Server Beta meeting, Novermber 14th
Maestro mixes and Baker be-bops at the Server Beta meeting, November 14th

Upcoming Updates

Maestro Linden  gave an overview of some of the updates which will be making their way into a server  maintenance package, which  include:

  • A fix for ‘ Vehicles containing a mesh are returned to the owner upon region crossing when destination parcel is full’, which is similar to BUG-4152, fixed in the Magnum RC deployment in week 46, but only affects meshes and involved the actual entry parcel being full
  • A fix for “Temp Attachments are sometimes not removed on the viewer when detached from a region change event.”
  • A follow-up fix to  “llTeleportHome() should not teleport estate managers”, mentioned above, which extends the protection to parcel owners  (or a group owner if the parcel is group owned)

These may well form a small update package on their own and get deployed to one or more RC channels in week 47.

SL Viewer

The “Project Interesting” RC viewer, version 3.6.11283895,which has the viewer-side updates for the recently interest list updates was released on Thursday November 14th.

Continue reading “SL projects update week 46 (2): Server news, viewer update, group ban list”