Materials processing – more sneak peeks

The server-side materials code reached the main grid in week 5, with a deployment to the BlueSteel Release Candidate channel. As stated in my project report marking the deployment, the code will not be usable until there are suitable viewers on the grid which can utilise it, and they have yet to be released.

As it stands, viewer-side work is progressing, and it is likely that a project viewer will be made available in the near future, although time frames are still a little hard to determine. Commenting on possible viewer availability on Wednesday January 30th, Geenz Spad, lead developer for the viewer, stated, “At this point, it’s hard to say; the majority of the rendering bits are finished at this point. The UI’s there, but needs a bit of polish; so all in all I’d say a public testing version should be out really soon.”

During the conversation, Geenz provided further preview pictures to those in attendance, some of which are reproduced here.

Materials in action: a prim with a texture (diffuse map) and normal map applied (courtesy of Geenz Spad) - click to enlarge and see in detail
Materials in action: a prim with a texture (diffuse map) and normal map applied (courtesy of Geenz Spad)

Viewer UI

In week 4 I was able to provide a quick look at the changes to the Build floater’s Texture tab which are directly relevant to materials processing. Since then, the developer leading this work, Tonya Souther, has progressed the tab to a point where it is close to finished. In particular, pickers have been added to the normal and specular map options, and the diffuse (texture) option now has a drop-down for the alpha mode selection, also as discussed in a previous project report.

Materils Build floater Texture tab revisions (31-01-13): The diffuse (texture) option, showing the Alpha mode drop-down options (l); the normal map options, with map picker and default texture list drop-down (c); the specular map options, in which the Use texture drop-down displays the familiar low, medium & high shiny options (r)
Materials Build floater Texture tab revisions (31-01-13): The diffuse (texture) option, showing the Alpha mode drop-down options (l); the normal map options, with map picker and default texture list drop-down (c); the specular map options, in which the Use texture drop-down displays the familiar low, medium & high shiny options (r). Materials can be applied per face of an object, with scale, rotation, etc., applied across all maps on a face / object – click to enlarge

Viewing Materials: How Things Will Look

Materials processing will require viewers to be running in deferred mode (i.e. with lighting and shadows enabled, although not necessary with shadows activated – see my notes here). While it is not possible for materials to be implemented in such a way that it can run in a non-deferred mode, materials should not have any major negative impact on how second life looks to those who are unable to run their viewer in deferred mode. In fact, SL should continue to look to them much as it does today, hopefully as show in the image below.

With and without: how materials will look when running a viewer in differed mode (top) and in non-deiffered mode (bottom). The differences are clear, but the in-world experience in non-differred mode is not in any way "broken"
With and without: how materials will look when running a viewer in differed mode (top) and in non-deferred mode (bottom). The differences are clear, but the in-world experience in non-deferred mode is not in any way “broken”

In the meantime, Linden Lab are continuing to try to gather data on the number of users running their viewers in differed mode and – perhaps equally as important – the number of users who could be running with deferred active (again, if not with shadows active), particularly given the continuing improvements being made to the rendering system.

So materials processing is progressing and drawing close to an initial release. There is a lot going on within Second Life as a whole at the moment in terms of projects coming into the viewer, with both avatar baking/server-side baking (SSB) and the Communications Hub User Interface (CHUI) also on the horizon as well. As such, the Lab still need to establish priorities on the various projects and plan releases accordingly. Similarly, TPV’s need to consider the impact of these various projects on their work and determine their own priorities for integrating the projects into their viewers. Given the complexity some will face in implementing CHUI, it would appear likely that the materials capabilities might reach some TPVs ahead of that work, even if CHUI and materials are released in relatively close order.

As always, updates will be provided as news emerges.

Another preview of a  normal map and a  diffuse map (texture) in action (courtesy of Geenz Spad)  - click to enlarge
Another preview of a normal map and a diffuse map (texture) in action (courtesy of Geenz Spad) – click to enlarge

Related Links

Advertisements

Inside dio

dio-logoUpdate, February 19th, 2014: dio was discontinued by Linden Lab on February 19th, 2014. Links to the dio website, etc., have therefore been removed from this article.

On Tuesday 29th January, Linden Lab launched dio, the latest in their suite of new products. The Lab describes dio as a browser-based space in which:

You create places by adding text, photos, videos, and interactive objects into interconnected ‘rooms’ that give spatial context to the content you share. You can keep your places private, share them with friends and family, or allow everyone to explore and enjoy them. Live and persistent chat allows you to socialize with other users as you discover and explore dio places together and see what those who came before you had to say. In the future, dio users will be able to monetize the dio places they create, enabling them to profit from their own creativity.

Here’s a look inside dio written after spending a few hours paddling around and setting things up, tearing them down and generally poking around.

