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.

Monday, December 23, 2019

Black Dragon Viewer Guide: #6 Tone Mapping & Color Correction

What is it?

Tone Mapping and Color Correction are commonly used to enhance the picture with additional color or in case of Tone Mapping aiding in compressing the image color ranges to allow non-HDR to have a higher range of colors available in their limited color range, this is to give an enhanced sense of contrast or colors in the final picture. Black Dragon uses Tone Mapping and Color Correction slightly different, instead of compressing the color range it is used to enhance the overall colorfulness and contrast of the image. Some would say it 'blows out' colors a bit but this is essentially what makes Black Dragon's pictures so 'crispy'.

How does it look?

As shown in the pictures Tone Mapping and Color Correction create a more neutral color scheme, while at the same time making the details on some parts of objects 'pop' more. Vibrant colors profit most from this and these features can vastly change how a picture looks depending on the scene they are used in. It's main goal was to get rid of SL's global greyish look that you would see most noticably when not using 'Full Range' colors.

How can i use it ?

You can enable Tone Mapping and Color Correction by opening 'Preferences' and selecting the 'Display' tab, here you'll find the 'Tone Mapping' section where you'll find the 'Color Correction' options as well as all options to configure Tone Mapping itself.

What can i change?

Quite a lot actually, Tone Mapping and Color Correction probably offer the most feature-unique finetuning options out of all rendering features. You can totally customize every aspect of how Tone Mapping interacts and how and which color to correct via Color Correction. From certain presets for Tone Mapping to each and every single calculation ramp can be configured and Color Correction also offers configuring the exposure, gamma and offset of each of the three color channels. (red, green and blue)


Despite offering the most options out of all features it is incredibly hard to control and even harder to get just right, it takes a lot of patience to get these features configured to give your picture that extra bit of 'oomph'. It is even harder to create a default preset for everyone to use.

Black Dragon Viewer Guide: #5 Depth of Field

What is it?

Depth of Field is a post processing technique commonly also used in photography where it is a side effect of how the camera is configured to take the picture in question. In 3D rendering it is applied as post processing effect to simulate this effect. It is commonly used to put a certain part of the picture into focus but it can also be used to blur out less good looking parts of the image.

How does it look?

As shown above, Depth of Field blurs the area out of focus, in above's example the focus are the two metal beams in the foreground, right behind them Depth of Field starts to blur, increasing in strength the further it goes back until the configured threshold is reached. In the example above it was used to 'guide' the viewer's focus to the foreground, something out of focus is naturally less interesting to us than something that appears clear, we can use this to put emphasis on something or someone.

How can i use it ?

You can enable Depth of Field by opening 'Preferences' and selecting the 'Display' tab, here you'll find the 'Depth of Field' tab which includes all its options as well.

What can i change?

Just like with real cameras you can configure certain aspects of Depth of Field in rendering, this includes the Field of View, the F-Number, the Focal Length, Circle of Confusion and the Resolution of Depth of Field. In addition you can also customize the time it takes for Depth of Field to switch focus from one focus point to another. Further there are two interesting options to switch between a cheaper but faster Depth of Field calculation and an option to include transparent surfaces into Depth of Field. Especially including transparent surfaces can make a huge difference in how Depth of Field appears.


The 'High Quality' Depth of Field is an extremely GPU intensive feature and will quickly drop your framerate if you use a strong blur. It is highly suggested to add Depth of Field at the end of your photography chain as it can make working and finetuning the scene further really annoyingly slow.

Not including alphas into depth can be super useful for Depth of Field, it will make Depth of Field ignore semi transparent particles and stops the 'sudden square blur' that might appear due to this.

Depth of Field stacks badly with Volumetric Lighting, often times Volumetric Lighting will produce 'sharp edges' where objects would otherwise be blurred.

Depth of Field does not scale with resolution, this means that if you take snapshots at higher or lower resolution than your current window you'll have to reconfigure Depth of Field for these resolutions, Depth of Field shares this weird behavior with 'Light Softening', 'Screen Space Reflections' , 'Screen Space Ambient Occlusion' and 'Volumetric Lighting'. Keep this in mind.

Black Dragon Viewer Guide: #4 Screen Space Reflections

What is it?

Screen Space Reflections, just like Screen Space Ambient Occlusion is a screen space limited feature that aims to improve the visual quality by offering 'cheap' versions of otherwise highly demanding features, in this case full blown reflections. It's not perfect and brings its own set of issues but does a decent job of giving especially metallic surfaces a lot more realism. It does so by doing simple post process reflection calculations and aproximating what should be reflected and how much.

How does it look?

You can see that Screen Space Reflections aren't particularly realistic nor correct but they do a decent job of giving these metallic beams that extra bit of metallicness, the wall on the left and the beams in the roof also profit a lot from the reflections of sky and other objects inside the room. Generally Screen Space Reflections can massively improve the looks of virtually anything if the specularity is configured properly and normal maps are used, they also add nicely ontop of the very bland and boring default light reflections.

