Monday 9 December 2013

Ducks in a Row - The End of Chasing my tail



I think, I have been hinting a lot recently at the fact my efficiency drive is now reaching its end.
VSX now offers one of the technically most advanced products on the market, while doing it all with the most insanely small scripting costs.
vStrings too are in constant development and of course we have been releasing the Unlimited 3 upgrades in to the Beholder store and the Boot selection.

I think from my point of view, this efficiency project has been an ongoing war now since 2010 – my infamous “Project Chase your Tail”.
And as I have probably ranted about previously, the majority of this has been down to Linden Labs script limit project. I will say, it is fair what they did and I understand why, although with the usual flair and gusto that befits Linden Labs, they neglected to bother telling anyone or making this public knowledge (that I could find at least).
The first part of the massive clean up operation was the introduction of Unlimited 2, which thankfully solved 98% of the problems although it did come with its own set of issues.
However, with ever increasing script limits, and the quite surprising move of many sim owners to hammer people who had too many scripts on (in their eyes and quite heavy restrictions I may add), over the last few years, even Unlimited 2 was starting to struggle.

Over the last 18 months, we have been working on what would become Unlimited 3 although it has been a staggered development as effectively U3 has been developed for very specific products.
Its first incarnation was released on vStrings as a single usage “Designer HUD” and back in July this year, U3 made its second appearance on VSX and VSXM.
For both of these products U3 brought massive advantages in script reduction, and additional functionality.
Unlimited 2 model vStrings compared to Unlimited 3 went from 7 scripts, to just 1 script, which is obviously a massive reduction when you look at a broader picture.

From there, the job was started of making Unlimited 3, actually more unlimited.
While production of this full version was carrying on, production U3 systems were build for Beholder and our Boots selections (lets just be honest, you can only ever wear one set of eyes and one set of boots).
Again, the advantage of U3 is obvious. On Beholder Eyes, they went from 18, to 3 scripts while offering vastly superior functionality.

One thing we were investing alot of time in though was as I said above, making U3 more “unlimited”. And this job proved to be alot harder than we anticipated, actually taking two months more than originally expected.
All of this work, just for two little buttons – Synch and Pick.
Much like U2, you can choose which items you want to effect. So if you have from the demon studio as an example, Horns, Tail, spikes hooves and ears on, you can press Synch to load up the items you are wearing, however unlike U2, this doesn’t automatically default to just one item. The Pick button will allow you to choose which item you want to affect, but with a much better advantage, you can also now select “All”, to blanket change every item you have on. This system gives massive flexibility.

The second great advantage of Unlimited 3 is how it operates. This was something that bothered me on U2, which did and will continue to do a good job but didn’t do it “just right”.
Unlimited 2 created a Universal HUD and individual products. In other words, the HUD was nothing more than a conduit to do the work, and inside the individual products was all the data and information needed to change things.
Unlimited 3 changes that in a subtle way, but with massive effects. Now, rather than the HUD and the data being separate, they are actually one, with the products simply containing the conduit, hence you set the products up once, and you never have to touch them again.

What this means is, if I do end up getting an itch to do new textures, I simply build up the updated HUD, and customers can come to store, and grab the free copy of it and you are ready to go.
Simple!

The final advantage of Unlimited 3 is the actual product cost, script wise.
I will use an example – a Set of Vishpla Horns from the Demon Studio.

Under Unlimited 2, there is the master listener script, 2 prim control scripts (Vishpla are quite large prim wise so need two), a master Resizer script, and then the data scripts of which there are 4 (Bone, Cross, Gems and Metal).
That means there are 8 scripts in Vishpla under Unlimited 2.

Now that is quite easy to look at and honestly they are really light on scripts.
However... if you end up wearing 10 Violet Studios products, and I will give an average here, but actually on the Avatar, you will have 80 scripts on.
From what I know, the rough limit for scripts on an avatar before things start to break badly, is 224, so its well within limits. However many sim owners put a limit of 100 scripts per avatar before they get snooty with you, and I have see games sims ask for as little as 30 (which honestly I think is a little over the top, but their sims, their rules).

