2018 SL UG updates #1/2: Content Creation User Group

A rally of (Animesh) raptors on Aditi

The following notes are primarily taken from the Content Creation User Group meeting, held on  Thursday, January 4th, 2018 at 13:00 SLT. For the purposes of Animesh testing, the meetings have relocated to the Animesh4 region on Aditi, the beta grid – look for the seating area towards the middle of the region. The meeting is chaired by Vir Linden, and agenda notes, etc, are usually available on the Content Creation User Group wiki page.

Medhue Simoni live streamed the meeting, and his video is embedded at the end of this article – thanks to Medhue, as always, for the recording. Where the video is referenced, time stamps to the specific point of the video are provided in the text – click on them to open the video in a separate browser tab at that point.

Animesh (Animated Mesh)

“I like the name ‘animated objects’ because I think it’s unambiguous, but it takes a long time to type!” – Vir Linden joking about the name “Animesh”.

Project Summary

The goal of this project is to provide a means of animating rigged mesh objects using the avatar skeleton, in whole or in part, to provide things like independently moveable pets / creatures, and animated scenery features via scripted animation. It involves both viewer and server-side changes.

In short, an Animesh object:

  • Can be any object (generally rigged / skinned mesh) which and contains the necessary animations and controlling scripts in its own inventory  (Contents tab of the Build floater) required for it to animate itself.
  • Can be a single mesh object or a linkset of objects (link them first, then set them to Animated Mesh via the Build floater > Features).
  • Has been flagged as and Animesh object in the project viewer, and so has an avatar skeleton associated with it.
  • Can use many existing animations.

However Animated objects will not (initially):

  • Have an avatar shape associated with them
  • Make use of an avatar-like inventory (although individual parts can contain their own inventory such as animations and scripts)
  • Make use of the server-side locomotion graph for walking, etc., and so will not use an AO
  • Use the avatar baking service
  • Will not support its own attachments in the initial release.

These are considered options for follow-on work, possibly starting with the notion of a body shape (to help with more fully-formed NPCs).


General Project Status and “Must Dos” List

[33:24-34:10] There are around 14 “must do” items remaining on the list of work to be completed for Animesh before it can really move towards release. Some of these are fairly major – such as performance profiling (tri, count, LI, etc., limits evaluation, and so forth). There are also a number of bugs to be fixed or determined to be trivial enough so as not to prevent Animesh from moving to release / require work outside of Animesh.

Bug Stomping

[1:12-1:54] Animation Playback issues: as highlighted at the December 14th meeting, animations already running on an Animesh object don’t necessarily play for those entering the region where they are running, or update correctly when camming to them for the first time. It now appears this is a race condition issue, with the viewer receiving information on the animation before it has rendered the object being animated, resulting in the animation being ignored. Vir is confident that now the cause has been found, the issue can be fixed.

Shadow Rendering Issue

Animesh could exacerbate an issue with rendering shadows for faces of rigged / static mesh using transparencies