How can i use it ?

You can enable Screen Space Reflections by opening 'Preferences' and selecting the 'Display' tab, here you'll navigate into the 'Deferred Rendering' section where you'll find the 'Screen Space Reflections' group, you can turn SSR on or off here.

What can i change?

Screen Space Reflections doesn't offer much options outside of the resolution and brightness both options which can be found right next to the feature toggle itself. There really isn't much to change about Screen Space Reflections anyway, its highly dependent on the user content it is used on.


It's not exactly accurate nor realistic and as screen space limited feature also fails on the screen edges and cannot include objects or landscape outside of your screen. It is also a semi-expensive GPU shader feature and GPU's similar to a GTX 600 series will start to slow down if the resolution is set higher than ~13.

Screen Space Reflections do not scale with resolution, this means that if you take snapshots at higher or lower resolution than your current window you might have to reconfigure Screen Space Reflections for these resolutions, Screen Space Reflections shares this weird behavior with 'Light Softening', 'Depth of Field' , 'Screen Space Ambient Occlusion' and 'Volumetric Lighting'. Keep this in mind.

Black Dragon Viewer Guide: #3 Shadows

What is it?

Shadows, the bread and butter of Deferred Rendering and Black Dragon. Shadows completely change the environment, the mood, the scene in and around. Having shadows is the difference between day and night. Both sun and moon are a global light and in addition projectors can also be used as light sources casting shadows.

How does it look?

As you can see shadows make a huge difference, they change the entire scene from a brightly lit 'outdoor' place into a proper closed building with a roof on top. Combined with SSAO they are the single biggest visual improvement you can enable in any Viewer.

How can i use it ?

You can enable Shadows by opening 'Preferences' and selecting the 'Display' tab, here you'll navigate into the 'Deferred Rendering' section where you'll find 'Shadows' which feature off, sun and moon only or sun, moon and projectors.

What can i change?

You can change whether you want to see shadows from sun and moon only or want to include those of projectors as well. Further you can control how much ground shadows should cover and which resolution each of the 4 sections has. Note that changing the distance of one section can negatively impact the accuracy, more ground covered means less accuracy. You'll want to keep the first two sections very small. Further each projector shadows resolution can be changed as well. Shadows are also affected by 'Light Softening', as without shadows will have no blur and will appear pixelated.


Shadow resolution has a huge impact on performance and so does the complexity of the scene itself. The more complex a scene is the higher the impact of shadows will have on your framerate this is just amplified by shadow resolution. Shadows will also always appear pixelated if cast by a semi transparent object or surface or are falling onto one. Nothing can be done about that, it's a rendering limitation of how alphas and light blur is implemented.

Projectors are a massive performance impact if used wrong and changing increasing their resolution just worsens it.

Shadow distance can make or break your shadows, if you configure them badly you'll end up trashing your shadows completely, if you can't figure out good distances, try the 'Automatic Shadow Distance' option, it gives you far less options but does a decent job if you can't do it better yourself.

Black Dragon Viewer Guide: #2 Screen Space Ambient Occlusion

What is it?

Screen Space Ambient Occlusion (or in SL commonly only known as Ambient Occlusion which is a combination of several features) is one of the most common and basic advanced shader features used to produce a more realistic scene, Screen Space Ambient Occlusion is used to give the scene more depth and fake 'secondary shadowing' in a cheap and affordable way, or simply to calculate Ambient Occlusion of a scene.

How does it look?

Notice the darkening around objects touching other objects? It is a bit hard to see as these building parts already bake Ambient Occlusion partly into their textures but you can clearly see that especially the curvy walls in the back get some depth and actually look curvy with SSAO rather than like a flat distorted wall. The transition between the front truss and the wall aren't as harsh anymore either and their shape is defined a bit more, their metallic surface is shaded better and convey the depth better. Most people would call it "It looks less floaty" objects look more integrated into the scene rather than abstract floating objects painted on top. Ofcourse without shadows this effect is not complete, it would look a tad better with shadows.

How can i use it?

You can enable Screen Space Ambient Occlusion by opening 'Preferences' and selecting the 'Display' tab, here you'll find the 'Screen Space Ambient Occlusion' tab and its coresponding options.

What can i change?

Screen Space Ambient Occlusion comes with few but very important options. You can change the blur size (Blur Size), the strength/darkness/brightness (Effect), the radius (Scale), the max radius (Max Scale) and the distance inclusion (Factor). In addition to these options Screen Space Ambient Occlusion will also react to the Deferred Rendering option 'Light Softening' which can be found in the 'Deferred Rendering' section, it controls whether light (and thus SSAO) should be softened or not.