Signing-up

dio is currently free to join, and users have a choice of doing so using either a Facebook account or e-mail address. As I avoid Facebook in much the same way as a cat avoids the Atlantic Ocean, I used the e-mail option, giving my name, e-mail and a password. Seconds later an e-mail arrived from the dio website asking me to confirm my details with a click. I did – and there I was, sitting on the log-in page, my credentials filled-out and a single remaining click needed to see me into the site. Simples!

Browsing

dio places
dio places

The homepage – or Community page, as LL call it – presents you with places people have already created. Some of these have obviously been created by closed beta testers, but there are already a number of places which appear to have been created by those who, like me, have just signed-up and are playing with things.

Places are listed in terms of Most Popular (most frequently visited) and Featured (criteria unclear). Additionally, users can create “albums” of their favourite places or those belonging to their friends, while also having an “album” of their places.

A place is accessed by clicking on it. If you’re logged-in to dio, a summary page for the place is displayed. If you’re not already logged-in, you’ll be prompted to do so or to create an account (if you are completely new to the site). Clicking ENTER from the summary page will take you into the place itself. This is effectively a web page comprising a number of elements.

A dio place screen elements
A dio place page elements
  • Objects (In This Room): this is a list of interactive objects contained in a room. Objects can currently be any combination of:
    • Photographs with descriptive text
    • Videos with descriptive text
    • Custom objects which can be coupled with a set of pre-defined actions to present a further element of interaction for visitors to a room. Custom objects can be examined, taken to inventory, drunk, eaten, used, locked, unlocked, opened, used to trigger other actions, and so on
  • Connected Rooms: a list of additional spaces within the current place visitors can move between, each containing objects of its own and/or leading to other rooms. As with objects, custom actions can also be defined for rooms (for example, a room can be “locked” and require a key object taken from another room in order to unlock it and enter)
  • Descriptive area: the main display area wherein images, videos and the results of a visitor’s interactions with objects in the room are displayed / reported here
  • Comments / Chat / People: this is where the “persistent and live chat” sits – although currently it is more of a Twitter / Plurk-like comments stream than a means for engaging in conversation, and there is no instant / direct messaging capability. It also displays the people currently in the room at the, moment and can be used to access their profiles. When not required, the panel can be collapsed (HIDE). The image below provides further information on this panel.
The comments  / people panel
The comments / people panel

There are three further areas to a place page:

  • The Related Places panel, wherein links to similar Dio places can be added by anyone (although the creator of the place can remove links which are seen as inappropriate)
  • The Google Adservice area, which is discussed later in this piece
  • The inventory panel (which is not shown in images here). This is displayed beneath the Connected Rooms panel, but only if / when you have collected inventory items, which are themselves interactive objects found within a room.

Continue reading “Inside dio”

Dio beta launched – and it might be more than it seems

LL logoUpdate, February 19th, 2014: dio was discontinued by Linden Lab on February 19th, 2014. Links to the dio website, etc have therefore been removed from this article.

Linden Lab has officially launched dio, the latest in its new product line, in a beta release on Tuesday 29th January.

dio has been subject to much speculation since the original website was accidentally left accessible to enquiring noses back in May 2012. More recently, the site has been extensively updated, giving some clues as to what it is about.

The new Dio website homepage - launched on 29th January (click to enlarge)
The dio website homepage – launched on 29th January

The press release announcing the launch reads in part:

In dio, you create places by adding text, photos, videos, and interactive objects into interconnected ‘rooms’ that give spatial context to the content you share. You can keep your places private, share them with friends and family, or allow everyone to explore and enjoy them. Live and persistent chat allows you to socialize with other users as you discover and explore dio places together and see what those who came before you had to say. In the future, dio users will be able to monetize the dio places they create, enabling them to profit from their own creativity.

The Learn More link on the site provides more information on the site, and there is an introuctory vdieo to accompany the launch.

Within dio, users can create places – such as their own homes – or recreate events in their lives, such as their wedding, or make picture-based games, and so on, and then select how to share them. All of these aspects cane be combined, as dio Producer Bo Barfield explained in an interview with Forbes Magazine to mark the launch:

You can combine these game-like experiences in places where they traditionally wouldn’t be. As an example, a hotel that’s trying to find a new way to advertise and make money can recreate their hotel in dio, and then make a short and easy game that takes a few minutes. Say Clare Danes lost her beloved emerald earrings. Find it somewhere in the hotel, and you get a free bottle of champagne with your stay. It’s using gamification in a richer way. It’s not just about getting badges or achievements: It gets customers imagining themselves in your hotel or whatever it is you’re trying to market.

Questions as to how dio will be monetised, both for the Lab and for users, are also answered – to a point – within the  Forbes article, where Barfield states:

We want to implement revenue sharing with the content creators of dio to give people an incentive to create interesting spaces. We’re going to give them a cut of the advertising revenue that they bring.

We’ve seen that work exceptionally well in Second Life, where users can monetize their own creation…. If I create a dio place that’s very compelling and is getting lots of traffic, then I’ll be able to monetize that as a share with Linden Lab.

So it would appear to be that dio is perhaps the Lab’s most ambitious product to date, aiming at a very broad cross-section of users, from individuals through to businesses.

Interestingly, the dio Terms of Service still make reference to the use of Linden Dollars. Given the website is still beta, this may be down to the fact that the ToS is still boilerplated from the Second Life ToS – a point I’ve previously made. While I’m still somewhat drawn to this being the case, it is nevertheless interesting to speculate where and how Linden Dollars might be linked to dio, and what form any cross-pollination between dio and Second Life (were there to be any) might take.

Also accompanying the launch is a set of video tutorials on You Tube.

The response from Frobes’ contributor Carol Pinchefsky is broadly positive towards the platform. Those wishing to sign-up can do so (it’s free), either by using their Facebook account or using their e-mail address.

I’ll be looking at dio in-depth in an upcoming article.

Related Links

SL project news: week 5 (1): servers, viewer, deformer

Server Deployments Week 5

There are a full set of deployments this week, Main channel and RCs.

On Tuesday 29th January, the Main channel received the threaded region crossing code deployed to BlueSteel and LeTigre in week 4. This project makes sim performance smoother when objects and avatars cross between regions. Please refer to the release notes for further information.

On Wednesday 29th January, the Release Candidate channels should receive the following deployments:

  • BlueSteel should receive the server-side materials processing code. This code will require a a project viewer in order to be used, As reported in week 4, there is no definitive timeframe as to when a viewer is liable to be available, but it would be reasonable to expect something in the next few weeks (possibly sooner) – release notes
  • LeTigre should receive the maint-server project originally deployed to Magnum in week 3. This deployment includes the bug fix for the places / search indexing issue which occurred following the original deployment of the code to Magnum – release notes
  • Magnum will receive a further update to the interest list code deployed in week 4. This update addresses high packet loss problems, leading to issues such as not seeing avatars or objects in-world, specifically:
    • A fix for bots which do not specify a valid draw distance in order to prevent them downloading huge amounts of unwanted data
    • A fix to keep ObjectUpdate packets within an ethernet MTU of 1500
    • Release notes.

Please check with the forum discussion thread for these deployments to keep abreast of updates / changes / issues.

Materials processing: server-side code to go to BluseSteel on Wednesday 30th January - but no project viewer yet
Materials processing: server-side code to go to BlueSteel on Wednesday 30th January – but no project viewer yet

SL Viewer News

Problems remain with the beta viewer code, but it is hoped a new beta will be appearing shortly. In te meantime, Kelly Linden has committed the viewer-side code for extending the maximum avatar animation length from 30 seconds to 60 seconds (MAINT-1492). This should be appearing in the 3.4.5 beta viewer, and should also be appearing in TPVs in the near future.

Mesh Deformer

Delays continue with the mesh deformer, which can be summarised as:

  • The Lab has limited internal resources for testing it – although attempts are being made to address this
  • There is concern that there is no clear way for a designer and a user to be sure that they are using the same avatar base model – and if they are not, then the deformer will very likely make things worse. While there are some provisions within the current deformer for the base model to be taken into consideration, there is apparently concern that it may not be sufficient
  • The project veiewer code is now significantly behind the current viewer release, although work is underway to merge it up (and I received a report that this has been done while preparing this update).

A further potential issue in progressing the deformer  – as Karl Stiefvater (Qarl Fizz), who wrote the original code points out – is there are a lot of expectations that the deformer will do a lot of things which were not in the original specification (or indeed, the code as originally written). Some of this scope creep has resulted in further updates to the code from other contributors. However, there appear to be concerns that if the Lab prematurely release if, there will be a risk that a) it breaks existing content, b) it is viewed as not addressing problems correctly.

This latter aspect was also commented upon by Oz Linden, when speaking Open-source Development meeting on Monday 28th January. He said, “We are often (and frequently with justification) accused of throwing things out that are not really finished enough… indeed, the lack of some solution for the problem the deformer is trying to solve is one of the more prominent recent examples, but I don’t want to make the situation even worse by putting out a ‘solution’ that turns out not to solve enough of the problem and/or creates bigger ones down the road.”

Avatar Baking (SSB)

A set of code updates for the viewer are in progress. However, an issue with the Mac build means they have not been pushed as an update to the project viewer as yet. It is hoped that the updates will reach all three versions of the viewer (Windows, Linux and Mac) once the Mac build problem has been resolved.