[3:33-13:52] There has been a long-standing issue with rigged / static meshes using transparencies (blended or masked), which causes shadows cast by the latter to render incorrectly (shadow rendering conforms only to the geometry silhouette). Animesh can exacerbate this issue on some objects (note the image of the tree on the right, and how the shadows of the leaves (faces using transparencies) are render.

As this appears to be a rendering pipe issue, rather than a specific problem with Animesh, it may require investigation and resolution by those handling viewer rendering pipe issues, If so, this could take time to complete, and so is currently being viewed as outside of the current Animesh project, and not a blocker to any initial deployment of this phase of the Animesh work.

“Dropping” Animesh / Mesh

[43:12-47:25] As previously noted in these updates, worn mesh cannot be simply “dropped” in-world. It has to be detached to inventory and then rezzed in-world from there. This makes the ability for people to pick up Animesh pets, carry them, then put them down in-world awkward.

The Lab’s view is that as dropping mesh directly in-world was never considered, the code-path for achieving this is not clear, touching as it would on a variety of elements: land impact calculations, physics updates, etc; there’s also a risk of forcing users to re-log should a No Copy pet be dropped and fail to rez in-world, in order for it to correctly register in their inventory again.

However, pets are seen a major use for Animesh, so not having a means by which they can easily be put back down in-world after being carried is seen as a potential limitation in the adoption of Animesh by pet creators; as it is, many have kept to using (render-intensive) sculpties with their pets, simply so they can retain the ability to pick them up and then put them back down in-world, rather than having to force users to detach and re-rez the pet after holding it.

The issue is again being that back to the Lab for further discussion.

In Brief

  • [14:49-17:12] Global scaling and resizing: not something that is going to be implemented for Animesh with this initial work, but may be added later. It is possible to get the effect of global scaling on a rigged object by scaling in joint in the hierarchy individually, but this may not give consistent, expected behaviour.
  • [17:32-20:29] Setting position and rotation of rigged meshes: slight confused discussion on whether rigged mesh attachments can be re-positioned / rotated. Generally, rigged meshes cannot be re-positioned / rotated as their the vertices are recorded to set distances from the avatar bone. However, Animesh attachments (which have their own skeleton) should be capable of position / rotation changes releative to their attachment points.
  • [20:44-24:40] Slider support for Animesh: avatar shape sliders are not supported in the initial Animesh work, as these require a shape to be associated with an object which, as per the summary notes for the project (above), is considered a possible Animesh follow-on project. For this phase of the work, shape changes can only be defined by setting joint positions / using animations. The reason why shapes, sliders, etc., are seen as a potential follow-on project is that they will require an extensive overhaul of the baking service (which manages appearance information), so that it recognises Animesh objects and can handle them.

Continue reading “2018 SL UG updates #1/2: Content Creation User Group”

Winter at La Vie in Second Life

La Vie; Inara Pey, January 2018, on FlickrLa Vie – click on any image for full size

Reader and fellow grid traveller Diomita Maurer (her blog is here) dropped me a line about the winter look at La Vie, the homestead by Krys Vita and Arol Lightfoot we’ve visited twice before (see here and here for more), suggesting Caitlyn and I  pay it a further visit before the snow melts. So, we headed over for a look.

As with the autumn build, which we visited in October, the winter design is built around a central body of water. However, almost everything else within the region has been completely redesigned and covered in a soft blanket of snow – with more falling from the sky – although it does retain the same use of muted colours and soft tones.

La Vie; Inara Pey, January 2018, on FlickrLa Vie

Visitors arrive on a track running along the bank of this water, the snow finding it hard to gain a purchase on the rutted earth. Set back from this track sits a large house, aged both inside and out, warmly furnished and decorated for Christmas. In the ground behind the house sits a raised deck with a small gazebo and swing, a hot tub sitting out under the falling snow, its heat countering the colder air. The deck offers a view out over the frigid waters surround the land, a view which likely makes the water in the hot tub all that more inviting as a means of avoiding the cold.

The reason the snow is having a hard time finding purchase on the track is revealed further around the central pond: a tracked snow plough is paused mid-way through its work of clearing the worst of the snow. It sits parked near the towers of an old ski lift, a rezzing point for sledges at the best of one of the towers. Nor is this the only rezzer in the region:  a closer look at the pond will reveal signboards offering skates for those who ice a little dancing on ice.

La Vie; Inara Pey, January 2018, on FlickrLa Vie

Follow the track in the opposite direction to the snow plough, and it will loop you around the pond to another house, a small shack selling fir trees beside it. The track ends just beyond this, but travellers can continue across the rough terrain, to where a fence marks the boundary of another house, sitting in the south-west corner of the land. A rugged, curve ridge rises westward of this house, climbing in steps to a flat table of rock topped by an old church – although there doesn’t appear to be a way to easily climb the rocks and reach it.

Across this landscape sit cars and tucks with fir trees strapped to roofs, in the flat beds or poking out of the sunroof. There are also numerous places to sit – from sleighs pulled by a horse or reindeer to park benches to swings – as well as in the houses. These  combine to make La Vie’s winter setting very pleasing to see and photograph and in which to spend time sitting, talking and just passing the time.

La Vie; Inara Pey, January 2018, on FlickrLa Vie

We once again enjoyed our time visiting, and will doubtless return to see further seasonal changes at La Vie.

SLurl Details

  • La Vie (La Vie, rated; Moderate)