Working with Unlimited 3, the figures regardless of the product, are simple – A Master Script, and if required a Resize Script (Rigged mesh doesn’t require resize). That means at absolute maximum, you will only have 2 script per product.
That means, comparatively speaking, you are wearing 10 items you should have under 20 scripts on from the Unlimited Perspective.

Which now brings me back to the title. Ducks in a Row.

With the Demon Studio and the Cyber Studio all now running on Unlimited 3, this now brings me full circle.
In 2009 and 2010, Violet Studios was a power house of design and development with new products almost pouring in to store on a weekly basis. For those that remember though, the torrents of new products slowed until they effectively stopped.
Part of the reason for this was the ever increasing technical nature of the products I was building, taking more time to create, but the majority of this was down to the fact I was having to constantly revisit prebuilt products thanks to script limits.
Between the learning curve of mesh, VSX optimisation, vString development, and the constant battle of trying to make my “unlimited” products perfect scripting wise, my time was monopolised.

Today, vString is now stable & efficient and the calmer and more sensible development of vString 4 is quietly and in a controlled way happening in the background.
VSX is now down to extremely low scripting costs and is effectively a stable final release and has even been superseded by the VSXM series.
Finally, the Script Limit war is over, with Unlimited 3 fully deployed in store with the threat of having to revisit these products again gone forever (as the HUD does the update, not the products). And let be honest, if 2 scripts it too many, then SL really is it trouble.

Hence the title. All my Ducks are now in a Row.
Project “Chase your Tail” is over. I cannot improve the older generation of products any more outside of tiny amounts of what would be effectively Petty Tweaking and even if I did that, I couldn’t make further script reductions – its simply impossible.

It seems to outsiders, odd that I would devote nearly 3 years to an efficiency drive and I will even admit, I do at times wonder if I am bonkers to obsess over this so much.
I will say though, this wasn’t about the actual products, but it was about the future.
I could have easily shrugged this off, and carried on building new products, however what that would have meant was there would have been even more products in store to clean up, and customers would not have got the very best from me.

Today, the timing of the end of Chase your Tail does coincide with several new technical developments on SL. My knowledge of mesh work gets better by the day, the so called Liquid Mesh is on the table and is due out soon (although learning about this is giving me a headache). I have dozens of new products on the bench at the moment, between myself and Juggz we have developed a quite frankly stunning series of scripting tools within vString, VSX and Unlimited.

Finally, there is one final part of 2013 which will see a whole new aspect to Violet Studios future product lines appear in the Demon and Verotic Studios as the long awaited ADV Skin system finally gets released hopefully before Christmas. Expect more on that soon.

I think it fair to stay, Violet Studios is now stable and all in order, and 2014 will be a very interesting year for myself and customers.
Dare I say the flood gate are about to reopen.

Wednesday 20 November 2013

Either LL's are reading my posts, or I just stuck my foot in my mouth

Yesterday, after banging my head again the desk again over Rigged mesh and its infinate limitations, I decided to get on my soapbox and have a full on rant about it.

Today, LL's announce that with some tweeks they have just released a beta viewer that effectively has Liquid mesh installed for testing.
That said, this isnt a production method - a beta of the tech and its not the Liquid mesh that we know of - its slightly different as there are now more collision elements.

However this is a step in the right direction and actually shows Linden Labs do care... occasionally... about us, the poor souls who have to fight their developments every step of the way to get them to behave.

Liquid Mesh is an elegant solution as it uses systems already prebuilt in to the viewer, and in all the tests I have seen, it works extremely well, with a few exceptions which may have been cured.

There are still questions though, the big one being this.
This isnt the first time Linden Labs have released a beta viewer that deals with the deformer project. There have been others that silently got swept under the carpet.
There were reasons for it though. Mainly it added load to the way the viewer behaved and also if memory serves, it added to Server time too which wasnt a good thing.
Liquid mesh though, using things the viewer already deals with (although you dont notice it until you walk in to a closed door), offers all the benefits of the deformer project with none of the drawbacks.

Which only leaves the question... how long before we see this as part of the viewer?