Screen Space Ambient Occlusion as the name implies is only used in Screen Space, objects outside your view are not included and thus not properly included when they stick into your screen partly, most noticeably SSAO will not correctly work at the edge of your screen, this is a limitation of SSAO but the price of a very cheap feature.

Screen Space Ambient Occlusion does not scale with resolution, this means that if you take snapshots at higher or lower resolution than your current window you'll have to reconfigure Screen Space Ambient Occlusion for these resolutions, Screen Space Ambient Occlusion shares this weird behavior with 'Light Softening', 'Screen Space Reflections' , 'Depth of Field' and 'Volumetric Lighting'. Keep this in mind.

Black Dragon Viewer Guide: #1 Deferred Rendering

What is it?

Deferred Rendering (also commonly and falsely known in Second Life as Advanced Lighting Model) and correctly labeled 'Deferred Shading' is a commonly used rendering technique which moves the actual shading to the second pass of vertex and pixel shaders, while the first is solely used to gather relevant information that will be used in the second pass to calculate lighting and shading. It's biggest advantage is decoupling the lighting from the geometry pass which allows rendering a lot lights for instance without a big performance impact compared to the normal rendering approach. Generally Deferred Rendering should always be enabled, it should only improve performance if anything, most modern hardware will actually see a performance hit when disabling Deferred Rendering. Deferred Rendering is also the foundation for other advanced rendering features such as Ambient Occlusion, Depth of Field and rendering shadows.

How does it look?

The difference, aside from an overall brighter image lies in the details here, these walls have normal and specular maps, with Deferred Rendering enabled they become visible, you can also see the metallic reflection a bit better as it is now correcty reflecting light, although keep in mind that this is without shadows and most of this should not receive any direct sunlight. Overall it is a slight improvement over Legacy Rendering and only the foundation of all other features.

How can i use it?

You can enable Deferred Rendering by opening 'Preferences' and selecting the 'Display' tab, here you will find a checkbox in one of the major tabs labeled 'Deferred Rendering'.

What can i change?

Without any additional features enabled Deferred remains mostly static, you'll find all of its options in the 'Deferred Rendering' section of 'Display' settings, those include Antialiasing, a bunch of light options and whether you want light to be smoothened or not.


Deferred Rendering will add a bit more texture memory usage on top of the possibly already very limited amount you've got, keep that in mind.

Thursday, December 19, 2019

Black Dragon 64x - Update 3.6.9 "Manipulating Dragon"

Two days ago i released 3.6.9.

It mainly contains LL's new code (which is needed for the mercurial to git transition) and contains some fixes for stuff and a new feature some of you have wished for: Disabling all those pesky, handwritten, informative tooltips that i made for you so you can ignore them and continue asking me what a slider does rather than reading the tooltips. Also Flickr and Twitter share have been removed (coming from LL).

Aside from that, fixes from me, a few changes regarding the labeling of certain inventory features and some temporary changes to DoF as well as an improvement that will stay. Depth of Field now has a depth check to prevent it from going off around edges that are spaced far between each other, this should prevent the "halo" around edges of objects especially with strong blur. Also i've disabled the close-blur for Depth of Field, this means (for now) you can zoom really close, pull the focus point back and blur the shit out of a picture's background without having to fear that the foreground starts blurring as well. Here's an in progress comparison shot, you can see the difference around my ears on the lower left corner.

Here's an example of extreme blur without the near-blur.

Good mh?

I've also started fixing some of the preferences translations. We might be seeing some more german UI updates in the future, wohoo.

Also i'm sorry that i didn't yet add the latest Patrons to the list, this was sort of an "emergency" update once again as this is the last update based on the mercurial repository before i switch to git and god knows when i'll get around to do the rest of the update with that, i'll still have to learn how git works, get everything set up and all that stuff... this will take some time which is why i opted to release the update as is, there's nothing gamebreaking in it so...

By Beev Fallen
By Doll Parts

Thursday, November 28, 2019

Black Dragon 64x - Update 3.6.8 "Manipulating Dragon"

So im going to push this as an "emergency" update. Consider this update absolutely mandatory if you downloaded 3.6.7.

3.6.7 had a big issue, a very few select people couldn't login anymore, something that appeared with 3.6.6 and i attempted to fix this, said fix however made it worse for some others. Here's the full story as posted on discord.

This kept me awake for the most part of this night, i suppose i can consider this a nightmare now.

3.6.8 changes the maximum character limit back down to 16 letters, this also means that everyone with a password "longer" than 16 characters should probably rethink their password to be exactly 16 characters long as any longer wont be accepted anyway. You can also just leave it as is but note that only the first 16 characters of your password are important, the rest is never used. Good job Linden Labs never telling us and superb job at not having the server handling a truncation automatically server side. Good thing Inspector Niran was on this case!

