Disclaimer

Black Dragon is MY Viewer, i decide which feature i want to add and which to remove, i share this Viewer to show the world that user base size is not important, i do rate quality by effort, thought and love put into the project, not some rough estimated numbers. I consider feature requests only if i you can name proper valid reasons i can agree on. It is my (unpaid) time i'm putting into this project, i'm not here to cater to every Joe's desires.

Sunday, December 31, 2017

Black Dragon 64x - Update 2.9.6 "New Years Dragon"

Happy New Year everyone!

Update incoming, this one contains mostly bugfixing and overhauling for consistency. It's also the last one this year.



I added a button to set the voice toggle to 'none' effectively disabling the voice toggle, it was requested, here it is.

LL's snapshot fixes were removed again because they were causing the snapshot floater to save the first snapshot as Snapshot.png instead of Snapshot_Number.png like it used to, their white alpha fix was also removed as it was causing some human heads to default to "None" alpha mode effectively breaking them... (well not really, it just showed them broken because they had a corrupt or missing alpha flag set)

Then, long awaited, it's finally here, you can now edit the position and rotation of attachments in the build window while they are worn. Hooray.


I thought it would be a good idea to add a refresh preset list button to the sky preset editor, so i ended up overhauling all windlight windows and adding refresh buttons to all of them.


At least they are smaller and consistent now.

When someone send me a texture inworld i had to face the disgrace that is the texture preview window and had to overhaul that one too.


Other than those big changes i changed the default complexity limit to 125000, down from 500000 now that these numbers are much smaller and i fixed a few tiny texture issues causing offset images and increasingly more space between tabs. It's time to fix the goddamn dropdown textures already Niran, i'll get to that at some point too.

As always you should get this update because bugfixes n stuff.



Friday, December 29, 2017

The Snokra Snake & Content Creation #2

Remember the first post i wrote about it here: The Snokra Snake & Content Creation?

Well today i logged in and found a message in my notification console.


Turns out this would mean i get all color variations for my Gryphon, Lamb and Sergal ontop of my Snake and Kobold, both of which contain all variations already.

You can tell me what you want but if this is what some people have been trying to sell me as "an asshole" then i'll welcome these kind of assholes all day. To me this doesn't look like the kind of money-driven asshole that some other content creators are and no i'm not talking about EA Games, they are hardly creating content and more like milking an already existing piece of content like a cashcow.

If i ever decide to touch the human content area you can be sure it will totally destroy any belief in humanity you might have had, i had the "joy" of working with LeLutka (a human head) lately, it was brief but it already made me infinitely angry. It was a head that deletes itself if you put it on the ground, even in no script zones. The demo was no copy on top of that, deleting the only piece you had if you put it on ground, forcing you to go to the store and get it again. The head obviously being no mod should already give away what i think about it. Seriously whoever you are who makes LeLutka, i read your blog and you seemed like someone with at least some technical knowledge (that or you shamelessly copied it from somewhere) but if you're going to tell me you made your head delete itself on the ground to prevent copybotting then you're just as infinitely retarded as Maitreya and Belleza. An object should never ever be no mod NOR should it delete itself if you put it on ground, especially not if said object might be no copy. I can't believe you humans seriously put up with this shit and let them do this crap.

Sunday, December 24, 2017

Black Dragon 64x - Update 2.9.5 "Christmas Dragon"

Merry Christmas everyone.


There's a present waiting for you. It's an update.



I'm sorry i was so quiet about the Viewer lately, with the latest LL merges the Viewer was simply in a state that i was extremely unhappy with, it crashed almost every day for me, at least once. Coming down from never having a crash unless it's a self-inflicted stupid reason such as setting everything so high the Viewer locks up completely (which should be almost impossible) or outright blowing up something i made and are testing right now there was never a time i had so many random 1 in a million chance crashes like i had with these "crash fixes" from LL. Every crash i experienced was a new one, it was always something else blowing up, as if they closed one hole and opened up hell in the process. Luckily with some additional patches it now seems back to the old usual never-a-crash-in-a-lifetime stability i had before. It's kinda a shame when the creator crashes every day, all alarms should go off because something is horribly wrong. Anyway.