I will now go see if I can dislodge the foot that was stuck in my mouth.

Tuesday 19 November 2013

Being a perfectionist on SL is hard work



When I first joined SL it was like a giant creative playground for me and using the limited technology available, I am pleased to say I did some pretty amazing things.
However during the time I had many friends say to me that Linden Labs were ruining SL.
I never really understood what they mean but today I kind of get what they mean.

Mesh behaving badly part 2

I am quite stubborn when it comes to things, and even though I effectively went in a circle in my last post, I didn’t give up, working on new theories to see if I could get rigged mesh to behave itself.
After lots of brain storming, some inspired ideas and thinking outside of the box I carried on testing all sorts of weird and wonderful  methods.
The result though, as usual, was crap.

Experiment  one was extending the mesh upwards to include part of the upper body.
The result was no change. I thought that just using the lower body had created a cut off angle for shading – an absolute cliff to fall off. Sadly though, it wasn’t that.

I then realised while local lighting was causing issues, it could also solve them too. So I built a body light system and brilliant part... it worked. Right up to the moment you put ALM on and the world washed out in an over exposed flash of brilliance.

Finally. I thought Face alignment issues could be the root cause. One thing I had spotted was the tummy seam wasn’t causing problems. However after straightening out , smoothing and realigning the stomach and back joints to be equal in angle, the test again proved pointless – the seam was sticking out like a store thumb.

My aim here was to find a “fool” way to make the texture seamlessly blend that would work no matter who was looking at you and available from Mid Graphics setting upwards.
The result is its possible. However its flawed in sooo many bad way that its not practical.

The fact of the matter is, Rigged mesh does not behave like the avatar body with Windlight. And that creates the tone differences.
No matter how good your repertoire of tricks is, the result is, fail.
The only way this can be solved is to make rigged mesh behave in the same way the avatars body does.

However, as many mesh creators know, this issue isn’t the only problem with rigged mesh.
Soft deformers not working, Liquid Mesh still in limbo, LL’s hinting that they are again working on some kind of soft deformer project.
Add that to the huge issues with texturing, clothing, appearance, etc etc and you get back to a conclusion I reached in late 2011.
Rigged mesh is effectively useless. Its not fit for purpose. Its bugged, half built and doesn’t do what it should have done from the start. And while designers are still sitting here waiting for something innovative to pop up to the solve the problems, its not happening. In fact in the last 2 years, I have not seen one single improvement or change to production mesh for rigging.

Static Mesh, as I concluded before, is fit for purpose.
Rigged Mesh though is not fit for purpose, its half built and while I am gagging for the day its going to work right, its slowly dawning on me that its not going to happen.

Which then brings me back to another wonderful invention that is starting to bleed its way in to the viewers at the moment.
The Long awaited Materials system.

Wow... now this has been on the wish list for years. We all wanted it. Advanced Shine, Bump maps etc. Finally we can do surface texturing that actually matches what we see in other 3D packages.

And its here now! Woo hoo!
Okay... no its not. As always there is a catch.

In order to use Materials, you have to have the Advanced Lighting model running.

All due respect, I still get customers today contacting me about their VSX products not displaying the particle functions. In fact usually 2 people a month, and lord knows how many read my explanation over it and fixed it themselves.
What I am hinting at here, is the fact the only reason particles are turned off in a customers viewer, is they are on the Low Graphics setting.

Seriously.
Over the last few years, SL has been advancing at a rapid rate, with new features being added.
However as you add more features, you also add to the graphics load to the point you are at 4 FPS and wondering why you seem to be watching a 1920’s film.

From what I can see, and from straw polls I have done with friends and customers, only 20% roughly of people are running the Advanced Lighting Model.
In fact I don’t run the ALM on my system as it taxes the system too much for building.

So, we are back to the problem here of being “fit for purpose”.
Materials – brilliant.
Commercially viable – is it heck.

A Scenario. I build some sparkly new product using all the features of the Materials system.
I put it up for sale, with marketing showing the effect Materials is having on the sparkly new product.
Customers see it goes “wow” and buys it, unpacks it and wears it.
However when they look at it, and then look at the marketing they don’t look the same.