Apart from this really strange issue, there have been some changes (not all of them that i originally planned to add but most of it) regarding the UI, specifically the 'Display' tab in preferences. In an attempt to make the warnings a bit clearer the Viewer will now highlight potentially bad settings in red, in addition to showing the warnings which have now been moved down into the panels themselves. Originally i planned to add a generic warning counter to the tabs but since this is an emergency update i'll want to push as soon as possible, i didnt get around to do that yet. How this looks like can be seen below (note that the 'Quality Options' tab havent had its warnings moved down at that time)

The quickfloaters (draw distance, preset, media and sound) have had their background changed to a hopefully better one and a bunch of settings have been turned off by default that really shouldnt be on anyway. Pitch Invert for controllers are disabled by default now, automatic fly when holding jump is disabled now (this was causing controllers to insta-fly when pressing jump) and the selection range limitation has been disabled by default as well.

Also fixed should be missing clouds, long ago i changed the texture names to reflect the proper names for the type of cloud, i forgot to update the default cloud noise setting to reflect this new name, this caused all new users to default to a non existent cloud noise image which prevented clouds from appearing until you changed the cloud noise image manually, also the cloud noise image dropdown should now display the currently selected image properly and will no longer accept text entry (since the list is refreshed on reopen anyway).

Lastly i've had the time to try out Bakes-on-Mesh in my Viewer and make sure everything is working, as far as i can tell it does, i've also used the chance to change the bake tab in the texture picker to be a list (suggested by Liru Fears, thanks for that) which surfaced new issues with lists not properly creating their childs which was fixed (thanks to Liru again) as well.

The rest is minor fixes like the last 2 lines in mini-profiles not interactable, UI layout inconistencies and cleanup.

As always if you experience issues, report them to me, i will try by best to fix whatever issues you are experiencing. No report = No help.

By Beev Fallen
By Mal

Monday, November 18, 2019

Black Dragon 64x - Update 3.6.7 "Manipulating Dragon"

Here comes another update!

The main focus in this update is the Object Manipulator overhaul, more buttons, more features, new layout, better sorting, easier access, bugfixes and so on. I would consider this version the "Final" version for now.

The Object Manipulator was something i wanted to add to give the whole manipulation features a home and an easier and faster method of permorning these manipulations on a large scale. Alphas and light sources are now seperately listed into 2 additional lists in their respective tabs, this should reduce the amount of searching drastically, in addition root prims are now written in bold (rather than attached prims) and root and linkset prims are now grouped together, this should make finding and identifiying a whole object consisting of multiple parts much easier.

Each tab only displays the button that are really important for said tab topic and the main Objects tab is now an "All Objects" list that simply acts as a list for misc features like derendering items.

Note still none of the lists will display your own items or those attached to you to prevent you from accidentally changing your own stuff and actually saving these changes.

