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, September 20, 2020

Black Dragon 64x - Update 3.9.0 "Visualizing Dragon"

 This one was quite plagued with fails.



Originally this update was planned yesterday, exactly one month after the last one but the merge with the latest code did bring quite some problems... and i don't mean like a broken button or something... no. All baseline animations were broken, didn't play and basically most actions like jumping and sitting got you infinitely and permanently stuck. Also there was a nasty crash whenever someone (including you) played the standup animation after falling from great heights. This made the Viewer basically impossible to use properly. Cracking down on this one cost me a few hours but trashing and redoing something hasn't been all too rare lately.

In fact the entire month was basically riddled with issues like this. As some of you may have noticed i've dabbled a lot in VRChat lately and started working with the Unity Engine. As much as i hate the Unity Engine its usage is quite "user friendly" although extremely complex. I'm saying that from a developer point of view though. The way the editor works though and what's possible with it and how easy it is was very surprising although a welcome one. In fact many of the things i like so much i want to bring them to SL. If anything this has got me quite some inspiration what else i could do with the UI. Particularly "Drag & Drop" is a big thing in Unity and i'd like to make more use of that in SL as well. In Unity you can basically drag any asset and drop it on any fitting UI Element. An animation preview with a dummy but want to see your avatar? Just drag your Avatar into the preview window and viola, it will be previewed with your avatar. Great. Want an animation to play in this state? Just drag it into the motion box. You can basically drag anything anywhere as long as it belongs there. We do kind of have this in SL already but i feel like this could be extended in some places. For instance we can Drag & Drop textures into texture pickers. How about dragging animations onto your avatar to play/preview them? We can already drag objects onto our avatars to attach them. How about dragging EEP presets into the world to apply them? Just some ideas to start. Unity also has a simple animation editor build in which is quite powerful though and can even translate basically any animation from any skeleton to another as long as they have a similar structure. Looking at their animator has given me some ideas how to tackle my own Animator and how to possible solve the UI look issue.

Further on Friday's meeting i also suggested a new effect to play with that Unity allows, it's called "Scrolling Emissive" there and it basically does what it says, it uses the Emissive Mask but instead of making everything emissive as per the texture's definition, it has a small configurable area that "scrolls" through from one side to another, fully configurable speed and direction of course. We already have emissive and adding this would be a very simple addition to the emissive shader as well as adding a couple options for the direction (which would be the speed at the same time, think of it as the texture offset options), possibly an additional brightness slider, scroll area and so on. It's a very simple thing and wouldn't hurt anyone, wouldn't even cost performance really.

Here's the effect in action. It's simple but looks really great. This could be used for many great things.


Currently this is only possible by scripting the diffuse texture to animate which also moves ... well the entire object's texture making it basically unusable for this unless you make it a separate layer, which introduced a whole host of more issues and a big performance cost.

It seemed like the Lindens seemed genuinely interested. Similarly they seemed interested in a volumetric cloud feature i suggested in the previous meeting. Maybe there's still hope we'll get these some day.

Anyway. Back to the update itself. I consider the update quite important, not only does it finally bring in the latest release code from Linden Labs with a good chunk of behind-the-scenes improvements, it also brings a couple bugfixes. Most noticeably (for compilers though) it brings the move to Visual Studio 2017. I did merge this last month already but i was facing massive performance degradation which forced me to drop it. This time however it seems like performance is equally good if not even slightly better. The move to VS 2017 also means for you as user that the Viewer will no longer require Visual C++ Redistributable 2013 64bit, instead it will now require Visual C++ Redistributable 2019 64bit, also often called the 2015 - 2019 package. I updated the pre-download page to link to that one instead. Make sure you install it if you don't already have it.

Further the update includes a fix for a nasty crash when switching water presets as reported, this was due to the water preset being loaded as sky preset which put the Environment into an invalid state and trying to transition from this into the next water preset caused it to crash. Funny times.

I've also added all the latest Patrons as usual and fixed a some longstanding compiling issues (that are probably not interesting to you unless you compile the Viewer yourself, which i hardly doubt anyone does). Lastly i added all missing tooltips to the Machinima Sidebar and brought all Display tab tooltips to the Machinima Sidebar so it uses the new fancy tooltips to display information about all the available features and options.

Most of the rest of time was either spend outside of SL or trying to do some improvements that sadly didn't work out. I had hoped at least some of them would make it such as the option to only show bones in the Poser that are actually rigged, reducing the clutter a lot and only showing bones that are of interest for your avatar. Sadly LL's underlying code regarding determining "rigged bones" is... random at best.