This then comes back to lots of shouting at me from customers.
“Your product doesn’t look anything like it does on the box.”

Unless they have the ALM running, they see the flat version, which doesn’t look like the ALM Materials version.
It gets worse. Even if they buy it and they do have ALM running, 80% of people on SL are not using ALM, so they don’t look right to them. And thats not a good advertisement for a designer.

So. Materials get a big thumbs up from me. Shame its a waste of time and effort because its not fit for commercial purposes.



This brings me back to what I originally said about my friends comments.
The thing I am mostly seeing from Linden Labs with Second Life is positive. New technologies are the life blood of the system, however with so much happening at such a pace, there really needs to be a someone to do a “sense check”.
I have listed just two examples of excellent technologies that epically fail to deliver on their promise.
Creators are the life blood of Second Life, and without us, SL would be a yet another empty grid, with no products and ultimately nobody to buy them, as people would leave.
Giving creators tools to make better things is great, but if the tools come with condition, bugs, flaws, and omissions that render them useless, then they do nothing for the Second Life.

At the moment, Linden Labs usually sees fit to “inform” the users and designers on SL of new technologies when they have actually finished the job. There seems to be no method from creators to give feedback and input. In fact its fair to say over the last two years the method that we did have to give feedback have been removed or limited.

The sad thing is though, without us being able to give the feedback, the result will always be new technologies that are not fit for purpose. Its great to get them, but without actually knowing how these technologies will be used by creators, then there is no way Linden Labs can make a product that will work.

So all said and done I am back to square one. A meshed up and no place left to go.

Wednesday 6 November 2013

Mesh Behaving Badly & Bad Case of Wind : The age of chaos



Back in 2009, Violet Studios was the first SL company to offer breast implant skin specially designed to match up. Of course at the time I was very proud of what I did but it would never be perfect as for one little problem.
You had to set your Viewer to Midday permanently.

However I asked people to do that to make what I refer to as “the standard”.
And for years, it worked.

Rewind a little though. We need to look at why it worked.
Back then, the tools for environmental editing were almost a joke really. You could mess with the environmental setting manually, but you couldn’t permanently change them or even share them.
The choice back then was simple – you used the SL default windlight and the most you could change, was setting the time of day to what you wanted.

Slowly though over time, things started getting more complex.
Firstly TPV makers started to add in new features such as preset defaults from various creators of environmental settings. This was nice as now you and your friends could play with the environment, and actually be able to share the experience.
Next up came a major change to viewers, again thanks to TPV. You could now preset your parcels Windlight settings in the Parcel Description and the viewers working on the system could pick that up and automatically change it.
Finally came the biggest change, when Linden Labs adopted the technology fully, introducing a region windlight presetting. This was a massive change and gave sim owners the ability to create stunning sim effects, and share those effects with everyone.

Except, somewhere along the way someone forgot something. SL by default still uses the original SL default out of the box for environmentals.
There is a secondary item that was forgotten about too. Rigged Mesh and the way the original SL default behaves with it.

This brings us back full circle back to the point. A standard.
My implant work, originally was designed to work with what was available on SL, and back then, and for at least 3 years, that standard didn’t change, however with rigged mesh now becoming a standard, people are now being advised to swap to another windlight setting, and that of course throws the default SL standard out of the window. And dare I say this, Viewer effects are Local, not Global.

It seems now, thanks to Rigged mesh, there is a fight brewing between differing standard, and I will say with little reserve, both arguments are valid and needed.

I will start with my own argument.
For Implants, you need a standard. And by default, no questions asked, there already is one. The Standard SL Windlight setting, at midday. It does everything you want on the tin, and for the most part it behaves almost perfectly.
The Reason this has to be a standard is simple. It is what comes out of the box, for just about ALL viewers, regardless of Viewer 1, 2 or 3, or what ever they are calling it this week.
I see the world, you see the world the same as me. By manually overriding this to midday, its a simple setting and even on my own sims, I set up windlight to emulate the midday perm setting, using the standard SL Default.