The update comes with a good bunch of linden fixes and additions (all the latest stuff + some more), such as object count on folders in inventory and some other changes i haven't yet noticed. Apparently body physics should be smoother now, less jiggly even with low FPS... we'll see... when i drop from my glorious 70 FPS that is.

With the above fixes it seems like the texture crash that was initially plaguing 64bit builds is now fixed, which prompted me to re-enable HTTP Pipelining by default, stuff should load faster and more efficient now and performance might actually go up a bit too while stuff is loading in.

The complexity floater has been overhauled a bit with hopefully improved readability. It's still a long way until it's a super straight forward thing but oh well...

Also... this has been bugging me for a long time, years now. Appearance, specifically when you edit your shape, as soon as you make a change the back button at the top extends, overlapping with the title, man this has been driving me nuts, i finally came around to get rid of this once and for all and while i was in the shape edit window i spend some time improving the layout a bit further.


It should be slightly less obnoxious now. In the future i'll have to completely redo the entire Appearance window to match the new layout of People/Inventory, this is going to be big challenge getting it into a shape that looks uniform across all the different windows with all the different amounts of highly different widgets that are absolutely essential for the window to function properly.

Then, inventory inbox should no longer become unclosable when you drag out the last item from your inbox while its open, the button should stay visible now at all times unless it's a secondary inventory window.

Another thing that annoyed me every time i used the internal browser (rarely but i do), the refresh button overlapped with the stop button. grrgrggr. No more.

I also removed the home toolbar button and added a poser toolbar button for that quick posing ya know.

Other than those above mentioned changes there's mostly cleanup, some fixes here and there, more cleanup and some attempted fixes for crashes, see the changelog for those.





You might have read my previous post about the Snokra Snake, i felt like it was necessary to talk about it and use the opportunity to praise some good content as opposed to complained about all the shit content all the time and getting flak and counter questions asking for a good content example. I'm having a lot of fun with it as you can see, it's quite franky one of the best avatars quality wise and i wish human content creators especially would finally pull their head out of their asses and stop ripping off people with their trash tier content. If i could i would mesh a human mesh body with all the features described that makes the Snokra Snake such a godsend, mod perms, full body rig+uv file, all texture psd's and so on for free just to blow content like Maitreya and Belleza up until they learn to make better stuff and stop using excuses for their infinite stupidity as to why and how no mod is supposed to prevent copybotting and such. You may say "wow what a dick move Niran" and yes it might be a dick move offering something for free, others charge for, out of spite but my answer to that is "people get what they deserve, sooner or later" and someday someone might come around and do just that, just like i did with the Poser to put a stop to AnyPose, just like i made my own free opensource server side AO and just like i was going to write a HUD that does the 360 snapshot thing for free, that everyone has been paying shitloads of money for... if the 360 snapshot viewer didn't come around in time to stop me and offer an even better solution. If you rip off people with your shit and i can do it better and for free, you can bet i'll do it just to fuck you up because i goddamn fucking hate you if you rip off people.

Which brings me to Patreon. Funny. Coming from the guy using patron to desperately try and fund the development of the Viewer for some more time. Well, i'm going to remove the goals since they are pretty much pointless now, it's no secret anymore that Patreon basically failed at what it was supposed to do and i'll have to get a job now anyway but for all those people asking for a way to support me or "donate" i'll leave it open. I mean it's your money, you can choose what to do with it and now that i've actually gotten around to set everything up i don't want to get rid of it anymore as people are just going to ask me again how to donate and we'd be back to square one. Ugh. It's a mess right now.

Enough rumbling, enjoy this long overdue update.

Monday, December 18, 2017

The Snokra Snake & Content Creation

Just two days ago one of the, if not the outright overall best avatar in Second Life has been released and it is an absolute joy both visually and for render freaks.

Here's why:


Overview

Snokra Snake from EpicGordon Broome @ Orange Nova Avatars


(Left) Shows the front of the avatar.
(Right) Shows the back of the avatar.


Features

The avatar features diffuse, normal and specular maps.
It comes with Bento skeleton support and Fitted Mesh support.
It is moddable and highly detailed.
It comes with male/female version in one package.
It includes multiple sets of skin colors, eye colors and other textures.
It comes with a HUD and a lot of animations for face, hands and tail.
It comes with an applier system.
It's lightweight scripted.
It offers PSD files and Blender files for modding.
It's a cobra in disguisssssse.