Apart from the Object Manipulator getting its full implementation, there are a couple of fixes, binding keys should now work as expected again (the action list didn't show the actions for the currently selected mode so it was impossible to bind third person actions for instance), passwords longer than 15 characters should now be enterable, the about window should now show the actual set memory values (even with automatic memory management enabled) and trying to get the UUID from a linkset prim should no longer crash the Viewer.

Also a couple new patrons joined my Patreon. Thank You!

This update also merges all the latest LL Release code, lots of crash fixes mainly.

By Beev Fallen

Saturday, November 9, 2019

Black Dragon 64x - Update 3.6.6 "Baking Dragon"

Finally an update, was about time.

Last month was a very hectic and special month.

My computer started falling apart as you'd expect after almost 10 years... first my power supply died, which took my GPU with it (again RIP GTX 670) then my backup harddrive failed completely and took basically everything with it and before my last HDD dies as well i thought i should probably do something. Sadly i don't have the money to do anything (infact, i'm on the verge of not being able to pay even my internet anymore >.< with Coffee Lychrono dropping his patron and a few others following in on the absolute low end right now). Luckily for me a couple friends i've been playing the past 2 months extensively (which is why the updates were so slow and delayed) agreed to help me out on this, together they bought me much needed new parts.

They visited me end of last month to build the PC together with me. A Ryzen 5 3600, 64gb of DDR4 3000 RAM and (finally) a new mainboard with 5.1 sorround sound again i can absolutely rock everything that's coming at me for the next 5 years minimum. I've also got two SSD's (small 250gb ones) and reinstalled Windows (and down upgrapded it to Windows 10, sadly). With 10 basically throwing stepping stones into my way, sabotaging my every move, pissing me off more than i could have ever imagined and 10 behaving like a pile of shit, taking away my rights even for my own folders, wanting me to confirm confirmations of confirming confirmation confirmations and still not allowing me to do what was considered a breeze in 7... and 10 absolutely INSISTING on reactivating every single background app, stupid backdoor, disabled telemetry collection and basically undoing what i've been doing the past couple weeks trying to get 10 to... behave... it hasn't exactly been easy to stay focused on ... well doing anything. So far i've reinstalled and configured most of the things again to allow creating updates again, so today marks the first update since the upgrade. I sure hope everything is in the right place and doesn't blow up immediately.

But holy cow i can tell you i am NOT disappointed at all. This Ryzen fares exactly like i expected, twice as much FPS across the board (some places even far more). Hah i can basically turn off jellydolls and still run around with 30 FPS in Ark Club (though really that's the absolute maximum and i haven't managed to get more there... the place seems completely outdated and simply runs like crap sadly even without people around)

Anyway, enough of the story of my life, back to the Viewer. This update brings the Viewer back on track, all the latest changes from LL are included plus a few more bugfixes of reported issues and some tweaks as well as a new playtoy.

This new playtoy listens to the name of "Object Manipulator" (such imagination, much wow) and is basically an extended version (or is going to be) of the "Prim Manipulation" menu that was previously found in the My Useful Features - Shortcuts sub menu. Right now it allows you to see a list of all (and i mean ALL) objects the Viewer knows about currently, minus your own attachments (and objects in world, hopefully). You can double click items to highlight/select them and you can "manipulate" them just like you could previously do with the menu, you can force change their alpha mode between blending, emissive and masking and you can see whether an object is a light and casts a projector shadow, you can also manipulate these as well and turn their shadow casting off, this should make finding and eliminating shadow projectors much faster and easier and allow you to select the projectors you really want to cast shadows easier than ever, all in the name of machinima. Great.

What it means to change the alpha mode can be seen in this example:

From blending to masking:

This allows temporarily fixing the fuckups of creators without needing permissions. What this essentially means is i can turn... this mess:

into something absolutely beautiful with some masking and some setting tweaks:

Looks like someone applied reshade but i promise you this is a raw image. I don't do the editing.

Further the viewer version is now shown in both login and "About Black Dragon", both the actual code version and the version i use for my updates, no need to start a second instance of BD anymore. I hope this reduces confusion a bit. Checking for update now also brings you here and the "Release Notes" link should now properly link to the changelog page.

Apart from that i fixed the price spinner for objects on sale, you should be able to set a price again and the annoying "Hippos!" badge has had its shortcut removed because apparently people have been accidentally triggering it since its so close to the teleport home shortcut (who the fuck does this?).

I've still got a huge bunch of things planned but only time will tell when and how they get done... if they get done at all.

By Loverdag
By Clover Jinx
By 털덩이
By Kissmebaby Allen
By Spiritus Natus

Wednesday, October 9, 2019

Black Dragon 64x - Update 3.6.5 "Baking Dragon"

Aaand another round of fixes.

More reported stuff has been fixed although i wish more stuff would have been reported and possibly faster. I'm trying to strike a balance between waiting to get some bug fixes accumulated and fast response releases, i don't want to go through the chore of making a whole new update just for one or two tiny little things, not only does it look empty but its also just wasting time.

Busy response is now disabled until you log in (prior to login it doesn't make any sense since it is an account setting), the head look issue with certain quad avatars has been fixed (again), worn items should now finally be copyable (wasn't properly merged), the toolbar buttons should now longer lay on top of the chiclet notifications and while i was on it i finally fixed a long standing issue with IMs and notifications being partly overlapped by the chiclet windows/menus and several experimental graphics changes have been undone as they haven't shown any noticeable effect sadly.

New in this update however is a new naming scheme for log files, they will no longer be saved as BlackDragon.log and then renamed to BlackDragon.old on the next run (while deleting the old .old file) but instead logs will now be named BlackDragon_[date].log. I realize this can quickly start to consume some harddrive if i fuck up and have some stupid error/warning/debug spam appear a million times in the log file but this should really mostly just affect me as i tend to remove these before i push updates but just in case (and for the cases i ask for it) i added a button to open the log folder directly from within the Viewer, this should make it easier for you to delete old logs if you want and give me the log files i so desperately crave for when you are having certain issues... hooray!

As always keep 'em coming!

By Clover Jinx

Thursday, October 3, 2019

Black Dragon 64x - Update 3.6.4 "Baking Dragon"


This update fixes all the reported issues with 3.6.3 (hopefully).

Biggest issue with 3.6.3 was most likely the spooky headspins most people were experiencing thanks to the newly introduced experimental headtracking. I expected issues, i expected some people to see a broken head, what i didn't expect was literally everyone breaking a feature i have been working on the entire month and testing up and down in less than 5 seconds. What has been working exceptionally well for me didn't work at all for everyone else it seems. That should give you an idea how worthless testing really is... i can test all i want, users will always break it in the most spectacular ways possible... in record time.

Sadly this means (as i was kinda expecting) that the headtracking has to go again... a whole month wasted on basically nothing, welp. But hey, we had a good laugh now didn't we? It was halloween and i added a fitting spooky headspin. SPOOKY.

Then there's the new toolbar layouts, they should have reset automatically to default due to loading errors and validation fails but apparently a "misformed" toolbars settings file is not properly seen as such and infact the entire thing didn't even seem to work at all skipping the basically the entire toolbar setup so i had to fix that as well and while i did i also randomly found out why the topbar was throwing warnings all these years... an inverted if check... all these goddamn years and it was a simple missing exclamation mark... this drove me mad for years.... guess it's fixed after all. PEACE after all.

Now then, the broken facebook button which could still be found in the toolbox is now gone too since facebook connect has been removed entirely by LL...

I suppose that's it for this update. Just a quick fix for the booboos. Nothing special to see here!

Aside from fixing i've also put some more work into the Discord server and added a FAQ section and recently also a welcome area that explains a few things, the FAQ was added to help people with frequently asked questions such as the infameous avatar turning and jellydolling.

As always, report any issues you see but make sure you're on the latest version before you do!

By Loverdag

Monday, September 30, 2019

Black Dragon 64x - Update 3.6.3 "Baking Dragon"

The sloppy update.

I suppose this is how it feels having to wait ages for an update.

This update comes with a bunch of fixes and some cool new stuff. First off several issues that were reported have been fixed (there are still more on my list but need some deeper investigation), picks will no longer instantly delete their description when you create them and click into their description box after hitting save, headtracking options have been reduced to sane defaults especially eyes were notorious for rolling back into your head... creepy... graphic presets can now be deleted if they contain spaces but please note that this is not retroactive and will not allow you to delete already saved presets that contain spaces (due to naming differences)and a crash was fixed that could randomly occour when a bad number of faces has been received.

This version also comes with the latest Linden changes including a few highlights such as increasing the maximum sound file length to 30 seconds, animesh selection improvements, worn items can now be copied and a lot of fixes all over the place.

Most interesting however are the new additions in this release...

From now on by default (currently not an option) your headtracking animation will blend ontop of all your animations, this means when moving your mouse on screen, focusing on things or generally doing something that would make your head move, it will now do regardless of you using an AO. It will not however simply override your head and neck but instead blend in addition to the underlying animation, this means that if your AO makes you look down at your feet you can "alter" the look direction a bit by moving your mouse around, your head will still mostly look down but you can notch it around a bit. This works with all animations, all AO's and everything ever even while running you can now look around, crazy isn't it? Over are the times of your lifeless head staring straight forward at all times. In the future this might get an option to toggle it off for now however you can customize it with the already existing head/eyetracking options, they control how much your head is allowed to move additionally. Note that this is a completely seperate thing from all your animations, the headtracking animation has absolutely no access to the underlying animations and thus cannot check how far your animations rotated the head to prevent it from breaking your neck... e.g if your AO makes you look 90° to the right and you make it look 90° more degree to the right you'll end up looking backwards.... ouch... this should however rarely happen. Here's a video of the whole thing in action.

Don't worry, i know some of you will want my head on a plate for doing this. Do you want a silverplate or is a normal one sufficient?

But there's more. I've finally gotten around to do my super simple but quite efficient own way of aligning toolbars, no hacks no dirty tricks no sophisticated bullshit just very simple magic and it works really good too. You can now finally align the toolbar buttons to the sides, top and bottom can be moved left and right and left and right toolbars can be moved up and down. I guess you'll make some quite interesting setups with this. Something like this:

Note that these require you to redo your buttons completely, you will end up with an empty toolbar. You can do so by opening the toolbar editing window (Ctrl + Alt + B or via menu from Dragon - Edit - Toolbars)

Other than that there have been some changes to the left/right shoulder cam so it behaves and swings around like all other camera presets, fixes for crashes in the fast timer display, as well as fixes for cutoff labels, window transparency default buttons not working and more attempts to reduce costly calls to settings.

I've some cool things planned for the future, a proper "changelog" window that shows all changes between the version you last run and the new version you installed, as well as a window that gives you access to all machinima related options (outside of the Dragon menu), a window that shows all light and projector sources to quickly toggle them on/off, the option to rotate water (yes you heard that right), a tutorial and more help with options and more.

As always if you find something that isn't working, report it to me ASAP and i'll look into it.

By Ella
By Aeekay
By Spiritus

Thursday, September 5, 2019

Black Dragon 64x - Update 3.6.2 "Baking Dragon"

More Viewer care and feeding...

that dragon must be really fat now...

Only contains a bugfix for presets not being saveable. It turns out the Viewer can't create a folder inside a not yet existing folder, it has to create said top folder first, then create the sub folder. What do we live in, 1802? We're doing raytracing bullshit and can't even create a goddamn folder structure automatically.

By Kissmebaby Allen

Wednesday, September 4, 2019

Black Dragon 64x - Update 3.6.1 "Baking Dragon"

Viewer care and feeding update.

Bugfixes as always.

I was sick of the old graphics preset system LL made so i made a new one from scratch, much simpler and with more control over what settings should be saved and when, i plan on using this in the future for a "backup" feature. Also the checkboxes finally tick now when a preset is selected! (that was actually the reason i did this new preset system)

The new preset system also means your old presets are now useless, sorry for the inconvenience, you could message me on discord and i can modify them for you to work when i get some time.

Aside from that more tiny optimizations and a fix for high res snapshots breaking (sorry about that).

By Loverdag
By Eros

Friday, August 30, 2019

Black Dragon 64x - Update 3.6.0 "Baking Dragon"

The unexpected expected update.

I didn't expect to get back to working on the Viewer this quick... but if you know me you know that i can't sit still for too long. So before long i downloaded my repository and said fuck it i'm gonna make this update on my windows drive real quick... 

Oh well here we are. Bakes-on-Mesh update. Wohooo!

Aside from Bakes-on-Mesh not much stuff has been changed, i only just worked on this update a couple hours the past few days. Mostly working out the "everything-is-not-loading" issue.


There are some changes that you might find good, such as more optimizations to the selection outlines, they should be a tiny teeny mini bit faster now (probably).

Outside of that there were a few setting changes, a few defaults have been changed, projectors have been disabled (because they eat FPS just for being on... i'm investigating), FXAA has been enabled (why the hell is this even default off?), SSAO and shadow distance settings have been tweaked and SSAO has gotten twice as much smooth iterations now, SSAO should be a lot smoother now but will also behave a bit differently.

I sure hope i got all the bad crashing issues... but we'll see. As always report issues.

By Spiritus
By Kissmebaby Allen
By Ella

Sunday, August 18, 2019


Just making a quick note here that there won't be any update the coming days. I just recently lost one of my two harddrives (and i fear the other one might die soon as well) which contained pretty much everything (my games, videos, screenshots and the viewer source code and compiles). Before i can start setting up everything again i'll have to get a new harddrive the coming days. I hope to get some more bugreports by then, currently there aren't many of them (that's good isnt it?)

Friday, August 2, 2019

Black Dragon 64x - Update 3.5.3 "Searching Dragon"

Smol bugfix update it is!

This update mainly just gets rid of a few things people reported so nothing fancy... but necessary you know.

Picks in profiles should now be openable via the menu as well as from within the webprofile (for whatever reason you would want to do that), same goes for classifieds.

The profile will now ask you whether you want to save changes done to a profile whenever you've touched anything, this obseletes the OK/Cancel buttons and should still allow the user to save or cancel out of changes.

Windlights should no longer reset when you open the sky/water editor, change a preset and then open the "About Land" window... this one also changed the way presets are applied from within the editors, they now work exactly like the Environment Editor window, meaning they can support the windlight transitions as well (its force disabled right now tho to keep the old behavior)

Another issue with tiny quad avatar heads being turned around has been fixed, this was hopefully the last one.

A reported issue with Depth of Field not working past West and South SIM borders has been fixed, note however that it still doesn't work in mouselook... mouselook needs this fix in order to prevent it from randomly blurring for no reason, the downside is that it will not work past West and South SIM borders.

And the rest is just internal cleanup, optimizations and fixes, nothing of interest for the user.

By Ella

By Foxtrot_Actual
By 털덩이
By (Þór) Thor For Alföðr

Wednesday, July 17, 2019

Black Dragon 64x - Update 3.5.2 "Searching Dragon"

A relatively small but action packed update awaits!

I got: fixes, fixes, fixes and MORE FIXES.

First the boring stuff: the Poser has gotten some under the hood changes none of them active at the moment but i'll build upon them in the future, i got some plans to extend the Poser with more fancy stuff.

Flycam has seen a slight change in how the flycam smoothing works and all controls needed some... tweaking to accomodate for that, these tweaks have now been made, the new Xbox360 controller defaults should once again feel decently enough as starting point to be used if you don't feel like sitting there and tweaking them for hours, also the max smoothing value for avatar smoothing has been increased to allow making the avatar rotation sharper and more responsive, zoom and roll should hopefully work properly again.

Now to the more interesting stuff: I experimented a bit with multithreading, multithreading is a big thing, everyone keeps saying "just multithread that shit and it will improve performance". Well yes... and no. Spawning extra threads has a huge impact, spawning an extra thread has to outweight the impact you improve, if you incurr more impact with spawning threads than you are solving you're essentially just slowing down stuff and making it crazily unstable too. How unstable... i got to see live in action and it was a crashfest and all i did was just a simple list fill, it was crashing left and right, at random, seemingly for no reason, all over the place. Multithreading requires careful managment of resources, you cannot read and write onto the same thing at the same time, infact you shouldn't probably be writing to something being read somewhere anyway, best case you should be writing to something entirely different and thats where the problems start. While SL is technically very modular and theoretically it should be easily splittable into parts that run simultaneously, having to make sure that the other threads are not writing into the same memory at the same time its being read or written into somewhere else or making it write into a new thing and merging those later is a huge undertaking, it requires writing lots of extra stuff and rewriting some parts completely to make sure they can work while the other thread is doing its job, rendering especially is very... fragile there. I think the image decoding is probably one of the biggest performance impacts all around and probably the easiest and safest to multithread since the Viewer can already work with all states of a texture, whether it is loaded, still loading, still decoding or missing, it will just require lots of careful shoving textures around, this could drastically improve performance while textures are being worked on and they are worked on most of the time. Back to what i did with multithreading, i multithreaded the Avatar Render Settings, the list will now be collected and created in a seperate thread and then written into the actual list in the main thread when the heavy work is already done, this completely eliminates the huge freeze when opening the tab for the first time or when it updates if your list is decently sized (like mine), i'd throw around a few numbers but going from a few seconds freeze to "what? its over already?" is pretty much an infinite improvement. In any case, this was a very interesting experiment and some valuable experience that i hope to be able to use on other stuff later down the line, we'll see... and if you consider the Viewer not multithreaded (even tho it averages around 20 threads at all times) it now is officially multithreaded, at least as long as your preferences window is open haha.



That's a big improvement as you can see.

Another quite small but interesting change is the falloff for Volumetric Lighting, rather than it being a straight falloff it is now using the distance squared, this should make the falloff gain intensity much faster towards the end, the side effect is that falloff now requires much higher values, the sliders have been increased to accomodate for that. It's overall a very miniscule difference and hardly noticable but i think it looks a bit more like what i initially wanted, i might implement an option to scale this later on.

Onto the most interesting part, the reported issues: About Land should no longer show a scrambled price label, profiles should once again allow creating and deleting picks (tested it and it works), clicking the description field in other people's profiles should no longer kill the formatting, clicking the X is online/offline message in IM should no longer throw a "invalid slurl type" error and finally.... FUCKING (speaking of fucking) FINALLY, the cock-magic bug is fixed. FIXED! I know you all loved being a magician but sadly as South Park has shown cock-magic is illegal and you should stop doing it... but what was the issue... ohboy... here we go...

This issue started surfacing somewhere in the last few releases, i spent a few days trying all versions up and down, trying to find out which version introduced this bug, soon enough i found out it was 3.4.2+, much sooner than expected. I went through all changes i made trying to limit the troublemakers down to just one change, bad for me this change was a masive one, it was a massive bunch of extra stuff for animesh so i had to drop this for a while. The issue started appearing in other Viewers too, reports from Firestorm and Official Viewer (i was able to reproduce it in Official as well) started appearing, all of them past LL code 6.0.2 which was the version this big change was included in. Black Dragon however was able to reproduce this issue 100% of the time, on the same obejct at all times. So on the last meeting i had a small but interesting talk with Beq Janus (from Firestorm) about this issue and what it could be, this lead me to investigate something and soon enough i ended up at the introduction of the new bounding box code that came with 6.0.2. I remembered that i changed something there, luckily i left an option to control the fidelity of said bounding box calculations so it was super easy and fast to see whether this was actually the cause and to my not-surprise it was. My overly aggressive attempt to optimize the bounding box calculations back to pre-6.0.2 performance surfaced this issue in a 100% reproducible manner, reading its code revealed an interesting tidbit which i think might be important on how to fix this issue for all Viewers. The Viewer creates a small box around the center of the object, then extends it with several factors, the base object bounding box, bones etc. In my case the bounding box was reduced to its first stage, the small box at the center of the object and that is exactly why the dick kept vanishing, due to the rigging putting it far off-center, the center (and thus the bounding box) goes out of screen when you zoom closer, the actual bounding box was somewhere above the actual visible dick, which explains why it reappeared when you looked up and why you could zoom closer before it disappeared again and you needed to look further up to make it reappear. This is also the reason why it didn't happen on avatars, they often have a decent center, unlike these genitals. In the code it states that it could possibly happen that the rigged bones are not initialized properly or at all, this could cause exactly what i just described just randomly, it would explain why it happens so rarely on other Viewers and why its fixable with a relog. Needless to say i re-enabled the full calculation for animesh but still left the second and third (the heavy ones) out for avatars, avatars seem to do just fine without these, animesh on the other hand don't, they need all three stages. So this issue should be fixed for now and should only appear randomly, very rarely just like in other Viewers. I explained the case in the Jira and hope that LL will find a fix for this rare case, maybe just revert to the old bounding box calculation (which worked just fine) in such a case, its better than having your dick vanish right?

by Loverdag

by Books
by Kissmebaby Allen
by Spiritus
by Jeremy