Developer Update - 2 February 2023

They don’t develop Dynamic Bones, so I doubt they would.

Now, what we got the Extra-Cozy Earmuffs effect but for the Avatar Hider so the avatar hider works more like a cone.

1 Like

Yessssssssssss, please also add this functionlity to the Avatar hider!

I believe the plan is to phase out dynamic bones entirely. I’m assuming which is something along the lines of removing the component at run time and auto-conversion to physbones.

EAC won’t download pls help

Can’t offer support in this thread! Hit up our support team.

Yes, this is a good summation.

Deprecating something means you’re getting ready to get rid of it. We don’t want to do things in half-measures or in “willowy” ways. We’re getting rid of it.

SDK2 served its purpose and let people create some cool stuff, but keeping it around and letting users continue to upload it offers very little return for potentially quite a lot of investment. Supporting something doesn’t just mean working on it directly, it also means including it in QA testing, integration testing, ensuring there aren’t security regressions or knock-ons from seemingly unrelated changes, etc. You can’t just have a thing in your application and leave it to rot.

Our testing suite already includes SDK2 worlds and we want to remove it, considering how little of the current, populated, and used content in VRChat is SDK2 (very, very little).

Also correct!

Lol, as an amateur programmer, JS is a complete nightmare compared to C# (and its subset we have in U#) regarding synchronicity and dependency hell. It’s gotten better but there’s a good reason why I’ve swapped entirely to Python from JS. :melting_face: I’m surprised you feel that way, but understand what you mean.

It’s a known issue, it has to do specifically with the TrackingState state behavior. It specifically affects Index users.

We know about the bug and tried to fix it today, but it goes deeper than just a one-line fix. Since we try not to push Friday or weekend patches, it’ll have to wait until Monday.

I covered it a bit in this thread on Twitter, if you’re curious.

1 Like

But it’s already stated that existing SDK2 content will be maintained for as long as possible. Why not block uploads when that happens, instead of sooner?

Regardless, while i get the infrastructure is different and it would require an extra team to maintain, SDK2 is a perfect clean environment for people to make worlds without having to learn a convoluted graphing system, or how to code. Everyone i discuss this topic with is equally puzzled at the decision to have world creation locked behind a high technical barrier. People like me don’t want prefabs, and sketchy automation macros, we just want a simple system that is performant and as difficulty-free as possible to make reality what we envision. Udon lacks both of these - ease of use / ease of learning, and performance. It honestly seems like there is a step missing here in the creator chain. Also, in my experience, i rarely get decent frames in any worlds anymore unless it’s an SDK2 world (or is sdk3 but has basically no buttons, video players or anything), and it’s something i’ve felt the weight of since Udon started picking up pace due to it’s utility, getting 50fps if i’m lucky, instead of 80-100+ like i do in most SDK2 worlds.

It would be amazing if there was a special method or workaround for individuals that do not want to burden the system whatsoever, but don’t want to be unnecessarily blocked out.



This topic has made me think a lot over time. It’s clear that physbones is more optimized (due to it’s more simplistic nature) and has great intractability, but it is always a shame what was lost in transition, such as inverse physics on bone chains which make collision more natural and realistic etc. Considering the aggressive and inadequate implementation of auto conversion, having it default on and being very inaccurate (as well as being local only so setting so setting it differently from the masses breaks social situations because people aren’t seeing the same things), it seems fairly clear that VRC doesn’t care about dynamic bones at all going forward.

The wasm based runtime for Udon which is in progress should be significantly faster than current udon

I’m sure it’s been asked before but are there any news about finger tracking for PC? Will it only work for quest or also for pico somehow?

1 Like

Yay
(⁠^⁠∇⁠^⁠)⁠ノ⁠♪

I just started reading the docs for physbones and you’re right

The goal of the automatic conversion is to have most setups working decently well and not breaking, not to perfectly replicate behavior. It is expected that all users will gradually transition to using PhysBones provided they want their avatars to be rendered accurately and future proof.

Maybe I’m blind but I was hoping to read something about physbones collision check count.

I started programming with JS. I definitely know why you feel that way, and I’m sure I’d feel the same if I went from C#/Py to JS.

C# itself isn’t too intimidating. I actually love the object oriented nature that is even more structured than JS and forced with typing (so I feel at home coming from TypeScript). The problem comes with Unity and Udon.

Not only would I be learning C#/U#, I would be learning game programming in Unity, specifically as it relates to VRChat and Udon and everything else. It feels like learning multiple verticals at once, especially learning what APIs are available and how they relate to all the game objects, shaders, and other functions in Unity.

I spent over a week trying to solve something that would’ve otherwise been solved in an hour or two if the right APIs were available in Udon. But I ended up not implementing the feature because the best solution I could come up with still had bugs and other issues. The only other solution would require extensive maintenance in the Editor, which is prone to human error.

On the flipside, I was trying to have the backside of a canvas be transparent. I could barely get it working with shaders, but I realized I could use OnPlayerTriggerEnter and OnPlayerTriggerExit especially to actually disable its rendering, so that was nice and easy.

Edit: Oh, and about dependency hell: I do kinda get that, but also, that’s what static versions are for.

My favorite library set currently is NextJS + TailwindCSS. Two libraries and I can pretty much make anything in it. I don’t upgrade versions unless I have a reason to, and if you wanted to, you can download the dependencies you already have and host them in a private github/server.

Most of the issues of dependencies come from smaller packages, people using too many dependencies when they can make it themselves, or people auto-upgrading/removing packages from NPM.

For example, I use classnames, which is literally just a function that returns class names based on a condition. I only use it out of convenience, but if I were making a production application, I would just write it myself quickly, or pull it and store it on a private repo for production.

1 Like

Hey, can we also get an option to refresh instances we are looking at in out menus?
(Obviously with a refresh timeout for x amount of time as to not make the servers melt if people spam the button)

1 Like

Seems like a good idea! Just make sure you make a Canny about it so the Devs can notice it better

  • Avatar stats in QM has a better layout, and the VRAM stat is shown closer to the top

Have you thought about adding this as a slider to hide avatars similar to the faraway avatar hiders? I usually don’t have VRAM issues because of my setup, but in those worlds where I do I’d love to set a sensible maximum that an avatar can take up, say hide everyone over 500 MB.

2 Likes

People are finding the new volume slider levels too loud because the new formula is log₁₀(x)·20. That is the curve for raw sound pressure, and volume sliders should use log₂(x)·10 to follow perceived loudness. Canny Can you take another look at this?

2 Likes

Looking into it! :yum:

3 Likes

@drsakuu @Fax To add about the canny, especially since an update was posted that you will change to Log2:

It isn’t clear if VRC is considering a toggle for the old Linear scale. It would be useful to have a toggle so we can choose between Linear and Logarithmic.

The old Linear scale worked just fine for me and I think most people. The log scale makes it so, for example, the previous 75% is the new 25%.

I think having the option to switch is really important, considering I never previously maxed out any of my audio sliders before with Linear, and the linear scale is a bit more forgiving for people that have sensitive hearing like me.

Fun fact the new earmuff shape is how my hearing aids amplify people infront of me but not behind me also I more prefer the giant wall of text than the videos lol

1 Like

Trust me man it would look a bit off with only a 360 image where you only get rotation but no depth ajustment