Pricetag

It costs 1500L$ and is currently in beta.


Performance Data


(Pic) Shows the avatar in wireframe, as you can see the avatar uses triangles very sparingly and only ever uses a few more when absolutely necessary.

It's full triangle count is mere 27676 triangles. Next-gen games use 20.000 - 40.000 average, this avatar is on the bottom line of the next gen default which speaks for its well thought out mesh and quality as well as its small performance impact compared to other avatars. As comparison, the Maitreya body without hands, feet and head has 125.000 triangles. Belleza has even more.

The avatar uses a diffuse map, a normal map and a spec map, all of them twice for upper and lower body each, all of them are 1024 x 1024. Each texture is 4MB texture memory, this makes 24MB texture memory in total for the entire avatar.

The avatar uses multiple invisible states for different breast sizes, vagina states and male/female versions as well as the cobra hood, all of which can be removed if necessary. This can easily reduce its triangle count to ~15.000 triangles, that is incredibly few for such a detailed avatar.


Details

The avatar comes with a very detailed normal map for an extreme amount of additional detail on the scales and other body parts, both when the avatar is used in conjunction with glossiness or not.



Modding

The avatar comes with freely available Blender files, with all states, all rigging, all UV maps and doesn't charge you any additional cost for it or wants you to sign some washing machine contract that is meaningless anyway.

All textures used, both diffuse as well as material textures (normal and specular) come in a huge PSD package for free editing and mod making. Again at no additional charge nor signing any contracts or administration from the creator. If you want to paint hearts all over it you can go for it.

The avatar also has full mod permissions (copy and mod), you can edit any part, any face, delink, relink, rename, add additional parts or remove them entirely.

It's shape as well as it's alpha layers are 100% full perm, you can copy, edit or transfer them.

Since this avatar supports Bento bones and Fitted Mesh you can use almost all shape sliders, even quite a few from the face section.

The avatar has a good set of Bento animations coming with it, allowing to customize its face as well as its tail and hands. It also features a bunch of default skin colors, eye colors, different eye versions (slit and normal) as well as eyelashes, all packaged into a HUD.

The HUD also allows toggling each individual face's visibility and allows toggling between multiple breast sizes (on top of changing them via sliders), allows you to change the glossiness and the groin state (whether you want male or female and/or pg or not), the face gestures, the eye/mouth openness, whether you want to use talking animations, change tongue poses or eyebrows and finally it also allows you to toggle the cobra hood. This is just the tip of the iceberg.

The avatar also comes with an applier creator in case you want to make one.

What's more, due to its low poly count and high quality out-of-the-box state mods made for it are bound to be roughly equally low poly and thus very optimized and fast while retaining a lot of quality in the process.


In Conclusion

This avatar is the very thing that i've been urging and nudging people to at all times, it is the pinnacle of performance vs quality, it is absolutely top tier quality, offers 100% modability, comes with all resources and since it is going to be a very popular avatar will soon have mountains of cool content. THIS is the thing that i want to see from content creators, THIS is the very prime example everyone should be aiming for. THIS is the thing you should be paying money for. Stop paying for shit, stop paying for onion layered, overly complex, heavily scripted, lagpiles of hundreds and thousands of wasted dense polygon piles that you have to sell your soul to in order to be allowed to look at it and maybe, eventually think of modding. Stop buying Maitreya, stop buying Belleza, stop selling your goddamn soul, become a Snake today and demand better quality from your other creators, point them at this avatar, tell them how absolutely devastatingly shit their content is and together we will make Sansar look like the dumpster fire it is.



Here's my modded purple version to fit my name.



Friday, December 15, 2017

A whole dragon hoard of issues.

Ugh.



GPU and PSU are dying, i'm running out of money, getting forced to get a job, Patreon thingy, Viewer updates slowing down and an emotional roller coaster that finally seems to have shattered my, what i thought was a - by now - impenetrable thick layer of scales when it comes to my psychological and emotional parts of regarding what is going on. There's so much ground to cover today... this is going to be a very lengthy post.

