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.

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.


BUT

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

Delays

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.

Single-threaded


Multi-threaded


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





Saturday, June 29, 2019

Black Dragon 64x - Update 3.5.1 "Searching Dragon"

Another quickfix update.


Just a few more things reported.

Specifically Depth of Field lock wasn't working anymore and some avatars from KZK had their head in a wrong resting position.

AVX version will follow soon now that it has cooled off a bit.


Tuesday, June 25, 2019

Black Dragon 64x - Update 3.5.0 "Searching Dragon"

Quickfire update time.


Just smacking a few stupid bugs that were reported.

Flycam wasnt starting properly, rolling didnt work at all, the mentioned profile description issue is fixed (for both second and first life) you can now click the description and it will turn into the un-parsed version for you to edit and will turn right back into the final parsed version when you deselect it to preview how it will look for others, your own presets are now loaded again, autopilot should work again and mmo style click-to-walk should be fixed too. Hooraaaay.

Ohyea and i think the AVX version will not come the next few days... its going to be super hot (up to 40°C here and i dont want my PC compiling and turning my place into the inside of a vulcano), unless it gets very cool around night i won't be doing an AVX version, so don't wait for it.





Sunday, June 23, 2019

Black Dragon 64x - Update 3.4.9 "Searching Dragon"

Searching...

Searching for the update...

where is it...

Error 404
Update Not Found
...



So with over half a month delay (i'm so sorry about that), i can finally present something thats worthwhile showing and this update comes with a huge bunch of changes.



Let's start with the cat in the sack. Profiles! LL announced that legacy profiles would come back and their project viewer has been released, i grabbed it immediately and got to working on it... or more like reworking pretty much most of it. It all started with the simple desire to change the layout... because that's what i love doing right? Changing layouts, making everything look fancy... i open the profile file and... its empty... mostly... just file references to other files... at this point it already dawned upon me whats going on here. The bane of my XUI designer existance... file references to other files, panel injectors, everything split everywhere... total chaos.


Here's the original layout... it looks meh, wastes space and looks... "Firestormy"... well its coming from Firestorm, they commited their profiles to LL so we were going to get a 1:1 port of their profiles. If you know me you know that i can't stand this. What started as simply just redoing the layout ended up in taking the ENTIRE profile code apart, reworking large parts of it and re-implementing everything carefully piece by piece, 9 days... wake up, work on profiles, squeeze real life and some games inbetwen, go to bed, every goddamn day. It was a massive mess, bloated with trash, unnecessary code (and it still is, there's still much to optimize) and generally stupid stuff all over the place. Look i may not be a coding professional, i may not be a coder at all but even my baby code is still more organized, simpler, faster and not as much of a headache than this mess. Maybe my code looks like its written by someone whose first day of coding just began and doesn't want to fuck it up so you write everything super simple and straighforward but at least its not a complete dumpster fire, its simple and gets its job done (mostly because i dont know any super professional hacky stuff so i have to resort to stupidly simple things that look noobish)... but damn BURN IN HELL PROFILE... nightmares incoming. Anyway... said and done, its all smashed together, unified and should work without any dirty hacks, most important of all its smaller now, both code and XUI files.


Here's the new layout, it does the ziczacdigiridooimageparsingslurlthingy and everything. Great. If you find any issues please report them, i'll go for a second pass to finetune everything a bit and fix any issues that come up, provided i can reproduce them and find out why they are happening. Technically everything should work tho, i got my profile wiped when i fucked everything up so it was a nice first test to see if stuff is working, it should. Please be aware that currently your image parses get deleted when you click OK, so if you have any icons parsed (like i did previously or like Blizzard has on the picture) make sure you are aware of this issue, it will be fixed along with everything else that comes up.


Next up... Firestorm's preferences/menu search. Same story as above, it's a mess, i reworked it for 3 days straight and fixed a few... ugly things on the way too. Note that the functionality comes from Firestorm (who commited this also to LL, both the profiles and search are now official), i merely made it less stupid and eye-cancer inducing.


Yay... you can now... search things... i guess for all those who need it.

A lot of under the hood work has been done too, cleaning up, more microoptimizations here and there, some experiments amd a few changes here and there, for instance the "Search Bar" is back in the navigation bar... no idea why it vanished in the first place but its back! Hurray!

One other fix worth mentioning.. it was reported that rigged mesh doesn't cast shadows when certain conditions are met, namely when the object had a single face that had a RGBA texture (a texture with alpha channel) flagging the entire object as alpha blending while the rest was actually flagging the object as masking, this caused the object to be falsely flagged as masking and blending at the same time, driving it into an edge case where it would always skip casting shadows. Needless to say no more!

Another experimental feature that im working on is the ability to load presets from other Viewers... it is in for now but cannot be disabled, if you got Firestorm installed in its default directory (C:/Program Files/) you'll now be able to load all its presets from the sky/water/windlight editor... be aware that opening the window now caused the Viewer to freeze for up to a few seconds due to the massive amount of presets being loaded, its only on open tho, i'll add options to toggle it off later and maybe find a better way to organize them, for now you'll just find all of them mixed in with yours, yay, chaos!

Aside from those big changes theres a huge amount of small changes coming from LL, all the latest changes and fixes have been merged, lots of crashfixes, bugfixes, refactors and so on, most importantly for those of you using the latest Windows 10 update however (1903) should now no longer see their colors getting corrupted on exiting the Viewer. Great. TOOK YOU LONG ENOUGH NIRAN I THOUGHT MY GPU WAS DYING.

By Loverdag
By Loverdag

By Spiritus

By Spiritus
By Ella

Here's a little bonus, one of my fruitless attempts at always-on headtracking.