The Rigged Mesh argument.
This is where a seriously large spanner gets thrown in the works. These days, alot of companies, including myself are working on, and releasing rigged mesh attachments. I have for over a year now, had a rigged mesh “bigbutt” system but I have had to face off to a serious problem that I have been so unhappy with, I refused to release it.
The joint where the upper body meets the lower body rigged mesh is ugly. It doesn’t match at all even though its the same texture.
Its not just me though – other products I have seen on the market suffer terribly from the same issue.
So... what’s causing it? Its our old friend, the SL Default Windlight settings. Due to the way they are configured, they are making an utter mess – the rigged mesh behave differently to the avatar body.
I was, once again, pretesting the rigging work again last night and I was utterly *censored* over the issue, so I started fiddling randomly with the phototools set up and rendering to see if there was a way I could cure it.
To my surprise, I quickly found that not only could I cure it, I could cure it so perfectly it was silly.
Opening the windlight environmental presets, you pick either
AnaLu *studio* 5 (this gives a nice bright midday setting)
AnaLu – outdoor city night (this gives a mid tone dark setting)
AnaLuetia  - (This gives a really dark setting)
AnaLuetia – Avatar Opt2 Whiter (this give s a very bright rendering)
AnaLuetia – STUDIO2 (this give a sunset style redder)
AnaLuetia – Studio Light (this give a nice, predawn setting)

All of the above settings effectively gets rid of the rigged mesh seaming issues – skin, is skin, and matches perfectly on the joint. I have even tried this with the previous issue I had with Chestplate implants misbehaving, and to my surprise, it works on them too – its a seamless integration – no silly “upside down” issues.

So, two ways of solving problems. In fact its fair to say for implants, the rigged mesh argument has massive merits too as now you can effectively get 99% matching with it.

So what solution should I use to get to where I should be.
Well, first up, thanks to the way this rigged mesh issue is causing problems, I may have to rethink the way I do implants – make a new standard.
This is of course, not a simple job – it means I will have to retint / create new textures  for all my current range.
And then, I have to put a note in basically telling people “for the best results, use these windlight settings”.
However, its never that simple.
As I stated earlier, Windlight settings on SL are set in a Local mode, not Global.
If I tell you to update your windlight settings to one of the above, then that great, but your friends, or other people who are viewing your avatar may very well be using windlight settings that are very aggressive towards rigged mesh or the way I have set the implants up to behave with a even 360 light source.
In addition, Sim owners under Linden Labs update to region settings, can preset their windlight settings to what they want, and it will override your settings.
And some viewers still don’t have the auto custom windlight parameters. They are using Stock SL windlight.

This means you may be a happy camper with your custom windlight settings, but to everyone else if the sims are not rigged mesh or Implant friendly, you will look like a dogs dinner at Christmas.

The problem is, going back to 2009, the standard.
Standard SL Windlight, night to day and back parameters – its the default rule, and in todays radically changed SL, its a rule that out of the box is NOT working anymore.

Linden Labs really need to reset that standard – without it, things will remain in their current Windlight Choas, with different people recommending different settings and people being under a misguided impression that their avatars look fantastic, when they don’t to everyone else.

As already proved by the AnaLuetia settings, you can create a night to day and back based around it, it wouldn’t really take that long to implement and finally people will view rigged mesh as it should be seen.
Sim owners could also set their windlight on the sims with more forethought to their visitors if they know the problems surrounding this.


And then...
I thought I would discuss my findings with my good friend, Adrina from AW Design.
Showed her the solutions I had come up with and I am kind of thankful that I did talk to her.

Turns out there was one... little setting I had forgot about.
Local Lighting.
I normally turn off local lighting in all my viewers – it makes life simpler for me when trying to get tinting right.
Put a local light source near the mesh lower body, and even with a mesh friendly Windlight setting, the seam line shows back up like a sore thumb.

So here we are, back where we started.