Let's start with the easy things. Since a good 3 months my video drivers are crashing occasionally and completely at random times due to what i suspect is the GPU finally giving up after five and a half year of pure torture. It all started with the PSU suddenly blowing up and cracking down on my GPU basically activating the self destruction sequence that is now only a matter of time until my PC will simply shut down and refuse to start up again. In short, i'll probably need a new GPU soon otherwise it won't be just a few certain games crashing my drivers but Second Life might start doing so as well.. or any 3D application at which's point it will become pretty much impossible to work on the Viewer or even just play some games.

That leads to the next issue. Getting a new GPU and obviously not the same again but a decent upgrade (i'm looking at you GTX 1060) plus a new PSU would cost me roughly 300€, not exactly money i can spend right now, even though it becomes increasingly necessary.

Which leads to the next issue. Money. Patreon obviously wasn't enough and was never meant to be. It was just meant to keep me on a basic track to keep working on something i've been working the past 6 years on. I still live at my parents house so having a home is not a problem, at least not yet, though they have increased the frequency at which they keep nagging me to get a job for the worst case scenario which is again a ticking time bomb given. You know what i mean, the sad thing everyone does at some point. Given both of them have had heart issues already and one already collapsed once it's not too far off thinking that they won't make it much longer. When that happens, the house will inevitably be handed down to me and my brother and i don't see a reason not to keep a house we have build over 20 years ago, paid off and kept in shape for so long. This also means we need to be prepared for that occasion... which is going to happen sooner or later. Which forces me to get a job soon, a part time job at the very least and as already said in previous posts in the past, this will cut into my freetime and thus into the already very small amount of time i can currently get to work on the Viewer... although currently there's not all too much to work on anyway, thankfully. I'll be making at least one more update this year though hopefully getting the newly introduced vertex crashes under control that came with the last batch of crash fixes from Linden Labs.

I'll probably make some changes to Patreon, most likely removing the goals (seriously they don't mean anything anyway) and use Patreon as a more convoluted but safer way of donating something if you so desire. Not that it makes any difference but you should know anyway. I wouldn't say Patreon was a fail, it was just not enough, as expected.


So... this leaves me with only one topic, the one i find the hardest to talk about.

My crippling depression. It's probably not a secret nor does it come at a surprise that i'm depressed, this has been the case for half my life now. It was always just a simple up and down, never going too far either way, the usual every day sadness. Bullies in pre-school, bullies in school, bullies in job, bullies everywhere, friendship drama, family and friends dying, failed relationship attempts... that kind of crap. Usually this is the kind of stuff that just makes me butt hurt and leave whatever voice channel i'm currently in and ponder for a few hours before returning, acting like nothing ever happened. A week ago however i remembered a game i wanted to play that i totally forgot about. A visual novel mind you, totally not the kind of game i'd enjoy i thought but it had dragons, so i thought why the fuck not. Not expecting much from the game i soon found myself in a compelling story that i quite enjoyed.

Now it's getting really quirky, you should turn around if you mind weird and possibly overdramatized stories.

I've been playing games on and off since i was 6. Almost everything, almost every genre, including horror and emotional games. I've seen a shitload of stuff by now but what i found here was something nothing could have prepared me for. It's an emotional roller coaster deluxe. I've played sad games before and had my fair share of crying but this game was simply too much, it showed me a whole new spectrum of emotional pain.

So what exactly happened? You'll need some background information to get an idea why this might be so touching for me and not so much (or at all) for you. I'm a furry - surprise, surprise -, not the stereotypical kind though i like to act like one sometimes for added randomness. I like most kinds of furries, i like the art aspect of it, i like quite a number of games that come with furries and of course i like the sexual part of it as well. I have an exceptionally fanatical love for dragons, which is why you see many of my avatars having at least some resemblance of a draconic beast. Hell if dragons where real i'd want them to live together with us. This has always been a dream of mine. Actual real dragons, i realize they would probably be a hazard for us but who cares, i'd rather end up as a happy snack for a dragon than die alone crying in a hospital bed. I've always spend a lot of time just resting on my bed, thinking how life would be if this was real, just imagine your partner was a dragon. Imagine your post delivery guy was a flying dragon? (They would actually be reliable then, go figure), just thinking of all the cool and awkward every day situations this would bring up makes me wet. Imagine all the stupid questions you could ask them, how they even sit on our chairs... think of all the possibilities... wouldn't your fisher job be so much more awesome if you had a talking, flying dragon with you catching fish with you? Cue "Angels with Scaly Wings" the game that turned this thinking into an actual game (something i would have always wanted to do too).