But i'm planning more UI improvements. I've spend some time in Blender (the 2.8.0+ versions) and i'm genuinely interested in their ways of presenting action information. They have small icons and a short action tip at the bottom of the screen always giving you a quick overlook over your actions or additional features. For instance if you hold down middle mouse to turn the camera, it shows the Alt key at the bottom, telling you that you can hold it to change to "move camera" mode. I very much like this subtle help and would like to investigate some ways to add this to the Viewer. Also the way the tools are presented sparked interest. Toolbar buttons (much like we already have) instead of in the tools floater as buttons, this would free up a good chunk of the build window in general and would make these tools available regardless of its visibility or current mode. I know you don't use this Viewer for building because it isn't made for building (just because it doesn't have copy & paste object properties) but i use it for building and i'm quite happy with it. It could use some extra love too. We'll see how that goes. I will also investigate a way to convey more UI features to the users with the Blender style icons, such as CTRL + Right Click to reset an option. Most people don't know about these things and there's hardly a good place to tell them...



Anyway, as usual if you find any issues, please report them (preferably in the Discord channel) where they can be easily tracked and responded to.

For Patrons i'm planning to extend the "store-in-login" deal to basically "anything-that-makes-sense-on-login". I'll update the Patron page when i have some specifics what can be put on the login screen. Remember that i don't want to make the login screen another news feed like the original is. So i gotta be careful how i add more stuff to it. Generally though you'll be seeing some more possibilities soon though, people have been asking for nice regions (without a shop) or possibly blogs too. I'm personally not a fan of blogs but i suppose i'm a bit different there, i don't read fashion blogs, i have my own fashion. Nekkid snek fashion. But i figured you like to read fashion blogs, especially humans do.

Lastly, for the past years the right-click pie menu has run rampant and over all these years i didn't manage to reproduce a single crash while there are people out there who can easily reproduce a right-click crash with a 100% chance, over and over. If you are truly willing to help me catch this issue i can give you an instruction how to help me get to the bottom of this. Generally this will require you to install Visual Studio to be able to "debug" the crash when it happens. Visual Studio adds the ability to jump in "just in time" as the crash happens and point to the exact line the crash is happening at. The callstack would be a great help to get some directions from where this is coming from and what might be happening. I can optionally provide you with the library and compile files that might be required for the debugging to spit out a useful callstack, i can give them to you if required. So if anyone is truly up for investigating this and has some time at hand and some patience, message me and we'll have a look into this. Note that you need to be someone who sees somewhat semi-frequent crashes when right clicking with pie menus. The easier and more reliably you crash, the better. Anyone can do this but checking whether the crash is fixed can take some time depending on how reliably you crash.

Thank you very much for your continued support!

By Spectris Audax


By Loverdag


By CassandraMiddles

Wednesday, August 19, 2020

Black Dragon 64x - Update 3.8.10 "Enhancing Dragon"

 The TLC (Tender, Love & Care) DLC (only 9.99$)



What, it's already a month again? Jesus, i did lose track of time there. Well this update is jampacked with fixes and improvements! I did try to get some experimental things in but... well they turned out too big for what's supposed to be a bugfix/improvement update. This update also doesn't come with the initially planned LL code update. The one i merged forced me to go to Visual Studio 2017 and rather than the expected performance improvements that usually comes with updated tools ... it was a disastrous massive performance drop, one i simply cannot accept after EEP already eating a good chunk of FPS.


The update comes with lots of other improvements anyway! So let's see what this update contains.


Let's start with the UI changes. I've gone through all preferences tooltips and improved them, i made tooltips support linebreaking so i could organize them better, the new tooltips look much better, cleaner and generally offer some extra information in comparison to the old ones!


This should make reading them and getting information needed from them much easier. In the same vein of improving readability i also changed the color picker alpha texture, now its a diagonal slice which work regardless of the color display shape. This is now used in the Edit window to show transparency.

While readability is all nice n dandy i've also improved the usability of several things a good chunk. Starting with sliders which have been quite an annoyance for a long time due to their... erratic and unprecise handling, especially since the Viewer uses them a lot. Sliders will no longer immediately change their values when click-dragging the thumb, they will now only change their value if you actually move your mouse. On top of that you can now type in ANY value into the text entry, regardless of what the slider allows in increments, min/max are obviously still capped but you can now type in 555 when the slider only goes in 1000 steps. Note that the slider itself will continue to go in 1000 steps, this ONLY works for typing into the text field.