1/ Using the SL standard as “the standard” for Windlight, presetting to Midday, Breast implants will match up. Thats the standard, that was the best solution.
2/ Using SL Default Windlight regardless of time of day, borks any Rigged mesh or static mesh attachment up even if its using identical textures.
3/ Switching to an even 360 Windlight setting (as above) will cure that problem with rigged mesh or static mesh, however as my implants stand, they were designed for a totally different windlight setting and one that everyone uses to some degree or another. And of course swapping to that 360 Even windlight setting is a local job, not a global, so only you can see it and to everyone else, we see the messy seamlines.
4/ If you walk past any local lighting source, the mesh will again go out of phase and the seam line will then show up, and even if you switch off local lighting, other will still see it, and if you want to wear body or face lights... you’re borked again as either you don’t see it, or you see the ugly seam.

Now... anyone know any good hair restorers? I seem to be tearing mine out too much

Saturday 14 September 2013

Postage stamps, double decker buses, and SL Avatar texturing (vString)



As you will have seen this week through the vString updates, I have... grudgingly, folded to the requests coming in from customers and finally release the project that actually led to the X_X Evos.

Namely, the XL and XXL Evo 3.5 update.

The history of this goes back over a year back to the initial first looks at what eventually became the more natural sized Evo models when I was toying with the ideas behind doing a rigged mesh XL breast that could work using the SL avatar upper body texture – a project which has previously been documented as a failure and with good reason.

Firstly the Rigging was a mess due to things I have previously talked about such as the pancake and elevator door syndromes when it came to shape files.. think about it and you will understand what I am talking about, and it was also the major reason I moved away from rigging them.
The secondary issue which was less well documented though was relating to how the SL upper body and texturing works that caused me to grumble quite a bit.

When it came time to release the Evo models, I had made a significant decision based on observations in world – only the X_X was, quality wise at least, capable of handling the extreme “torsions” being put on the textures as technically in sheer surface area, they were small and could cope with it. By that very same virtue, this should also preclude doing the XL or XXL.

However, what many people don’t realise, is just how little texture space we are talking about, and a worse secondary factor that the SL body texture on the breasts is asymmetric.
How little are we talking about here?

A Standard SL upper body texture is 1024 or 512.
Using a 1024 high def texture that verotic uses...

Firstly, we need to 1/4 the texture = 512x512.
Not very large
However... sorry, but that not the end of it. The area which is actually used is way smaller.
In fact, the total size of that area is only 440x 295.
And that covers the upper chest, collar, both breasts and the inner, outer & lower side chest areas.

Its fair to say though that this, still isn’t the end of it as you need to look at relative surface area on the meshes compared to their pixel maps.
At that size, the upper chest, and inner, outer & lower chest sides are pretty much in proportion to the SL body, therefore they are as accurate as you can be with them.
Where the real major area of texturing is though is the actual breasts themselves.

Stripping this back and cutting back to 1 single breast by area, what you find is a scary fact.
Its 185x185 pixels. Texture wise, this is a postage stamp really
And please, remember. I started with a high definition texture. The vast majority of SL skins even today, are just 512x512.
Yeah. That means the actual texture area for the breast on a regular resolution skin, is 92x92 pixels.
Realistically, thats about the same size as a thumbnail in your photo album.

Now perhaps you see why I was very hesitant about looking at the XL model for Evos.
On the X_X, stretching the postage stamp over the breasts surface are was pushing things and you can see the result of that in the surface texturing.
So to pull it off on the XL, let alone the XXL was going to be a nightmare.

Oh.. Did I mention this texturing gets worse?
Well, to the untrained eye, the SL upper body texture looks like any boob. However a much closer look reveals a oddity. The breasts are actually not centred. They are Asymmetric.
By this, what I mean is, looking at the right breast, the nipple is not placed in the middle. Its placed to almost a 1/8 the way to the right, squishing the right outside edge of the breast up. So in the inside has more texture space than the outside does.
Ironically when you are looking at large, heavy cleavage style breasts, you want more on the outside and on the inside cleavage its actually hidden.

So, not only are we dealing with a postage stamp, but actually lopsided postage stamp that we are struggling the wrap around what is a double decker bus in surface area.

In fact its fair to say, the XXL Evo are included as a bonus feature to be used at the users discretion, not as a selling point. They can look very good but they arnt perfect.