Warning: MAJOR SPOILERS AHEAD.

The game takes place in a modern time, akin to our own, on an alternate version of Earth with small towns and cities where dinosaurs were genetically crossed with humans and other animals from the primeval times to create sentient, intelligent, self sufficient dragons. Humanity lives in a destroyed, post apocalyptic time where resources are rare and the only hope for humanity's survival is a mysterious portal that appeared at some point. Through it, humanity managed to contact these dragons and make a deal that humanity would offer technology for the much needed energy in form of advanced generators to sustain the needed systems to save humanity. You as the player enter the alternate version of Earth as ambassador of humanity and meet the dragons to make sure that deal is coming along fine. You meet with the locals, seemingly nice dragons, many different looks, colors and species, most of them having a certain special place in society. Flyer and runner dragons are couriers, big and strong dragons are policemen and so on. Soon after your arrival you meet with another ambassador of humanity that was send a few weeks before you were, telling you about strange on goings in this place and that something bad is going to happen. Before he could tell you what happened in a secret meeting at night you're being interrupted by one of the local policemen who was suspecting him of causing problems, the situation quickly escalates with gunshots and your buddy flees, leaving you with the rest. Over the coming days and weeks you spend time with the locals, learning about their culture and their relations to humans which they only ever had myths of, just like we do of dragons. A series of murders start to happen, valuable equipment is stolen and your buddy is the prime suspect, so you help the local police force to find him. At some point you find yourself suddenly getting knocked out. On wakeup you are being introduced to a mysterious figure who tells you the story about the on goings here. The dragons are doomed to be eradicated by a giant meteoroid coming for earth, wiping out all life, including you. Your buddy who figured it out already grew impatient and acted to speed up things, causing all this drama. Now the fun part. With the appearance of the portal on both ends, there was also a laboratory that contained immensely powerful generators, this was the very same laboratory that was used thousands of years ago to create these dinosaur-dragon hybrids by the very same mysterious figure that explained you what is going to happen. The problem is, both humanity and the dragons need those generators. Your buddy found out about this and on a supposedly friendly and enjoyable fireworks night used the outside noises to sneak into the laboratory to steal a generator to save humanity. You eventually cross him and end up trying to talk him down, trying to find a solution to save both worlds from extinction. After making it clear that your buddy is nothing but an egocentric little piece of shit who doesn't care about the dragons and just wants to save humanity he doesn't hesitate killing you if he has to. Now depending on how you played the entire game, which person you dated (or not) and which dragon you brought with you on that night  (or not) as well as which choices you took and how many times you already finished the game you'll see a multitude of outcomes. 5 bad main character endings, 5 good main character endings, 1 bad ending, 1 neutral ending and 1 true ending. This is where this game went into super turbo depression mode. As an avid dragon lover i obviously chose to date some cute dragon, spending a lot of time with her, reading her what felt like 5000 lines of text, listening about her backstory and why she is what she is. Her name, Anna. She's a biologist and scientist, working on a cure for cancer, her whole life consists of overtime in her job every day, being completely alone, being stressed and being in pursue for that cancer cure as she contracted cancer herself when when she tried finding a cure. Does this remind you of something? Yea. RL says hi. Honest and nice people wanting to help others always get the back end of literally everything. In one of her dates you tell her that humanity has a cure for cancer and you promise her to save her when you get the chance... back to the underground laboratory you'll get help from one of the policemen as well as the selected partner you brought with you. The mysterious figure also makes an appearance shortly after only to be shot down by your asshole buddy, next up the police dragon ends up getting shot multiple times before he could finish off that egoistic piece of shit. He turns around to shoot at you but your partner sacrifices herself by jumping in front of you, saving you and making one last attempt to kill him afterwards while he's busy with you. The end that ensues makes you listen to her last words, watching her as she basically dies in your hands. You walk out, the mysterious figure revealed as the "creator" of these dragons explaining you what you have to do. From now on you'll use the portal to travel back in time to the time you arrived, using your previous knowledge to do better in your next and all other subsequent runs eventually reaching the good ending of Anna after which she manages to save you without getting hurt but ending up again dying in your arms from cancer in an hospital, crying as she speaks her last words. You repeat this over and over, going through all the emotional ups and downs this game has to offer, choosing different paths, talking to different people, eventually meeting the other characters, learning their backstory too and permanently changing how the game plays out on subsequent runs. While your first run is almost locked into a given experience, like Anna getting murdered if you don't date her and thus preventing her from being there when the murder happens your next runs will end up saving her life and instead having another character die instead. This goes on and on until you've seen all the bad and good endings of each character and at some point eventually reaching the true ending, the actual "good" ending that saves almost everyone and brings the dragons into the world of the humans to live with them there and rebuild the world. Maybe i've just played it a few times too much but seeing all these cool and unique characters die or otherwise losing you just hit my nerve so hard. I've played some really sad games some of which still make me cry if i just hear the soundtrack... but this just blew me up completely. It's not just that this game is so incredibly fascinating due to time travel and dragons, it also makes a game out of what i always pondered about, it is almost like if someone heard my thoughts and made a game out of it, on top of that it is incredibly sad, even the good endings are basically a big fuck you in your face, they made me cry like a baby, they made me cry days after, every day now i fall asleep crying, knowing i'll be eternally unsatisfied seeing how infinitely awesome the existence of dragons would be. It makes me truly sad, it showed me something i never knew i wanted to much... and when i finally got it at least to some degree in form of a game it left me with the desire for more a desire i'll never be able to satisfy sadly, this makes me eternally sad, it made me realize that i will never be happy. I already accepted that life is pointless and existence is pain, this... this is simply too much. I'm thinking of this every day, every single minute i'm not completely distracted by something else i think about it, making me sadder every day. I honestly don't know how much longer i can take this. This will eternally hunt me... yet i want to go back again and play the game even more. Since this so many things came to mind, its flooded with thoughts, thoughts i just can't seem to get sorted out. I've been thinking of a RP SIM that basically emulates this story, exploring this still almost completely untapped area... RIP memory and emotions. Did you realize the picture above is a TL:DR of my feelings...?

