Well this is exciting -- the first video preview of Crystal Frost, the upcoming third party viewer for Second Life that runs in Unity. Created by SLer and longtime developer Berry Bunny (Kallisti#2038 on Discord), the frame rate is a bit slow, but the graphic enhancements are pretty clear. And yes, the wandering cube is the avatar.
"Rendering avatars requires decoding rigging data from meshes," Kallisti tells me, "and I currently have not looked into how to do that just yet."
She tells me a playable version will be available "in a couple of weeks tops", first for people who are members of her Patreon.
"The first public test build will be in about a month."
As for what you're looking at in the preview, Bunny's already working on fixing the issues:
"The memory leak issue that held up development for 6 months has been 100% absolutely and unequivocally fixed, and I'm now using less RAM than Firestorm does, while rendering everything at full 100% highest detail. However the framerate is much lower, but I know why and i'm working on a fix."
Far as frame rate, it's about 30 FPS now. "But I'm going to do some dynamic occlusion culling and implement level of detail like Linden Lab clients have So about a third of my frame rate with Firestorm. But Firestorm, like all Linden Lab-based viewers have occlusion culling. I don't, at all. Once I do the frame rate should be ridiculously higher."
Here's another side-by-side demo with Firestorm, "demonstrating updating object positions, rotations, and scales, including for child prims."
And yes, Crystal Frost will likely work on mobile "in the future, but at current there's a lot of optimization that needs to be done to support mobile. in the future."
Go here to join the Crystal Frost Discord for updates.
That first still image is confusing. Clouds and shadows seem to be turned off in Firestorm there so how is that an equal comparison. Am I wrong?
Posted by: Lizard | Thursday, February 16, 2023 at 06:10 AM
This is... interesting, but how do we implement client-side LSL execution, how do we handle scripts, period? Is this just using Unity as a rendering engine while leaving the remainder of the LL TPV code intact? What's more, it begs the question as to what performance difference there is when we're.. y'know, running Unity, on top of the SL viewer. What performance gains are there to be had compared to something like Alchemy, which is infamous for cutting the fat of most viewers and improving performance across the board.
And.. finally, will this viewer's SL TPV and Unity source code be publicly available? I understand ego and other possibly legal factor may obstruct this, but, to not make this technology open source like other TPVs poses risks on various vectors - What if Linden Lab finds the viewer's closed source nature to be too much of a risk, and bans it from the grid? What if the source code includes, at one point or another, a dangerous exploit? What if the creator dies or abandons the project? As nice as Crystal Frost is, until answers to these questions are handled, I doubt the future of this project beyond its' initial development stages.
Don't get me wrong, as someone who's said converting SL's viewer over to unity would be a nightmare, I am more than willing to eat crow when proven right, especially if it results in massive improvements, but as a TPV it introduces just as much problems as it solves, which for the most part can be solved easily. It just requires knowing what the developer's plans are for it once it's out of initial development.
Posted by: Nodoka Hanamura | Thursday, February 16, 2023 at 03:41 PM
Addendum - I joined their discord and I'm pleased with the results of a search on the matters relating to Open Source:
"Well, this is not currently open source and won't be open source until I feel it's ready for general public consumption... Until it is ready for public consumption, I will be giving weekly code snapshots to patrons at a certain level..."
"I just don't want to end up with a bazillion people contributing with no control over code style or quality, nor do I want a bunch of poor quality forks that people blame me for."
Suffice to say I'm more than satisfied with this approach, as it ensures that both code transparency and TPV compliance are met, and that we don't have forks of it that end up being buggy messes.
That being said, reading over the article again, I am genuinely excited for what this means for SL. Hell, if the code were to be stable enough and LL were to dish out the cash to Unity for a enterprise license, I bet you that if this project progresses well enough in 2-3 years, LL might just adopt it in lieu of the main viewer. Emphasis on might.
Posted by: Nodoka Hanamura | Thursday, February 16, 2023 at 03:48 PM