While going through preferences i've also removed a couple broken options, and added several new things. You can now find seveal "open" buttons in Preferences - Viewer. These will open the cache, logs and viewer log file directories respectively, this should make it a lot easier to get to your settings, cache and viewer logs, especially for me since i don't have to explain you how to get there.


I've also added delete buttons as you can see, to clean your viewer logs, you should probably do that from time to time. Every week or so.

While doing a few rounds through the code i've also cleaned up some messes here and there, simplified some code parts and fixed a couple other issues. Mostly reported issues such as not being able to load and delete presets with a name exactly like a default preset. Doing so also magically fixed (it seems) the issue with name encoding. From what i've tested, it seems to be (once more) like it doesn't matter anymore what the name of your windlight presets is, encoded or not, or both. You should now be able to load them all again, if you still find one that's causing issues, please report it to me. With that the import function slowly loses usefulness but i've not forgotten about it, instead i've actually fixed it and it should again work, even better it now can import both new EEP and old Windlight presets (for whatever reason you'd want to import already imported EEP presets). I'm also thinking of doing a multi-import.... but maybe later.

Now the interesting bits about this update. Rendering. Quite a few of you probably noticed by now that something is... off with water reflections. They do not match up when rotating your camera and they do not reflect alpha masked objects. Well, needless to say they will now do exactly that! Screw dem bugs!



There's also a hidden little new feature, you can find it when previewing any animation. You'll find a slider there now that allows you to go through your animation and jump to any point in it, even in between keyframes! This is the very first step to an animator tool.


There are lots and lots more small improvements everywhere but they are far too insignificant and too many to list here. So i wont, but you can check out the changelog to see all of them.


Lastly, i'm aware that Bitbucket discontinued support for Mercurial Repositories, i didn't expect them to lock down the entire repository though, just delete the source or something. This means i have to move a lot of stuff, including some formal stuff for the TPVD inclusion to here unless that's not okay, in which case i'll have to seek out other places to put it. I'm sorry for the inconvenience this has caused regarding downloads, this is why i had to push the update today and get as many things done as possible in a short amount of time, so expect possibly broken things.


As always, thank you very much for your support although the patronage has been declining lately. If i missed anyone, please please please do tell me!



By CassandraMiddles

By KT Syakumi

By Kissmebaby Allen

Thursday, July 16, 2020

Black Dragon 64x - Update 3.8.9 "Enhancing Dragon"

Some more bugfixes for some reported issues, namely the Fixed Environment editor breaking upon changing settings too fast and having increasingly longer freezes with growing preset lists when switching between presets. Really nothing fancy yet.

Wednesday, July 8, 2020

Black Dragon 64x - Update 3.8.8 "Enhancing Dragon"

I guess windlight transitions were broken. Fixes'n stuff.

Tuesday, July 7, 2020

Black Dragon 64x - Update 3.8.7 "Enhancing Dragon"

It's getting frustrating to fix one bug just to add 10 more which when fixed break what you've fixed before, this has been going on for 4 days now.

I hope this was the last of it and yes i know that presets may behave weird or reset under very special conditions when mixing local and inventory presets, i simply cannot fix it as the previous 3 updates clearly proved, i keep breaking whatever i've fixed before so i'm giving up on it. I'll simply leave it as is right now and we have to live with the fact that a very certain order of operating the editors causes your Windlight to be reset. I... just want to go back to Windlight... EEP is getting worse and more complicated with every day i spend looking into it.

Sorry for the inconvenience.

Monday, July 6, 2020

Black Dragon 64x - Update 3.8.6 "Enhancing Dragon"

And more bughisses and feedback stuff.


Editors should now display the preset name you are working with (again), inventory presets are listed in the presets dropdown (again), an RLVa crash was fixed, the RLVa restrictions window finally displays restrictions again (after many years), the group join fee shouldn't be cut off anymore and the some wonky behavior with the RLVa camera preset should now properly behave again.

If you still find yourself unable to change the camera presets you most likely either have something attached that has taken control of your camera and forces your camera into a certain position, which might block presets and more likely you are being blocked by the RLVa restriction @setcam, which prevents you from switching camera presets or alter them. In both cases you should deattach everything. EVERYTHING. Not just your HUDs, absolutely everything. However before you do go into the RLVa menu (Dragon - RLVa) and select Restrictions and check whether a restriction to your camera is applied via @setcam and which object is doing so (it will display the name if its an attachment or the UUID if its something inworld). In the case of an RLVa attachment you'll have to detach it and relog unless you can toggle the @setcam restriction somewhere in said attachment, i doubt it though.

Sunday, July 5, 2020

Black Dragon 64x - Update 3.8.5 "Enhancing Dragon"

Rapidfire PEW PEW.


There were bugs that i snaked in. I hissed them out and now the Viewer can slither on.

Welcome to Snekdate #1, bugs hissed: ALL OF THEM.


Water specularity changing randomly. Hissed. Up and down arrows not working anymore in dropdowns. Hissed. Preset checkboxes not checking anymore. Hissed. Inventory presets ignoring windlight transition times. Hissed. Usability. Hissed.

SSSSSsssss SSS SSSS ssss SSSssssSSS

Snek now deserve boop to da snoot!


Saturday, July 4, 2020

Black Dragon 64x - Update 3.8.4 "Enhancing Dragon"

Phew, this took long.

I just wanted to take a week or two off and get to do some stuff with friends and poof a month was gone, then i started hammering on stuff that broke spectacularly apart and required a lot of time to fix but it was worth it!

This update brings you a special little something that i decided last minute to add haha! (on top of the other 5 trillion things i wanted to have done before i release this)

So here we are a brand new update packed with the good stuff!



The whole time i was "away" i kept following the various EEP discussions and had a close look on what people think and there was a lot to chew through here, this update brings you the first good chunk of additions and improvements. Reintroducing Day Cycles! You can finally tiggle toggle that Day Cycle checkbox and use them again, all of your old ones should work unless they have an invalid name, in that case you'll have to go into the folder and rename them... or... you know yell at me again and i'll do it for you.


With it of course came a million bugs that needed fixing, all of which i have hopefully fixed by now and hopefully also replicated the old behavior as much as possible.

Next topic was the absence of a lot of old presets all of which have been brought back! Sky, Water and Day Cycles should all be back, all the ones we had in previous Black Dragon versions.

A big problem of EEP is that people are seemingly confused despite my best efforts making the Windlight editors look as close to the original as possible while adding all the new options into places they make sense, as you may have noticed by now the Sky editor has had a few options shoved around in its tabs to make space and to group them a bit more logically, i know this takes getting used to but lets be honest, we all just open it and start sliding sliders and see what they do until we like what we see, no need to know the exact background calculations of every slider but i did hear one big part out and that was apparently the biggest confusion of them all, the "Sun Position" which was previously simply named Sun Angle and East Angle. You have to agree that these make little sense really, they should have been Sun Angle Up/Down/Left/Right or North/East Angle respectively. Which is why "Position" made much more sense since you're changing the position of the sun in the sky. Nonetheless i relabeled them to Sun Angle again and took this opportunity to add "Scale" to it since apparently people didn't know what the "S" slider did. Now you know, its Sun Angle and Scale.

Another request I've heard a lot was changing the Windlight transition time.... and well its back! Yes you can finally set the transition time again, this time however i removed the transition checkbox since.... lets be honest, you can just set the time to 0, does exactly the same and saves quite some code.

Other changes include the relabeling of "Projector" shadows to "Sun, Moon and Projectors" to make it crystal clear that this is not an option where you choose between Projector shadows and Sun/Moon shadows. I mean just think about it, why didn't your shadows vanish when you used Projector shadows? It doesn't make any sense!

More changes include some SSAO and Shadow softening tweaks, shadow precision tweaks (especially at high altitudes), bringing back the old pre-EEP shininess (YES YOU HEARD THAT RIGHT), a long standing issue with rigged mesh shadows flickering when the mesh swaps through alpha states (poor Sergal avatar is finally fixed) and finally light reflections on water coming back and not just that i also fixed the weird light reflections on the shoreline when close to water with lights attached to you.

Pre-EEP (new)
Post-EEP (old)



You can now also set the shadow resolution up to 8K!

This update also brings the image decoder OpenJpeg to version 1.5.1. You may see drastically increased texture rezzing speeds too!

And if you thought this can't get any better, i have a very special gift for all RLVa users. I updated RLVa to the latest version featuring EEP support. I played some Fright today to see if RLVa works.




By Altcake

Thursday, May 14, 2020

Black Dragon 64x - Update 3.8.3 "Enhancing Dragon"

Here we go, the last update for probably the rest of the month.


Don't worry, i'll be monitoring any issues that come up and work on them when i get some time but starting at the 16th i won't be active for a while, big stuff is coming up and it will keep me busy for a good week or two. So lets hope all the baddies have been fixed in this update!


This brings me to the actual changes of this update.

Starting from now on any snapshot resolution above 4K is unsupported and is locked by default. You'll find a new option that allows unlocking resolutions for up to 12K at your own risk.


The bone camera dropdown has been added to the preferences window, no need to open the camera controls anymore, everything can now be configured from the preferences window. Hooray.


Dramatic Tail Wag Intensifies

While at the topic of camera related stuff, both bone camera and the cinematic camera have been slightly changed to be subject to camera smoothing which means they will now behave slightly different than before.

Also, using both at the same time will no longer freak out the camera and make it stick to 0 0 0.

Next up is EEP/Windlight (again). Daycycle editor has been slightly changed, all controls should now disable when no preset is selected in the preset timeline to visualize that the controls wont do anything at this moment, hopefully reducing confusion when and why sliders wont do anything. The tabs have also been reordered from lowest on the left to highest on the right, since we read from left to right after all, right?

Sun and Moon position sliders should no longer move the Sun and Moon diagonally and instead rotate them properly straight.

The "Environment" tab in About Land should also now be fixed and contain the new EEP controls and the Sky/Water editors should hopefully be less crashy for those of you who have been randomly crashing using them. I've also increased the Sun/Moon beacon size to make them better visible.

Several people also had the strange issue that after a graphics initialization failure they could no longer get Deferred Rendering to work, this is because Deferred Rendering requires a few extra options to be enabled beforehand, options that can no longer be found in Black Dragon since many years because they were originally completely removed, but rebuilding the Viewer on the LL Viewer brought these back and failing the initialization disables them without giving you the ability to re-enable them unless you know the debug settings to look for. Fear no more, Deferred when toggled should now automatically toggle these on putting this issue to a quick rest!

Also a crash introduced in the rebuild when opening the "Window Size" window was also fixed.

Lastly one particularly annoying thing that has been reintroduced with the rebuild was fullbrights ignoring atmospheric haze, needless to say that i do not agree that fullbrights should do this. With this update they will be fogged just like anything else, they remain light-less of course but they will vanish behind fog just like any other object now. I mean a TV in real life doesn't infinitely shine through thick fog just because its very bright now does it? If you're wondering what i'm talking about.



Pretty sure you agree that it looks ridiculously stupid right?

Note that beginning with this update i've added the VCRedist 2013 64bit package to the package, it will automatically start after the Viewer is successfully unpacked, this should hopefully reduce the "I'm getting an error on startup" cases drastically.

As always, thank you so much for your support!

By Spiritus Natus
By Syakumi

Thursday, April 30, 2020

Black Dragon 64x - Update 3.8.2 "Enhancing Dragon"

Aaaand another bugfix update!


You get bugfixes, and you get bugfixes and you get bugfixes. Bugfixes for everyone!



Screen Space Reflections should now work with shadows, ssao and blur light off. Defaulting water height should work again, the "My Environments" window should now display all your settings and has been overhauled too. SSAO blur size should work again and SSAO itself has been slightly tweaked. Saving a preset from Fixed Environment after entering the name (but not yet clicking out of the name entry or committing with Enter) should now save the preset with the correct name that you entered. Much more importantly though, all presets should now be loadable again, regardless of their names and regardless of whether they were escaped properly or not. No more need to import them (hopefully).

Something that has been long in the coming was some tweaking to complexity values. I've finally gotten around to do just that, i lowered all complexity values by roughly 50%. This will drastically lower numbers but don't expect your 1 million triangle avatar to magically be fine, the calculation is still as punishing as it was before, the numbers are just in a smaller range now in hopes to trigger stupid automated script banners less. Again though, if your avatar is a shitfest of optimization it will still get a high complexity value, just not as ridiculously high as it was before and you will still be banned from such regions but at least because you deserved it. I might tweak them more but for now that should lessen the severity of that issue for now. Also... the 800.000 max complexity limit should now be enough for almost all avatars (hopefully).

Finally because some people have been nagging about this i've raised the maximum snapshot resolution to 12K. Yes. 12K. 12000x12000. This is mostly for GTX 10XX cards and i doubt that you'll get too many shots in with lower cards before the Viewer decides to poop its render pants and explode in a giant mess. Here have a quick 12K shot.

https://live.staticflickr.com/65535/49821557928_fcd3aeac8e_o.png

As always keep them bugreports coming.