But enough of this, you should really check out the game.
Angels with Scaly Wings

Now if you'd excuse me, i'll have to cry some more because i just relived the entire fucking point why i'm so fucked up right now.

Monday, December 4, 2017

Complexity and its complex complexity.

So apparently Oz has seen my changes to the Avatar Render Complexity changes and put up a warning on the Third Party Viewer Directory about it.


It's time i talk about this.

"Non-standard", yes. "Misleading", you got to be fucking kidding me, aren't you? Why is it that i was yelling at you Oz ever since the introduction of Jellydolls that Jellydolls in their current incarnation are utterly useless as they, and i quote the warning here: are "misleading for avatar complexity". It took me god knows how long to make you even consider reevaluating the complexity calculation. It wasn't until i literally manipulated the entry scene on that one open source meeting and made everyone talk about how shit and completely wrong the calculation is before you arrived, prompting you to ask what all the fuzz is about, to get you to openly state that you are considering looking into it again.

You don't seem to have any idea how infinitely frustrating it is being clockblocked by you over and over again because i'm not going the usual bootlicker approach telling you how almost perfectly fine everything is and suggesting a tiny change so it gets more perfect. You know as well as me that i'm not that kind of person, i don't lick people's boots unless they deserve it and there's only couple of people whose boots i'd lick. I'll tell you straight up honestly whats up and i did so when Jellydolls came around. I remember what you told me, you made it clear that you are not in for shaming bad content creators, you don't want to punish less experienced or outright bad creators for their inability to make better optimized content. From a company standpoint this is somewhat understandable, its derogatory and outright defamatory but from a developer and customer standpoint it is absolutely unacceptable. You constantly appeal to each and every content creators own interest in improving their skills and content optimization, this is an outright bad decision. You will never, ever manage to make content creators show more interest in improving if they didn't do so from the beginning on or had at least some sort of personality that allows thinking like that. Most content creators aren't and you are giving them zero incentive to step up their game, you don't punish them at all, you continue to allow them to game your systems that were meant to limit abuse. Have you any idea how bad the state of current avatars is? I knew it was bad but when i added polygon counts i was shocked at how wasteful each and every avatar is, yes I was shocked, the one that told you from the very beginning, well knowing that each and every avatar is a giant pile of shit. I expected over complex avatars but i didn't expect polygon counts in the range of multi-million for many avatars around me. That is not what triggered me to take this into my own hands, no, not at all. It was this very avatar, standing on a starting help island, laughing at me with its 3,500,000 polygons having roughly 40% less complexity than my own Avatar which i spend many hours and days on continuously optimizing, reducing texture sizes, disabling features where unnecessary, removing unused invisible states and cutting down on prim and polycount wherever possible to make rendering my already very light avatar even faster to render. This giant pile of SHIT of an avatar with poly counts so high, the avatar was basically a solid surface, it was laughing at me, taunting me, making fun of my optimization attempts, showing me what i already knew, complexity is useless, it in no way resembles anything that you could call "complexity", its more like a random number that increases depending on how much stuff you put on and the numbers are hidden, probably randomized each time you attach or detach something.

You always urge me to explain it in a way that it easily makes sense for you, so let me put this into an explanation that will show you that complexity as it stands now (and most likely will after whatever you have been brewing in the background) makes no sense.

A few quick facts before we start:
- More is always worse, no matter what it is, the more work to be done the slower its going to be finished.
- Rendering polygons isn't as slow as we might think but it isn't fast either if you have millions to render, especially if they are deforming.
- Textures seem like a free to render thing, they are not. Large textures can and will quickly have a massive impact on the overall performance, worst case you hit your VRAM limit and then everything goes to shit.

With that being said, let's continue.

Avatar A (Me):
35.5mb texture memory usage, 146.000 polygons (~30.000 of which are rigged), ~68.000 complexity, 30m² surface area, no particles, only a tiny couple of invisible extra objects and decent usage of normal and specular map as well as emissive masking.

Avatar B (Example above)
Unknown memory usage (couldn't see at the time), 3.555.000 polygons (~90% of which were rigged), ~40.000 complexity, 82m² surface area, no particles, most of the entire avatar were extra invisible states and body parts, no normal or specular map used.

146.000 - 3.555.000 total (2435% of me or 24 times me)
30.000 - ~3.200.000 rigged (10666% of me or ~107 times my body)
30 - 82 m² surface (273% of me or 2.7 times me)
1.2x multiplier for invisible surfaces
68.000 - 40.000 complexity (58% of me or two thirds of me??)

HOW? I have less polygons. I have less rigged polygons. I have less invisible states. I have less surface area, i use less VRAM memory (pretty sure), i have less everything, hell i even use less screen space (my avatar is smaller than most others), yet for some reason Avatar B gets only 58% of my complexity, how is this even possible? How can an avatar that clearly has more impact in every aspect that is measurable have less complexity? Explanation: You weight important, impacting features way too less. Instead you focus on punishing invisible objects (which shouldn't even be rendered in the first place) and add huge multipliers on top of features that are basically free, like glow. Given you have post processing glow enabled, which you must if you use Deferred Rendering, it's being rendered at all times anyway, regardless if you can see it or not. I put up a metric fuckton of objects and made them all glow like a Christmas tree, i could not measure a single FPS difference, sure internally it probably has some sort of impact, it needs to be processed and added but its so goddamn fast. The worst offenders however are polygons, 15 polygons for a single arc if i understood correctly, however using my calculator this doesn't add up at all. To go below 40.000 arc with polygon alone (not counting all the multipliers) you'd have to count roughly every 85 polygons as 1 ARC and that's just the minimum. I wonder how you got these values. This is the reason good avatars get high ARC counts and bad ones get better or equal ones. You can shave off too much ARC by simply not using any advanced features that are meant to cut massive amounts of polygons. This gives people a false impression that using these advanced features are much worse in comparison to simply meshing out everything with polygons. In other words, ARC is simply not punishing enough. One light (i use a bunch of them for my avatar) is worth 512 ARC, that's roughly worth 43.000 polygons. One light is worth twice my avatar. Do you see the problem?

Another big problem of your complexity calculation is the fact that you roll in your statement that your calculations were tested on a variety of hardware and the new one is supposed to be tested on a wide variety of them. You are adding variables where none belong. You're trying to make compromises due to different hardware, you shouldn't. You test it on one singular, decently working hardware level, one that is fully capable of running solid 60 FPS with all options enabled and then measure the impact it has, you don't try to find the middle ground between shit hardware that can't even handle vertex shaders and sees no impact because it's only capable of producing single digit framerates and hardware that is capable of running Second Life to its fullest, by doing so you jeopardize the calculation, the only way of making the calculation accurate over a wide variety of hardware would be having a variable complexity calculation which in turn would totally and completely make complexity useless as a global value and would only ever mean something to the person itself, this would not only make optimization harder but would make setting a decent complexity limit impossible because it varies from person to person on top of the variance between Viewers already present. You need one singular test one that takes both experience of the rendering engine, as well as framerate comparisons and test results into account, that is what i'm doing here right now and i'll tell you here and now that my calculation is not misleading, it is not perfect either, perfection in a world like Second Life is impossible but my calculation does its intended job much better than what your original calculation does, it identifies resource hogs and jellydolls them, even if this means 90% of the avatars around you get jellydolled. It's not a bug when everyone gets jellydolled, its the simple fact that they are simply unoptimized and especially to you that shouldn't come at a surprise. If we really want to achieve better optimization of content we need to tighten the screws. Bad content needs to be punished, it needs to be jellydolled or outright derendered, people using said bad content should be notified that something is wrong with their stuff, if they themselves do not care enough to trigger interest in optimization then you'll have to force them by pulling the rug under their feet and unless you come up with something that i deem accurate enough to represent "complexity" that does its goddamn job of derendering resource hog people (which it currently doesn't), i'm not going to pull this custom complexity calculation that is clearly doing a better job than yours out of my Viewer, warning sign or not. I'd even go as far as changing the warning and removing that misleading "misleading" because my complexity calculation is anything but misleading, you should probably put that "misleading" to your own Viewer because it misleads people into thinking that their piles of randomly cobbled together shits is good.

THAT IS MISLEADING.

I swear to god Oz, if i see another 3.5 million polygon avatar having less complexity than me in your new calculation i'll be the very first standing on your face and yelling at you in the next meeting. I refuse to accept these stupid compromises any further, either you pull through it with an iron fist or you don't attempt it at all, doing this in-between shit is just going to get your feature disabled, because that's what they are doing already, you've seen the "guides" in clubs telling people to disable it. No?


I'm sorry for the really long rant but i can't help it, this shit is grinding my gears, it has been for years and i watched it long enough to evidently say that nothing has been done to stop the resource-hoggery that is going on right now. It's time someone with the balls tells you the truth.


Now time for me to get off and cooldown for a few days, then sort this mess out that is the update 2.9.4. Snapshots locking up, framerates becoming completely unstable, flexis going haywire and that's only scratching the surface.

Sunday, December 3, 2017

Black Dragon 64x - Update 2.9.4 "Bit Dragon"

EDIT: Apparently a fix that is supposed to fix some "save as" incremental snapshot behavior was causing the Viewer to freeze on snapshot save. I removed said fix and the snapshot function is now properly working again, in fact so good, the 10 second freeze on first time saving (due to counting your snapshots) is gone too. Those 14 people who had the misfortune to download this broken build, please redownload the fixed one.


This update should really be called Arc Dragon.


So this update mainly cuts down on the giant numbers that i introduced with the last update for the render complexity calculations, the calculations are mostly untouched but will display them much smaller with a 1/10 of their original value. This means 60.000 now is almost the same as 600.000 before, keep this in mind before you say oh wow 100.000 i'm not that bad, because it means you're actually 1 million ARC.

I also have a special something that you might want to look at, i call it the Advanced Complexity Information, it's a window that lists all avatars, their attachments and their stats as well as their individual complexity values and how this complexity comes together.



The window can be found in Dragon - Useful Features - Performance Tools - Advanced Complexity Information, right below the option to display complexity. Not hard to find. I hope to improve this window with better explanation how the checkout list on the right works but for now it should give you a pretty good idea what and why your stuff has a certain complexity value. Let the optimization begin.

Other changes include more Patreon Patron's (yay) being included and a code merge with the latest Linden Release. This fixes some inconsistencies with avatar physics, they should be more stable now (but will still go bonkers with unstable FPS) and the notorious "inventory reset" issue whenever you detach something while its open. Some crash fixes and other low-level stuff are included too.

Some cool things are planned but also some bad news are impeding. :(

Have fun and FEEDBACK FEEDBACK FEEDBACK!