#development-advanced
1 messages · Page 47 of 1
So, with the new VRchat update and Unity version, which post processing do I need from the unity asset store?
Since Post Processing Stack dosn't work anymore
Package Manager
It's not on asset store anymore
It's under Windows -> Package Manager from the top
From there find post processing
I'll check, one sec^^
If anybody had the google poly toolkit in 2017, it will need to be removed if you want to convert your project. I know that is random, but I have it installed for doing stuff in the Wave
I’ve encountered a bug in my Ridge Racer racing world in 2018 that have been unable to fix. The cars keep hitting invisible objects. I thought maybe it was an issue with trigger colliders but there doesn’t seem to be anything like that they would be actually touching when the problem occurs.
It happens in the same places every time though and goes away if I remove the colliders on the car that are only set to collide with themselves, the track and other cars.
@zealous elk We joined it as a group earlier and couldn't see that issue
If you know where specifically, did you enable the physics debugger in unity to check those spots ?
No, for some reason I was having trouble enabling the debugger in 2018
Let me try now that it’s live
i can try on my own in editor if you can't manage to do it
It was just after you go down the first hill, near the start line then in the middle of the first tunnel
You have to be at a high speed
It happened consistently when I tried last night
It was in several other places but those are the ones I remember
There are collider triggers around the map to detect if you’re driving backwards but even turning those off, it still happened so it’s not those
oh, i think i may have felt that bump on the ground then
Pressing right shift + ` and a number doesn't bring up the debug console anymore for some reason
@zealous elk --enable-sdk-log-levels which enables a TON of spammy logging related to SDK2 worlds
ah, ok
i'll go around the spot again to see if i get stuff in the console
I found that if I move the car colliders up above the car, it didn't happen or happened much less
So maybe they are somehow clipping the ground?
Oh, also
When you hit a wall or AI car it will play a sound
That doesn't happen when you hit these bumps
But the colliders for sound are different than the ones for environment collision, they are just placed slightly infront of them
That's the AI cars
They have a force applied to them when they hit a wall
To bounce them backwards
let me try driving with them turned off
the AI cars I mean
That's basically so they don't get stuck nose-first against a wall
mmh, i have no clue in that case, there's a few places where i bump and can't find anything there
They keep getting pinged back
it's consistent though
Yes same lol
It's been driving me nuts 😦
On the cars
The 3 cylinder colliders are the culprits
driving you nuts 
Also unrelated but when I respawn, the respawn location no longer changes to the start of the track
I had an animation play to move it
but I guess that no longer works
they're rigid bodies too mmh
I still get hit with the AI cars off
Also
Driving backwards around the track is REALLY BAD
like you're driving on rubble
Not sure why that would be
That keeps the car from flipping over
I tired turning that off
No difference
The slower you drive, the less likely it is to happen
There is another collider way below the track to trigger events
But that's a trigger
I turn those 3 cylinder colliders off and it stops happening but then I get no collision with the track or other cars, obviously
ah
found it, it's within the DriveCollidersTYPE2
not sure which yet
but disabling that removes the bump
Yes that's the one containing those
the TYPE just refers to the car model
of which there are 3 types
So that's removing those colliders I just mentioned
what's the collider material for ?
To stop them getting stuck on walls
It makes them slide along them when you touch them instead of coming to a dead stop
I tried removing that but it made no difference
height doesn't seem to make a difference either
did you try with a different y value for center ?
i think it helps ?
I tired moving them away from the front and back of the car so they weren't touching the wheels
Yes I moved them up and it helped a bit but they really shouldn't be touching anything anyway
giving them a y value of 1 seems to stop it for me
for the collider itself
also is there really 3000 batches while on the track ?
Yes, moving them far up seemed to stop it but that's less than ideal!
Dunno what that means, sorry! 😭
Probably the car AI
I use occlusion culling
Yes
I tired baking it and I couldn't get it looking right also it doubles the map size
Yeah not surprised !
to be fair i didn't feel performance to be too low while in vr, just surprising to see that much in editor
If there is something I'm not doing that would make the performance better, I'd be happy to do it! I'm no smartypants when it comes to this stuff
Besides enabling gpu instancing on all materials, joining meshes, using less transparency, etc
the frame debugger tells you why it can't batch and what's responsible for it
but generally with realtime lighting and big maps like that you can't do too much
experience over framerate i'd say
and the experience is

Whole map is 35k polys
mmh
i remember seeing 350k while in camera view
That also makes them perform like crap when you hit another car
there might be a sweet spot ?
Because I spent a long time tuning it
no bump or very very tiny bump
definitely could be, but not sure if that's vrchat or unity
😦
Could it be related to colliders not keeping up with high velocity?
Like how your body would do that in full body?
So they get dragged back and then just hit the ground or something?
Becasue if you drive real slow, it doesn't happen
i'll lock camera to car and see what happens
also
252k poly, so maybe stuff isn't being culled/disabled ?
Oh, right! That's weird as blender only reported 35k tris
Maybe I'm just being a dumbdumb
We'll push a lot of fixes over the next few weeks, one of them might fix it, if you haven't found out the cause by then
Sorry I didn't catch this sooner, I've been very busy with other stuff
I wish it was more obvious what was happening
I guess I should de-list the world
If I unpublish it, will it lose all its user stats etc?
You won't lose anything as long as it's on the same ID
ok
But no worries, feel free to ping me if you have a hunch and need help testing
Ok, I'm really at a total loss tho
I tried making them box colliders instead but it didn't help
Oh, real quick, is there any particular reason my animation to alter the respawn location wouldn't be working?
It should change once you click the 'title screen'
Through an animation event ?
Let me see if I can find exactly what I did
If it's too fast it could skip it
Not really sure why this wouldn't work now, there's nothing complicated about it
T
so less than a tenth of a second
might get skipped, i think that was also an issue in Murder we fixed with Jar
that's how you randomize the position ?
delay should be minimum 0.2~0.3
at best
Any reason you can't use teleportto for players ?
How do you mean?
You're enabling a ton of spawn locations for the vrc_world component right ?
It just moves once after you enter the track
So you don't get sent back to the loading area
Disabling/moving the initial spawn isn't possible ? That's a bit much to do in this amount of time for the animation
yeah, 2017 and 2018 are wildly different in timing, among other things i'm not competent in 😄
It could be a Write Defaults thing too maybe? I had issues with changing the world spawns locally in an animation + ended up just forcing a trigger to enable a Follow Target component that would shoot the spawn point to a new transform
Changing the timing didn't help
how long is the animation now ?
Oh, that could work
Oh, the animation is a one frame loop that just has the spawn location in one place or another
It loops so its length shouldn't matter
Well, if it's supposed to fire every frame, i could see that being a frame timing issue ?
I'll try making the animation longer
But the followtarget thing might fix it if this doesn't
Well, neither of those seemed to help!

Everything else on that trigger seems to work
Maybe moving the world location just isn't a thing you can do now?
Is there just a better way to do this?
I see you can have more than 1 spawn in the VRCWorld component
Do spawn locations work if the spawn location object is disabled?
Where should I go if I'm interested in doing development for VRChat? I may or may not have written up a couple of pages of pseudocode for a feature I think would be neat, though I don't know if Unity's engine is exposed enough to allow it to happen, or if something like it is already in the works
If you're having issues in maps with the Video player or live streams not working, it may be an issue with "SetSyncType" call in your trigger. Half of my triggers would become non-editable after clicking the "SetSyncType" call. I had to delete the trigger and remake it to correct the issue. After I tested the map, all videos and streams began working again.
Good to know @frail grove - I'll keep that in mind if I see other people asking about video issues
Yeah it was so strange. I discovered that I don't have to delete the whole trigger. I can delete the video player object that it points to and it frees up the trigger to add a new function.
But, I confirmed my players do work in all 5 maps now work
Debug inspector can also usually get you out of a bind
Since it just shows the raw properties
Cool
Is there a new key for the trigger debugger window? It used to be Shift ~ 3
@indigo canyon
--enable-debug-gui --enable-sdk-log-levels --enable-udon-debug-logging
You need to run VRChat with those launch options
Either a bat file or in steam launch options
Then you can use menu shift 3 or whatever
oh I see, thank you
@proud meadow @acoustic mantle
here is how to do world fixed constraints
you need to implement your own reset from this example in the above screenshot
source: https://twitter.com/kazenainannna/status/1245650448217821185
there is mirror wobble, but it's frame perfect outside of the mirror
the mirror wobble is not significant
!!! Thanks that's awesome
now I don't need to learn all the old ways of doing it that I somehow managed to not learn for 2 years
Nope, can't get the ToWorld part working. It looks like the objects get stuck in the world origin. They appear in the correct position for a frame on first time they are enabled. Only rotation is correctly stopped and only after I disabled rotation constraint's lock. Disabling lock from position constraint just makes object follow you how it would normally do if you just drop some object into your avatar.
There's probably no step by step tutorial yet, is there?
Or do you start off by having position constraint not active when enabling gameobject and activating the constraint after few frames through another animation?
@lyric iris am I misunderstanding this? That looks like it would follow the body
Oh I didn't see that thank you
And it doesn't have to be Body. The avatar object or any object at the base of the avatar will work
Body is just convenient
Follow my example screenshot, not the example from the Twitter source
The Twitter source is a little more complex of an example
And press activate or just tick the "is active" box?
Either one should be okay
So I readded components, changed the weights again and now I'll press activate
Activate sets is active I think
Once you have the object frozen at world, you can use a child object with another constraint to move the object around to reset location
I'll make a simple prefab for it probably
Oh so the constraited gameobject is like the old rigidbody way where you drop a gameobject with rigidbody component outside of avatar?
Then you can move whatever is inside the constrainted object
Yeah you can move the child freely with rigidbody or constraint, it just won't move when the parent objects move
The world fixed constraint object is like a container disconnected from your position and rotation
So let's say, you have the child gameobject inside that world fixed constraint, you'll put animator and position constraint (its source is set to your body mesh) on it. The constrain is not active by default. You'll enable it with the animator for a moment and it snaps to the correct position near you.
Hm okay that's good. Thanks for help. I might write a quick summary here in a moment so it's easier to understand what exactly needs to be done.
@mint kiln
there is a setup video inside the readme
let me know if there are any problems
you should be able to put this into an emote toggle easily
just throw it in there pretty much
Okay I'll look into it now. Atm I have my own version where I have separate gesture for activating the constraint because doing it on animator when the child object is enabled does not work sadly. It doesn't correctly deactivate upon completing animation. Animation does not loop.
Yeah it works, so the animator just needs to be on the worldspace object instead of child object to properly reset location. (which I had on child)
it was probably something else, i think it would work if the animator was on the child object too
https://twitter.com/dtupper/status/1245815014277050368?s=20
Does someone care to elaborate what will happen to worlds with Video/Stream player and current/newest SDK after next Steam update?
Current SDK has a critical bug with SyncVideoPlayer and SyncVideoStream components, and future clients will be incompatible with worlds uploaded with the current SDK using those components. We recommend not uploading worlds that use those components until SDK has been updated...
What does "incompatible" mean it will crash on load ?
This question is only valid, if VRC plans to update client before updating SDK
Somebody created a canny for this that is now under review
So let's say I want to have an element of my avatar that I can remove/interact with. IE: the filter on a gas mask.
What would have to be done to allow the removal/replacement/holding of said component?
Have its own bone and then change its pseudo parent via Limb IK stacking or changing weights on the new parent constraints, but I haven't tested the latter.
Hrm, I'll give that a go when I get to that point then. Thanks!
It would be the same concept as having a gun on your hip and changing its parent to your hand. Be careful with the VRC head scaling though as that might cause complications
You can use the position constraint instead, too. Haven't experimented with attaching mask or such to hand much tho so not sure what those scaling issues would be like to begin with
When I try and test a new world I have localy it automatically sends me to the last world I uploaded and if I upload it and try to join it to test it that way it just sends me to my home world.
I had to change the method to set sync minutes and punch in a few numbers then set it back to set sync type. unity still throws an exception but it sticks
@frail grove what do u mean by few numbers? im still new to unity 2018 and sdk soo yeah
It doesn't work. A canny was created. Unity still throws an exception
Hey guys, so im kinda new to unity, but i made avatars and a world which crashed during creating it and now everything is gone. I'm making a new one. and can somebody help me with putting textures/wall colors etc. on different sides of a cube. i know you need a script for that, and im new in this too. Why can't they make it like in CS SDK. DM for more questions & if you can helpo. Would be awesome!
If you want to put it on different sides of a default unity cube then yeah you would want a special shader for that. But you should just use UV mapping before unity and then apply different materials to the different sides
i can not hear audio for the stream player but others can. Does anyone here know what that issue would be?
heyguys - has anybody solved the problem with text meshes not generating normals? this seems insane
Are joints+colliders very expensive?
Like rigid bodies? They are physics so yeah. Should try to do whatever you are doing with constraints or Final IK
Does anyone know the author of a boy avatar with a black hole yoyo thingy? Apparently his name is jasbir. I'm really interested in how he programmed the yoyo dragging and spinning.
i would also like to know UberExHip
as u can see i already tried in #avatars-2-general
So im looking to add a scoreboard to my world, and it's looking like the only way to do this is with custom scripting and Unity UI objects. Does anyone know if a sendRPC will update UI globally? Or is there a better way to do this?
Does anyone know how to get an HTC Vive to work in unity's game mode in 2019.3? There is no OpenVR plugin for XR plugin management so I am trying to use oculus XR, seeing as it works cross platform and I am trying to develop for the quest right now
I just cant test anything when I hit play
nvm. https://youtu.be/gGYtahQjmWQ seems like a good guide
If you want to get started with VR development. This video is for you.
▶ Get access to exclusive content: https://www.patreon.com/ValemVR
▶ Join the Discord channel: https://discord.gg/5uhRegs
-LINKS-
Download Unity : https://unity3d.com/get-unity/download
HDRP vs URP : https...
So uhm, has anyone noticed rigid bodies placed in root move opposite way to avatar when seen by other ppl? This is noticable mostly if u put a world locked object in avatar root, with either lindesu world lock with constrains or final ik limb ik world lock. Such object sits perfectly still anchored to the world. But if u add a child object with joint and rigid body thing will stop to sync properly.
For exame spring joint with 0 spring value. Attached to some other rigidbody in root.
If you go ingame, it wont move for u, as 0 spring is a infinite rope. Is ok.
But if someone else watches u it behaves incorrectly, game seems to move rigidbody transform with opposite direction to avatar movement vector.
If u go front, it goesback, if you move up it goes down, if you jump, it goes down. Exactly the same distance. Should instead sit in same place as its immobile for the avatar owner.
Not a final ik bug as happens to constrainss too. Seems a network ik sync bug or something.
@serene folio Have you tried adding an animator with apply root motion enabled to the game object with the rigidbody?
Just tested and it doesn't change the behavior
I have another animator there for something else
But can move it
What should it animate? Or no controller
And how have you tested it? @pine depot
I just tested with and without what I suggested
Still does it either way so it wasn't the same issue I thought it might be
Testing with some other person? It doesnt alpear locally
So ive been wondering, how exactly does the combat module used in murder or other games using the combat module.
why does it break Rigidbodies?
It adds its own rigidbodies to the player.
Thankfully you don't need rigid bodies for most things now due to constraints
yes, but im immensely lazy and dont want to convert my entire heirarchy.
wait
can you like
just swap out rigid bodies with like minimal effort or are you talking about the ik followers
Yeah its basically painless
Here I have a gif for converting spider avatars but the concept is the same: https://cdn.discordapp.com/attachments/666647460265066497/696817612985729074/Convert_VRCIKF_to_Constraint_Slow.gif
For rigid bodies you should just be able to remove the rigid bodies and fixed joints, place a parent constraint where the fixed joint was, and set its target to the fixed joints target @devout rock
that is actually the most painful fix to such an annoying problem
@dull hollow so go to the fixed joint.
and set the target to the rigid body.
is that literally all its gotta do.
or is it the other way around.
set the (rigid body and fixed joint)(aka the part holding the shit you actually want to follow X bone.), which is on the outside of the 'bone' part of the heirarchy. to target what the rigid body was aimed at.
yep
me explaining this in, 'i dont use unity or make vrchat avatar often' really helped.
turns out ive only got to move 2 rigid bodies and i was being afraid of literally moving 2 things.
and the 12 animations inside of that.
yeah either way this fix is much easier.
Wait isnt this because we updated the sdk to a version on a later installation on unity that actually has constraints.
welp time to update to a version of unity im 90% certain came out 3 years after the installation im using
most of the time went into converting to the latest unity but everything works lit. just going to test.
Ok thats a lot. Are you using 2018.4.20f1? In it is a new component called constraints, you should replace your rigid bodies+fixed joints with parent constraints
yeah
just updated my whole project and dynamic bones and then switched to constraints
that fix was painful because it was so simple
but yeah thanks for the fix
Constraints can do almost everything we were doing previously with fIK in a simpler, faster way.
And more.
Only thing they can't replace is procedural animation and the actual IK part of final IK. Otherwise constraints are better and easier
Yeah turns out you can use fIK for what it's literally designed for who knew ;v)
my unity aint working wen i click build and punlish it loads and then nothing ahppens
does anyone know how to fix this render issue? it basically makes my skybox invisible when i go into VRChat. its like reverse occlusion culling but i cant figure it out
This is an issue
no, no it's not.
baked lighting typically takes up over 50 MB
so for worlds with real time lights its not an issue
If it was oculus quest only it would have made sence, there are many worlds with baked information that takes up over 50 MB
to clarify, i am uploading on PC
if you're getting that error, then you're not uploading on PC
you need to switch back
file > build settings
whichever one has the unity logo on it is the one that is selected
yep, set to pc
ok that's weird then
not sure why i am getting this error then
probably should try the usual stuff, do a clean reinstall of the SDK, make sure unity is 2018.4.20, and if that still doesn't work you can always just migrate to a new project
yeah, forking scared the ever living hell out of me
Is there anything to change to get video players to autoplay again or are they still bugged
Hi, i am attempting to create a world that has a moving (rotating) skybox, i am trying to achieve this by using 2 cameras and rendering the skybox camera behind the first, using camera depth and clear flags, have it working fine in the editor but not ingame, is there something that i need to know? thanks
Not possible. Cameras you use in Unity aren't the cameras VRC uses
@lusty sequoia If you are willing to drop $10 on patreon, RED_SIM just came out with some really nice animated skybox shaders that can be used to change the time of day, clouds, speed etc.
https://www.patreon.com/posts/beautiful-sky-35667377
Haven't used it myself yet but it looks promising
hey, thanks, i should have said, fixed 😄
does vrchat support visual effect graph
What's the easiest way to be able to "two-hand" a prop?
I'd like to be able to hold the Buster Sword I have here that way
Constraints
sup 😄
posting in diff channel, sorry!
Hi. I'm attempting to do a constraint based world object, using the prefab created by Lindesu. https://www.youtube.com/watch?v=T1U9E_TdcYQ&feature=youtu.be
However am having an issue that I've got stuck on.
When I move the avatar in Unity it works fine and stays put cleanly.
When I rotate the avatar however (which is unavoidable in game) the object spins around this wild unexplained orbit, which I don't understand the cause of.
https://gyazo.com/29b41bf414ef72fcf7820fa9e74ae9bb
I've assigned the body to all three constraints, and the settings are otherwise left default to what the prefab provided. Best as I can tell my settings match those demonstrated in the video.
Have just tested it on a different avatar of mine, and it works correctly. So that's something.
Made sure to test it on a completely clean version of the previous model (without any extras such as animations/inventory systems, etc), and that still breaks during rotation.
Which leaves me still unsure of what could be causing the issue. Can work from here, but would be nice to understand why one model works and the other doesn't.
Hmmm. Did you remember to set the container restraint too?
heres what mine on the world space object looks like
and heres what mine on the container looks like (follows my hand cuz i basically place it down with the hand)
and its enabling the world space that places it
also just to double check make sure that ur in play mode when you do it. doesnt work when not in play mode (it looks like u are from the particle systems but just double checkin)
@tropic jewel your "worldSpace" object probably has an offset
that, or there is no reference in the rotation constraint on the worldSpace object
I chose "Body" as the suggested object to use as a source, because Body is typically at 000 position and rotation
make sure that's all normal
They are made to be used with a different render pipeline than what VRChat is using and changing that would require a complete content wipe so unlikely to happen
🙃
I know HUDs are possible in VRChat but I was wondering if I could do a psuedo-augmented reality effect.
Essentially, I want to be able to activate a trigger that'll project a real-time view from an object's perspective. In this case, the front end of a scope on a firearm. I want to see from it's perspective without having to physically aim.
What would be the best way to achieve this? Having a secondary camera and a screen behind the HUD that only activates with the trigger?
Yeah just have a camera render onto a render texture, enable/disable both of them with the gesture like normal
Sweet, that seems relatively easy to do then.
Having issues with one of my screens being compressed while the other is fine, is this the place to ask about that?
This is for the video player
Hey guys, had a pretty big clue today, so I've been working on game and it has been so amazing, i just cant seem to figure out which is the best framework for multiplayer connections, I've had the opportunity to experience a bit of Kevin Kaymak's framework and mirror framework, does anyone know if there is more frameworks than the only 2 I've seen? And I'm not sure if I'm allowed to do these types of questions, but I'm just interested in getting the opinion of developers that are in this community.
hello i am using lindesu's world constraint object. do i have to have two different objects in order to have the ability to have something follow my hand and then be dropped in the world?
yes, at minimum you need one object that is constrained to the world, and a child that has the local transform(your hand)
constraining something to the world seems to automatically move it to 0,0,0 in the world
@gaunt tiger
Thank you
so why is it i can't move subemitters in a particle system? I could swear this didnt use to be an issue, but as is, i;d like to better align the particle sub emitters, and they just refuse to move. and if i position them first and then attach them, they still just snap to the master emitter's positioning
sub-emitted particles always emit at the parent position wdym
at least as far as I've ever known, you can set a pivot per particle but it's based on your position.
hmm. i could swear ive done it before, unless i just got lucky with it
Is the Visual Effects graph usable in VRC?
No, it's made to be used on a different rendering pipeline than what VRChat is build on
Question, does video streaming in the SDK2 work for world creation ?
@young ore
Think that's what you are talking about
https://docs.vrchat.com/docs/vrc_syncvideostream
Similar to VRC_SyncVideoPlayer, this component provides the control center and playlist options for your video. Each entry now has a SyncType which supports the following modes: Normal - this is a normal playback video whose timecode is synced among viewers.LiveStream - this...
Yah I did all that, but can you use the url to youtube's /live url ?
Or only ?v=videocode ?
Cause I couldn't play anything with /live, I did however got the normal player working though.
I'm pretty sure it's capable of playing youtube livestreams though i remember testing those things with friends and there would be moments when some youtube streams would just not play for one person while play for the others or something similar
generally a lot of stuff in video players are not very stable for a long time now, so i would say it's something that requires a lot of testing and trying to get it work
Nm I think I messed up, audio plays, just the video.
Do I need to use a 2D window so to speak, or 3D block ?
Ah I got video output
Just use a plane
There is a "Starter guide" right there in documentation on how to set it up in steps
https://docs.vrchat.com/docs/vrc_syncvideostream#starter-guide
Similar to VRC_SyncVideoPlayer, this component provides the control center and playlist options for your video. Each entry now has a SyncType which supports the following modes: Normal - this is a normal playback video whose timecode is synced among viewers.LiveStream - this...
Question: In order to use SendRPC, where do I enable this ? Doc says I need to enable a Advanced Mode checkbox, but where is it suppose to be ?
Looks like with New VRCSDK2 "Advanced mode" is not there anymore, anyway SendRPC can be accessed from here
Advanced mode was removed and all options are now showing all the time
Thanks 😄
It's my first time working with a video player and I don't know how to make it so that you can copy and paste youtube urls into a videoplayer in game. Are there components that I missed that need to be changed or add ons I don't have?
It's sort of complicated UI setup with Triggers
You want to use prefab like Dynamic Theater Jetdog made https://github.com/jetdog8808/JetDogs-Prefabs/releases
is there any kind of tutorial or instruction on how to use it?
it's already is basically a prefab that you just drop on the scene and it should work
was working fine now this...does anyone know a fix?
So i want to make a trigger system where if i enable one thing, another disables. Any documents on being able to do that?
Might have an idea
About triggers: https://docs.vrchat.com/docs/trigger-summary
Specific action you want:https://docs.vrchat.com/docs/setgameobjectactive
Is there a way to have props interact with each other if certain points of them make contact? IE: the bottom of two separate objects link together if they're close enough.
Yes you would need to animate on particle death using stop action
has anybody cracked the problem of update stutter when attaching players to moving platforms? i'm particularly interested in doing a flying tour and would be nice to avoid the standard judder while allowing players to move around
i guess i could move the world but thats a bit inconvenient for lighting
are all the new constraints whitelisted?
I believe so
@swift oyster #vrchat-support
no prob
yo, absolutely no idea where to post this but is there a way to change this to persist past scenes as a default? to change the skybox material and have it set as the new project default?
@gloomy spire Nope
Hey! How do I make it so my avitar plays a sound clip when I join a lobby? When some people join a lobby I get a sound clip like "a member of __ has joined the lobby
or you could not do that cause it's cringe
OK, so I have facial expressions using shapekeys mapped to my hand gestures... my question is, how can I make a "default" face animation? Is there a slot for the "default" hand gesture? My problem is, I want my character to be able to blink, but not when doing certain facial expressions (like, for example, anime happy eyes), but there seems to be no way to actually have my eyes_close shapekey overridden by the gestures even when they're not active. I tried not animating eyes_close at all in the gestures, but that just results in my blinking animation applied to the face mesh directly working regardless of gesture and making the eyes close too far by, say, combining with the "happy eyes" gesture.
It's like I can either have my avatar able to blink, but mess up my emotes, or take away their ability to blink entirely.
Apparently I can fix this by overriding the default idle animation? Which means I need to base it off an idle motion?
And then like, have my "default" face in the same animation?
You can also look up "behavior keyframes". You'd add an animator to the face that has a custom blinking animation, and then you'd disable the animator with each gesture to prevent the face from blinking while another facial expression is active
@steel gulch
So you can use constraints to make avatars hold props now? How long has this been a thing?
Since forever as you could use final IK before. New stuff is since the 2018 update as that's when they whitelisted constraints
Oh, wow. That is clever. Thank you @polar wagon
looks about right
thats scary
I agree with Don't
i dont think that laptop is ment for gaming of any kind
@tall ibex Whats really concerning? The fact that you have roblox.
phantom forces my dude
True Enough
You know @tall ibex, If you'd Like, I could Give you some more Tips on your computer..DM me if your Interested
Yes
beat me to the punchline
Can you find an avatar's wristbone if they're sitting on your avatar chair? If I added an animator with an animation that has a hierarchy path with names similar to the normal cats conventions, could I use constraints to force a prop into their hand when they use a gesture on that chair animator?
I guess I'd have to have a way to set the avatar's wristbone as the target anyway.
I mean, I know I could make gated gestures across two avatars that I set up that way. One avatar with a chair animator with gestures that access props. Another avatar with those props that can only access those animations when seated on their partner avatar.
How would I go about dropping an object from my hand into world space via constraints? I've seen people do it and I know how constraints work for the most part but I can't figure this out
World space may still require something other than constraints, like Final IK or a joint.
The best I could see for constraints was getting things stuck in player space.
@polar wagon
It's some weird shit with negative values
Negative weights enough to cancel the position or rotation change
@lyric iris So toggling the components wasn't an option?
I've been playing with persistent objects and playing with the weights.
Ah, but I guess I could make the world drop just another source and keep the objects I want out as the things that are persistent.
Nevermind.
Yee. You can toggle the parent if you want, though
Doesn't seem to break anything
As long as the child objects are constrainted to where they need to be for a reset
Nah, I appreciate your grunt work always. It makes realizing a lot of ideas possible.
Thanks for sharing.
Thanks @lyric iris !
👍
Though Not sure which strength to set as a negative
Reverse engineering it?
just trying to figure out how to drop an object without disabling and re-enabling it
Ah, so
If you already have an object being constrained, you can just toggle its parent constraint instead of the world drop if you have that as a child of container.
I did have to set container's source as the same source of the constrained object.
ok I got it working mostly. But whenever I drop the object, it rotates with my body
I read @lyric iris 's comment on their video about making the source something that's at 0,0,0 but not sure why it won't work
Everyone I've met that has such issues is because there is an offset between the source and the parent
Try making the source on the worldSpace constraints the parent, instead of the Body. Your Body object probably has some offset
Parent = your avatar object
it doesn't have any offset except rotation. But I did try using the avatar object itself to no avail
still yields the same result
could it be because my avatar isn't at 0,0,0 in the scene?
I have a few lined up
Unlikely, but maybe. It shouldn't matter really
I can move and rotate the avatar anywhere in the scene with no problems
But if there is an offset, you will have problems
No offset should be needed so just 0 everything out
If you have rotation on your Body, remove it
Body is a skinned mesh it will always appear where the bones are, so that object needs 0 transform changes
Moving the avatar in my scene seemed to have reduced the radius of the rotation by a significant amount
But didn't remove it. Gonna try to use the body mesh at 0,0,0 rotation
Didn't change anything
Moving the avatar in the scene and having an effect is weird. I'll test that. It shouldn't matter, since it's just cancelling movement from the parent, but maybe that is why some avatars have issues, other than offsets
I'm thoroughly stumped
Is there maybe an odd scale going on?
It hasn't for me, but idk maybe. It's been so hard to track down the edge cases. Try moving the worldSpace prefab to base of unity scene. Set scale to 1. Then move it back under your avatar
It should automatically rescale to base unity scale
Then try it
Alternatively, pm me a package of your avatar and I'll test it
Resetting the scale didn't help
what actually are the transforms of the objects involved here
can you screenshot your avatar object, the worldSpace object, the Container, your Body, and your Armature?
each with the inspector visible
somewhere along the line I had moved the worldspace object to the same position as my hand
I'm an idiot
I reset that to 0,and moved the container instead
solved the issue
yee
thank you so much
no problem. have fun putting things in the world!
through using your system and Rero's inventory, I have a sword that I have to actually grab from my waist, and if I let go of the gesture anywhere except that same spot, it stays in the worldspace
letting go at my waist reholsters it
so a fully grabbable sword with one gesture
Thank you so so so much
nice 🙂 i recently did something similar with my sword saint
oh and btw if you need to use it without disabling anything, saigo is correct you just animate the constraint on Container or any child object
ye
the reset animator that is on worldSpace is merely animating the Container constraint to set when the object hierarchy is enabled
you can remove that animator if it helps you
@lyric iris So as long as I'm not trying to reset the world drop position, the animator isn't necessary?
Ah, nevermind. It seems it is.
Should have checked first.
it's not necessary if you are handling the child Container constraint manually or via another anim. All the reset clip does is enable the Container constraint for 6 frames, which is enough to sync people at any fps(p fast component)
Interesting. All I was doing was toggling my objects parent constraint off. The object itself is a child of container now and the source of container is the same as the source of the object's parent constraint.
yeah that'll work to move the child objects to the local source, but the thing with the reset animation is that it will disable the constraint on Container after 6 frames. that's usually what you want, but incase you are doing something different, you're free to dismantle it and do it another way
should work mostly as expected
i recommend taking that position constraint, and that rotation constraint on the worldSpace object, and make presets out of them
that way, you do not need to rely on the prefab with this specific hierarchy and reset mechanic to make something in the world
if you haven't used presets yet, they're like prefabs for component settings
I was going to try unchecking Is Active via gesture but the delay is necessary?
Oh no. I see.
So if I uncheck Is Active and the parent constraint on the same gesture it's the same thing.
Okay.
yeah pretty much
It works. I cut out the animator.
im not sure why there are 2 things for it but maybe that's useful for how people use it in the editor or something
Well, container's Is Active and my object's parent component.
If I toggle both of those on the same gesture it works.
Constraints are funky though. Easy to get mixed up in the beginning. I understand the need for Enabled and Is Active now.
Im making a piano at the moment but Im into a problem right now the normal keys ( white ones) on key down they work perfectly but the black ones that are supost to be on key down+ Shift down They dont I havent find the option in the sdk to add more than 1 key down simultaneously to trigger an audio does anyone know the name of the script called to make it on keydown+shift triggering an audio?
My English isnt perfect so its even harder for me to find what I need if you could help me on that I apreciat it
Hi There, I am trying to build a world in VR chat and hit a snag, someone reason on of my imported staircase low poly .OBJ, I can still go through it...I applies a Mesh Collider and Rigid Body...
Should I change Interpolate and collision detection settings in the collider?
Why do you have a rigidbody on that ?
Remove the rigidbody and tick the 'convex' checkbox in the mesh collider settings? Ideally though you'd want to make another object to use as a collider with something like probilder with a smooth ramp so climbing the stairs isn't too janky
Hey beautiful people
anyone know OpenVR and how to develop for it?
I have position and rotation data being sent from an arduino that I'd like to pass into it
Well if anyone does know how to set up open VR for full body tracking of home-made sensors, let me know! Feel free to DM me
Is there any way to detect if a user is in VR with SDK2?
I think you misunderstood the question - I'm trying to figure out how to determine if someone is in desktop or VR mode. You can do it with Udon in SDK3 using VRCPlayerApi::IsUserInVR, but what is the equivalent method with SDK2?
There's no hacky workarounds or clever tricks someone has thought of?
That's too bad
There might be, but it would be so complex that i doubt it'd be easily shareable 
I'd love to use Udon but there's no video player support yet so it's of no use to me
I have an object that is supposed to follow another object on an avatar via rigidbody and fixed joint constraint. for whatever reason the rigidbody just takes the object to the world origin and won't follow anything at all. anyone got any tips?
Correction... It seems to be the fixed joint that's causing the issue. I'm not sure why.
ok. i've narrowed the problem down just a little bit more. it only does this when the object is hidden, which is a problem because I need it hidden at first...
@supple steppe use constraints instead
@polar wagon any certain kind? I see a few here and i've never used them before
parent constraint
thank you :)
damn, parent constraint worked flawlessly but VRC doesnt allow it i guess :/
Is there any way of injecting code? I am the developer of Vegetation Studio, a unity vegetation rendering framework asset and I got requests for developers that want to use my system with VR Chat. But it needs run-time code for run-time spawning, culling and rendering.
Look into udon @midnight egret but beware it's very limited
@midnight egret there are some whitelisted third party apps, dont know how that process works but they exist. Finalik for example works.
@void osprey Do you know who is responsible for whitelisting/including code?
@supple steppe update your sdk. constraints were whitelisted a while ago
@hasty copper there is one made by phasedragon: https://www.google.com/url?q=https://drive.google.com/file/d/1mjUlf4ofhczGhnmAGJ2ysZUQZ0NDLoEj/view?usp%3Dsharing&sa=D&ust=1590262756621000&usg=AFQjCNHY28pnFN4DfDa521KG1WHhmptBGg
Oh, i must have accidentally grabbed an older version somehow.. thanks )
@hexed sun Thank you!
I'm unsure if this is considered an advanced question or not
I asked it already in #avatars-mmd
But I thought I'd bring it up here, just in game.
Hey there everyone! I was wondering if anyone knows if it's possible to playback Ambisonic audio files within VRChat? I haven't seen a setting for this, but I know ONSP does have support for ambisonic file playback. Not entirely sure how VRChat's audio pipeline is built, but figure it should be in there somewhere since it uses ONSP?
@uncut mica It's possible. I tested when the 2018 update went live + my test world used the ONSP Ambisonics Native script (it's still whitelisted). The only issue I found was that toggling 'Use Virtual Speakers' would do all sorts of weird stuff like offset the azimuth angle in the client. I have to retest to see if Unity has native support now without the need for the ONSP script, but it works otherwise!
Ah! Thanks @fresh ermine . Really great to know that. So I should be able to dl the Oculus SDK and just access those scripts? Where would I find the whitelist?
I think the virtual speakers toggle is required to decode the Ambisonics, otherwise it just plays the encoded Ambisonic channels. Maybe need to mess a bit with rotation and stuff.
@uncut mica Yeah, that's what I did! There's a world whitelist in the docs, but I don't believe it lists the ONSP scripts. I'm hoping it's not even needed now bcs I'm working on an ambisonic pack for the community + having to direct people to download that script would be...not ideal, but ~to be tested~
It'll use the normal spherical decoder fine without virtual speakers toggled btw! Virtual speakers just decode as a sort-of point cloud of audio sources which helps with phasing + smearing of mid-to-higher freq content. It's slower though (and borked in the client obviously)
Thanks @fresh ermine! Never realised that it also decoded like that aswell. Reading the documentation I guess it's their novel implementation. Knowing Ambisonic theory they must use a spherical T-Design of some sort to decode to points on a sphere otherwise I can't imagine the HRTF filters to work properly.
@uncut mica Yeah, that's what I did! There's a world whitelist in the docs, but I don't believe it lists the ONSP scripts. I'm hoping it's not even needed now bcs I'm working on an ambisonic pack for the community + having to direct people to download that script would be...not ideal, but ~to be tested~
@fresh ermine awesome! When the pack is ready I'd love to check it out! We're building a world currently and want to make use of ASMR with ambi microphone + audio skybox techniques to create something that's more immersive.
When I tried using ONSP it sorta sounded like it was just trying to spatialize a single channel from the Ambi format, but may have setup something incorrectly. Keen to know it's working for you!
@uncut mica Yeah - you can definitely hear comb-filtering on things that are 1khz+ when you turn your head w/ their spherical decoder, but I was also using temp ambisonics that I authored (vs recorded) at the time so it may have been exaggerated by the lack of IRL propagation.
That sounds dope tho, what are you recording on? I've been using the Zoom H3VR, and it's been surprisingly really nice for the price point (after you clean up the noise floor 😆 ). The ambisonics pack will be on the prefab database eventually!
also iirc, you need to make sure spatial blend was set to fully 2D with the Spatialize set to false (if that's present on the audio source), and you couldn't have the ONSP or Spatial Audio Source on the game object so the decoder could take the wheel
@uncut mica Yeah - you can definitely hear comb-filtering on things that are 1khz+ when you turn your head w/ their spherical decoder, but I was also using temp ambisonics that I authored (vs recorded) at the time so it may have been exaggerated by the lack of IRL propagation.
@fresh ermine Aha! Interesting. So you created object based mixes?
Yeah, I've been using my Zoom H3-VR and the AmbiMik-1, but soon will be getting an AmbeoVR with a Mix-Pre after lockdown 😄 I have a buddy with a Schoeps ORTF-3D and AmbeoVR + MixPre, so also been using those for some of the recordings. Most the stuff we're doing in this world is experimentation and I'm distorting the soundfield stuff quite a bit so not as concerned about noise floors as I might be on other projects. I've also been using some Ambisonic based upmixing chains I've built to enhance 3D effect.
The Zoom is a really interesting mic. I have a suspicion that they apply some gating and filtering on their mic inputs as they enter the DAC to hide the noise floor of the mic. You can see these crazy columns on the A-format signal, that being said It is good for the price point though. However, I do find that it tends to sound a bit wooley and hollow in comparison to other ambisonic mics. Also find it tends to loose source directivity quite quickly over distance which is something the AmbiMik doesn't do. Good for a general enveloping ambience, but lacks a bit of resolution. Can especially hear this when playing back on a loudspeaker system I find. Ambeo and AmbiMik tend to hold the source location quite nicely (even for first order), whilst Zoom sounds super blurry.
also iirc, you need to make sure spatial blend was set to fully 2D with the Spatialize set to false (if that's present on the audio source), and you couldn't have the ONSP or Spatial Audio Source on the game object so the decoder could take the wheel
@fresh ermine Thanks for this, this may have been an issue, I can't recall if I had enalbed or not, but that makes total sense to not have 3D blend enabled at all
@fresh ermine Would be awesome to get your thoughts on the World once it's in a bit more of a showable state!
@uncut mica Sort of - yeah! I used mono sources and then placed that using the VST that Oculus made that lets you place sources in VR + then print to an Ambisonic file at the end. It was pretty much a nightmare to do, 0/10 would not recommend. I eventually ended up just using Waves NX + B360 with a webcam to track my head so I could just place + mix in Pro Tools (accuracy wasn't ~super~ important bcs they were temp)
hahaha, great to know!
I heard some shoot-outs +the Zoom fell short relative to most other ambisonics mics. I recorded a clean take in a sealed / isolated room and then used that in RX as a noise print to remove from other takes, but the noise print was pretty awful. Luckily in VRC cases, the audio field gets augmented by VOIP and other point sources too so we can get away with some noise and smearing unlike w/ VR cinema or something
I've been rocking the IEM + SPARTA plugins, if you haven't already seen em I'd highly recommend!
I'd be down to check it out btw! Lemme know when it's finished (or show it off at the Community Meetup). I'll peep those plugins too
The IEM Plug-in Suite is a free and Open-Source audio plugin suite including Ambisonic plug-ins up to 7th order created by staff and students of the Institute of Electronic Music and Acoustics.
I heard some shoot-outs +the Zoom fell short relative to most other ambisonics mics. I recorded a clean take in a sealed / isolated room and then used that in RX as a noise print to remove from other takes, but the noise print was pretty awful. Luckily in VRC cases, the audio field gets augmented by VOIP and other point sources too so we can get away with some noise and smearing unlike w/ VR cinema or something
@fresh ermine yep, exact!
RX is my friend aswell 😄
I'd be down to check it out btw! Lemme know when it's finished (or show it off at the Community Meetup). I'll peep those plugins too
@fresh ermine Rad! Will keep you posted, might be cool to put at the community meetup. We still gotta rack some more hours before we become ultra trusted users, haha
Nice! This RoomEncoder plugin would have def helped simulate propagation in the temps. Thx for showing me these
It's a pleasure!
There are some real nice applications for those plugins
so great they are free and open source aswell
Can anybody confirm that editing the chair prefab (on avatars) breaks the entire chair?
I've been struggling with this for hours. Every time I do anything to the chair prefab the whole thing just stops working
Could this be something to do with the chair no longer meeting "safe limits"?
Hey, so like, I've seen some avatars only activate certain emotes with a combination of two hand gestures? How does one do this?
Nested gameobjects. Aka, one gesture enables the parent object, and the second enables the child
@steel gulch
Ahh, I see. Thank you. X3
You're welcome
So looking into making something that uses the calculated position value of a model to generate a score based system. Kind of like how a kinect world work however Im struggling trying to figure out how to get it to work as I cant use ref statements with udonsharp yet.
is the a cheat sort of way of doing it without scripting?
you mind I’ve got a problem what section should I go at anyone
I need to stop myself from overheating my laptop
Is cool now but I need to get help
does anyone know of a prefabs or scripts to make beer pong in my vrchat world? if you know, please ping me!
@lean sorrel dunking your laptop in an ice bath should do the trick
sooo, i'm just finishing up an avatar i've been working on, but when i re-export my model, the basis shapekey is acting like it's set to the Oh mouth shape D:
the basis looks like this in blender:
anyone encountered this problem? O:
anyone wanna let me pay for a custom avatar? ;o
Basis
vrc.blink_left
vrc.blink_right
vrc.lowerlid_left
vrc.lowerlid_right
vrc.v_aa
vrc.v_ch
vrc.v_dd
vrc.v_ee
vrc.v_ff
vrc.v_ih
vrc.v_kk
vrc.v_nn
vrc.v_oh
vrc.v_ou
vrc.v_pp
vrc.v_rr
vrc.v_sil
vrc.v_ss
vrc.v_th
@dusty garnet That should be the order of your list
anyone know how the grabbable cloth physics thing works? I've googled around and can't find anything
If you mean the cloth component you cant actually "grab" it. However, you can enable a collider an inch or two away from your palm that will keep the fabric near the hand faking it. Only thing is you need to place your hand in the correct spot before enabling the collider or youll just push it
I tried this but I can't find a way to toggle it (it seems to be always on) and it doesn't appear to have enough force to really move the cloth
Having the collider on an empty game object and enabling the game object via gesture should be fine. Not sure what you mean by not enough force though. With how cloth works, you cant move your hand too fast or you'll phase through (speed depends on the size of the collider)
You should have a healthy amount of vertices as too little increases the chance of phasing through
putting it on an empty is what I did, it made no real difference, and not enough force as in it barely moves the cloth before it clips through
The latter has to do with the cloth settings, I dont know about the former though. Last time I did colliders and cloth was almost a year ago
If disabling/enabling doesnt work you can always just have it 1000m away and zip it into place on gesture instead
I'm guessing that's how it works yea
Is final IK broken right now? I can't seem to get working simple ccdik or aim ik, but on older already uploaded avatars it works fine.
I mean, it works in unity, but not in-game.
Make sure that your final IK is in the plugins folder (Assets>Plugins>RootMotion) otherwise VRChat will not implement the scripts
@solemn flame
@stiff lily oh, duh! Thank you so much <3 dunni why I didn't notice that 8D
Oh, thanks Scionzenos, I actually moved some stuff to ThirdParty, so that might be the cause. Gonna try it.
Yup, that was it, thanks @dull hollow.
No problem, its a common issue since it isnt stated anywhere
sooo, seems like reordering my shapekeys didn't work O: mouth is still open when I bring my fbx into unity, looks fine in blender
anyone encountered this problem? O:
@dusty garnet If you have eye tracking setup its possible the eye and mouth shapekeys mixed
i think the problem might be in blender O: i noticed when i press the + to add a new shapekey, it isn't set to basis, it's set to the 😮 mouth
hmmm
Well when you press + it copies the shapekey you have selected
does the new shapekey look like then even if you add when having the basis shapekey selected?
mine always add the 😮 mouth no matter what i have selected D:
yeah
just tried
still adds the O mouth
Select the basis key and select the new shape from mix option?
yeah, that's how i made the base shapekeys so i could make the mouthshapes, but it doesn't seem to have fixed the issue that for some reason blender thinks the basis is something that it's not D:
okay!
so i found a solution, basically i pressed + to add a new shapekey, that was set to the O mouth shape for some reason, then I moved that into the basis position so it was actually the new basis (like blender thought it was), then i removed it
and now it seems fine O:
Has anyone figured out how to place objects in world space in the new version yet? Is it using final IK?
@oak basin https://youtu.be/UTQYnScOaRI
https://github.com/oofdesu/lin-unity-packages/releases/download/unity-packages/worldFixedConstraints.unitypackage
The prefab is a world fixed object, held in place by constraints.
The "Container" object will reset it's location every time the "worldSpace" object is enabled.
...
Anyone have experience with putting web players in worlds? Trying to find out how to link a video player in my world to my plex <.<
@lyric iris I actually just found that and got it set up yesterday! Thank you! 🙂
Does anyone know how to make particle collisions not collide with your avatar?
idk which one(s) to disable
It's "Default" I guess.
nvm, that makes it so it doesn't collide with the ground too. :l
@dull hollow hello, I'm trying to spider setup. I can't figure out why fabriks are targeting to worldspace 0,0,0 all the time. I mean, its probably because of this (second screenshot)
so they're targeting "none" which would be worldspace
but i couldn't see you're doing something with it in your video.
Okay, that's not fabriks nor grounder because it's still the cause when i disable them. So it's vrik.
Ah, I forgot you shared your scene. And i see it works there, so i'll just double check everything.
It works now
I actually had to make VRIK targets for chest, left and right wrists too, they couldn't be empty.
Thanks for tuto anyway, Scionzenos!
Yeah there's a discrepancy in the video and the example I have. You can remove the references to the chest and hands but you have to set their weight to 0 in the VRIK
There's a link to the discord in the description of the video, thats a better place to ask questions about spider IK
I see, it totally make sense I didn't notice that earlier.
Will do, if i ever had more questions.
@oak basin temporarily disable all avatars in your scene and add an empty gameobject with a world component to it. Go to upload the world like you would, and set up layers and such (but don't upload the world) and then delete the gameobject, and re-enable your avatars. Then on the collision module, you'll notice there are new layers. Disable collision with "Player" and "Player Local" to stop it from colliding with other people, and yourself.
Does VRChat support Foveated rendering on the Vive Pro Eye? I recently bought it and I am not sure if this feature is on.
From looking a previous statements on the VRChat discord. Is still true that there is still no eye tracking support yet ported to the Vive Pro Eye?
Both are unsupported IIRC but I haven't read much on foveated rendering. Eye tracking is a definite no though.
@polar wagon That worked like a charm, thank you so much! 🙂
Okay so I looked this one up, and it looks like nobody has run into this problem before, and nobody in #avatars-2-general was able to help.
I have a model I exported from Koikatsu as a .pmx, edited in Blender to make it SFW, then fixed/exported it as an FBX using the cats plugin.
Once in unity, I set up the materials with the cubedparadox toon shader and uploaded it. The entire model was flickering between various colors, so I figured the shader might be broken. So I switched to the more current Poiyomi's toon shader, but still had the exact same issue. Everything works fine in the Unity window, it's just when it gets into VRChat that it breaks.
I've tried making brand new materials to make sure no weird settings were carried over between shaders. That didn't work.
I also tried removing the textures, but the blank gray model was still flickering, so it wasn't the textures.
Then I tried deleting the materials all together, and the hot pink version of the model didn't flicker. So I'm thinking it must be something wrong with the way the materials are being applied, rather than the materials themselves. But I'm not sure how to follow that lead.
For reference, here's what the issue looks like:
That's why I switched.
are you sure the upload worked when you changed ?
Yes.
what kind of textures do you have, and did you check legacy blendshape
These are the textures:
I thought they might be the issue, but after deleting them, the blank model was still flickering between colors.
Legacy blendshape is enabled, too.
Try deleting the toon cubedpadox shader folder from your project. Also make sure you are actually uploading the avatar (add a cube to your avatar hand or anywhere to see if the changes are actually uploading) Or try uploading a new model with the other shader (new avatar ID)
Already deleted the cubedparadox folder.
I also double checked to make sure it was properly uploading, and the changes were being made, but the flickering remained over top of them. Didn't matter what shader I used, or whether or not the model was textured.
I'll try uploading under a different ID though, just to be sure.
Maybe some shaders are rendering on top of others? How many materials do you have ?
Have you considered creating an atlas? (merge materials into one) Or do you need all those materials? Perhaps it can help solve the issue. But try a new ID.
Tried the new ID, no beans. Still flickering.
I'm going to need a few of the materials separated eventually, but I could try merging them on the off chance that it fixes something.
They're named that because they had to be manually exported from the original program, and I didn't bother renaming them. They're meant for gradient mapping, so the colors are arbitrary. Again though, I deleted them all and the model was still flickering, so I don't think it's the textures.
You updated your GPU drivers recently ?
Yes, yesterday.
when did the problem start ?
As soon as I uploaded it for the first time. No other models are experiencing the same problem.
Lol that does look like straight artifacting ngl
I'm getting somewhere, making the model smaller made the flickering go between dark and light instead of rainbow colors. It also stops flickering whenever the model isn't animating, IE during FBT calibration.
It does sort of 'pause' the flicker though, so it'll stop on being really dark sometimes, or solid green/blue/red.
Also, nobody else can see it.
Looks like it's something to do with the animation. The flickering starts and stops depending on which way I rotate the character, and at select points during animations.
This is hands down the weirdest issue I've ever had.
Maybe there's something in the bone structure that's modifying the shader? I'm very lost at this point.
that is due to a shader, you need to use a different shader. Recommended Poiyomi's or Silent Cel's shaders.
Only shaders can change model textures into brightness, saturation or hue colors. There are no other explanation.
@warm niche
Set the Anchor Override on your skinned mesh renderer to your Spine.
Chances are it put your origin somewhere around the floor, which isn't great.
What does your bounding box look like?
@tardy folio Thank you so much, I had the same issue and that fixed it. You are the best! 
@tardy folio Wow, I can't believe I didn't think of that. That was definitely it though, thanks a million!
😄
.
anyone around?
Is there any way to prevent spazzing out rigidbodies when trying to make a ragdoll on gesture? I'm not sure if I missing something or it's just vrc thing.
I thought it may be because of some float numbers unprecision, but both armatures are at scale 1,1,1 etc. Also looks like gravity does not work at all ingame.
If it makes any difference it's setup with two armatures, one being main humanoid rig without mesh, and second armature with mesh with all bones being parent constrained to the main one. On the gesture it turns off kinematics and disables parent constraints.
Maybe a stupid question, but if I set things to different layers (on an avatar), will they retain those layer settings at all? Or is every single thing on my avatar automatically transfered to the "player" and "player local" layers when it loads into the scene in-game?
nah eru, leave it like that, its much better :lul:
So it looks like that's collision issue. Might be because how vrc handles colliders which were put on avatars itself. Gravity works fine, when colliders are disabled. Also No gravity + no colliders looks like quite naturally, no spazzing at all. But when colliders comes into, it's all over again. Making ragdoll worldspace doesn't help either, also it proves that ragdoll doesn't spazz out because of playerlocal bubble. And @polar wagon it looks like changing objects layers on avatars doesn't work, and you're right they're probably set to player/playerlocal on upload.
Yeah thought so. Thanks
Do you guys know if VRchat still use Photon Voice for VoIP or do they switch to something like Vivox ?
so ive seen it happen but like, how can you create a system that can perform an event if you swing or move something fast enough?
Since imma bouta sleep, please ping me if you do answer this-
On avatar or world? @devout rock
@solemn flame I think @fair valve knows about that issue
with the body spazzing out?
I think that was a collider issue
@solemn flame Make sure all your colliders are set as triggers.
To be sure go show it to someone else ingame, if it looks normal for them then it's probably your player collider messing with whatever colliders you might have.
@lyric iris avatar
@solemn flame ive also had a similar problem after setting dynamic bone components on the wrong bone
@devout rock it's possible, you can build a variety of speed detectors
using particle death animation
aight
i have everything for sub particle systems but i didnt know you could use particles for stuff like that
where should i look for setting something up for that
just a simple test, a sword, that enables an audio source when swung.
just want to build up a long list of techniques because its fun to mess with unity
so, it's a bit complicated, you can either try to make it yourself from basic parts, which is hard and takes time, or you can use what i have made, but it does more than what you want to do
are you relatively familiar with unity and animating?
well i guess ill find out how familliar i am.
because i have literally no baseline to compare to-
okay, i recommend learning how to animate on particle death first. it's the basis for a machine like this
ive used the stop action particle systems before-
i think ive got a plugin somewhere to animate behaviours
okay, then you will basically need to make a stop action system that fires when it hits a collider, and it only hits the collider when moving fast enough
you can achieve this with constraints
basically, have the collider track wrist, or other object, sitting out 1 unit in a direction
then have a particle constrained to that object, animate it on/off with a looping clip at a regular interval
so that it rests in local space, then is constrained to the source for a few frames
should look like it's just getting intermittent updates to your wrist/source
Couldn't you also have a world particle that dies quickly, but if it hits the trigger (ie swing fast enough) it subemits the stop action particle trigger?
that way, if you move the source fast enough, the particle will drag, and the collider can hit it
can't be world simulation space
otherwise moving around will fire it
to be fair local space is also less laggy
i am releasing the free package soon but yeah, delays because video production and demo avatar needing work
the system which drives this
the job of things like slashes is to make them as close to realtime as possible.
yep
unless you going for some anime cliche slash then hit-
most of the work in this system was minimizing delays
it lead to a faster way to do stop action
than subemission
@polar wagon and yes you can generally do what you described in local space with a particle, and you can make a really small footprint system that way
@fair valve I'm trying to ragdoll the model on gesture, trigger doesn't come into play, because ragdoll will fall through floor. Also indeed it works fine non-locally, spazzing is local only. That's odd anyway, because playerbubble is attached to let's say, to main humanoid rig, and then worldspace ragdoll shouldn't touch it at all. I'll try out few more things, but if we could change layers of objects so colliders don't collide with playerlocal, that would be best solution.
you're not spazzing cause you're colliding with your player bubble you're spazzing cause the mirrorReflection copy of your colliders are colliding with the local ones and they're both always in the same spot.
I see, that makes more sense. Isn't that weird that playerlocal colliders are colliding with mirrorReflection ones then? Theoretically playerlocal shouldn't colide with "reflection" which is in a mirror
And I just looked up that tony hawk model which ragdolls too, and it has same issue.
@drifting token I believe you know much more than me about this so, is there maybe any solution to this right now? Like, any hacky way to stop spazzing?
there technically is one but it's both
a. not simple
b. not practical
(c. not something I want to talk about here)
Okay, I guess I know what you mean. Well then i'm gonna hope that avatars 3.0 introduce something to this. Thanks.
im getting an error when trying to build my world, does anyone have a second to help me troubleshoot?
@solemn flame this probably won't work, but try turning off the collider component by default and turning them on via animation. Not sure how it interacts with the reflection layer, but that's how I'm able to put colliders on my avatar that collide with things but not my own collision capsule (so that it doesn't make me fly)
I'll try, thanks for idea.
oh, wait I just realized I'm already doing it.
that's ragdoll on gesture, so by default colliders are off so i can move normally
The components themselves?
Ah ok makes sense
im trying to make a menu using UI but no matter what i do i can't get the 'buttons' to react to clicks
any suggestions?
in unity or only in game?
make sure your canvas has "vrc ui shape" component on it, so it's that ray from hand in-game will interact with UI
ohhh thanks @solemn flame gone through several tutorials and this is the first time i see "vrc ui shape" mentioned
will give it a try
Is it possible to create an object that makes a unique sound when it's being moved? Like a lightsaber swinging or a maraca shaking?
for really simple stuff like that i think my speed detector would be easier to set up
hey, y'all. i was currently asked for help on a project where they are experiencing the "drunk vision" in VR. i have experienced this phenomena before but just never knew a) what it was or b) how to fix it for someone. can anyone help with this? 😮
i think so? the left eye is fine but the right one skews/offsets the image to where it's pretty disorienting
i've never had it happen with any of my personal projects, helping a friend with his
Is it constant? Or just happening sometimes when there's low fps?
Wait when you say projects, do you mean worlds?
yes, it's a world he's working on and asked me for help
Is there any post processing?
i've never used any post processing, where would that be? in the lighting tab?
You have to manually add it, so if you haven't, there isn't any
I'm not sure what it could be, sorry
Check the main camera for a post processing layer component
Actually, check the world descriptor object for a reference camera
If there isn't one, you probably don't have Post Processing
yep, no reference camera
Also this may be better suited for #user-support-old
Ok, so no post processing
And I'm out of ideas, sorry
no worries, thank you!
Is it possible to use NavMeshAgent in VRC? I am trying to create NPC characters but without custom script I can't set their destination property. Is there any way to do this?
Yes you can use NavMeshAgent in VRC. How are you setting it up? You will need to download the Standard Assets from the unity store and add a "AI Character control script" to it. From there it will let you set their destination target. @alpine basalt
Hey, y'all. Still having the same eye issue in the world I'm helping a friend with. There aren't any answers anywhere pertaining to this 'drunk vision' issue. :/
@dapper mountain In Unity I can use NavMeshAgent, it is not problem. But its "destination" property is not exposed to UI, so I can set it from code only. But in VRChat I cannot use custom code. How is it possible to set destination? Is there any VRC action that can set public properties of objects?
You can set different targets to the AI using UI buttons. Then from there you can use VRC Triggers to call that action if you want to broadcast it to other players instead of it being local. Looks like you can only change its destination with the AICharacterControl script, which can be changed via UI buttons. I am not entirely sure if this is what you are looking for.
@dapper mountain Thanks! AICharacterControl was the solution, it works! I didn't know about it. And do u know how can I reference to the VRC player object in Unity? (my goal is creating NPC -s who follow the player.)
I know, UDON would be a better choice for such tasks...
I have an object with some leds on it which I want to light up in sequence. I know how to do this with an animator, but I then want to be able to change the animation temporarily with an emote. I'm not sure if it's possible to toggle an animator without using some special hidden keyframes like they use in inventory systems. And I'm not sure if it's possible to swap the animation being played by an animator with another animator. I could have two identical objects each with a different animation on them and hide and show them as necessary, but this seems wasteful. Any suggestions?
I think I have swapped animator controllers with an animation in the past, though I only attempted this on my avatar, which didn't work because VRChat apparently stores those override controllers for standing and sitting somewhere and swapping a new one into those slots didn't work. I don't recall if I tried to do the same to the avatar's animator itself, but I assume based on the replies I got at the time that that wouldn't work. But this object is not the avatar's root which is animating, so I'm not sure if the rules will be different for it.
@scarlet pagoda you can have nested gameobjects with different animators that animate the same properties, and using the behavior keyframes, you can turn the specific animators on and off to switch between animations
@polar wagon I've tried to add keyframes that enable and disable the animator both by recording turning it on and off, and by looking in the animatable properties menu, but there doesn't seem to be a way to add keyframes to disable animators without manually editing the animation's text file.
Hm, and I just realized if I were to try swapping in another animator controller or an override controller in an emote, even if that were to work, when the emote ends, the state would return to normal, so there's no easy way to make an animation speed up permanently for example. Though with disabling animators to stop them from reverting everything to its previous state with those special hidden keyframes, I suppose it should still be possible. But I don't feel like mucking with that for something so trivial.
Has anyone else noticed an issue with Xiexie's Inventory remapper with the latest Unity/SDK 2, where if you add an inventory to an avatar, and then try to duplicate that avatar in the hierarchy, some animators on the avatar just break and stop animating? Not all of them of course, one of them is happily chugging away, but two others just stopped animating in play mode even though they are in no way connected to the objects being added to the inventory system. I can play the animation on them manually just fine, but the animation won't start up on its own in play mode. I suspect maybe there's some problem Unity is having copying those animators because of the special keyframes? I dunno.
Hm, in spite of the animator playing in Unity, they are not playing in VRChat... 😦
Does anyone know if there is an issue with an always on animator on your avatar animating material changes? I have an avatar with glowsticks that change color which you can pull out with a gesture, and those material changes animate fine, but for some reason a simple LED blinking animation which is always on, on two different objects on my avatar, work in Unity, but not in game. I guess I should probably try hiding those objects and making them appear with a gesture to see if it fixes it, but that's not going to be a workable solution for my final avatar.
@scarlet pagoda behavior keyframes can't be added using the regular methods. You have to either edit the animation file, or use a script.
I'll DM you the Script
@polar wagon Waaaait there's a script for that?
Me wants
Saves me from going into the animation file and manually changing the ID of what that keyframe is doing
yeah I can send it to you too

What do you do with that script? I added it to my project but I don't see any menus or buttons added even when I go to the animation window and select keyframes or right click.
So that allows me to turn an animator on and off. And if I have nested animators, I can enable them one at a time to make them animate objects below them in the hierarchy with various animations. That's useful.
yes exactly
But to get back to what I was talking about earlier lest it get buried... My issue at the moment is animators that I have constantly running aren't animating my materials. I should go test now to see if hiding the objects and then enabling them with a gesture fixes it. If it does though, I still won't know what the root cause is. And I'm not sure if I can just stick an idle animation on my avatars which unhides them to fix it as it may not always unhide them and if people have animations turned off my avatar will be naked. 🙂
Hm, well when I went to to that I noticed something odd. Remember when I asked about XieXie's inventory system and I was having issued cloning my avatar when I noticed my props were no longer animating in the window? Well, it seems that if I have preview turned off, on the copies, the animator is disabled by default for some reason.
Wait, no... It's the opposite. When I click preview, the animator is unchecked. But when I'm not previewing, it's checked. It's like its turning itself off, like those special keyframes do, except this animation should not have one of those. I made it from scratch and didn't use the inventory system on any objects around it and even if I had it doesn't edit pre-exisitng animations.
Hm, well on second thought, it seems the animator is always disabled when previewing an animation. So I guess that's not where my problem is arising from.
Anyway, back on topic... One copy of my avatar animates properly when I hit play. The LEDs scroll as intended, with material changes. (Yeah I know there are other ways of doing this but I needed frame perfect sync with audio and this seemed the easiest way to achieve that.) It doesn't work in game of course (well it may work, I can hear the beeps and the sound file isn't looped, so the animation must be playing but the material changes aren't happening), but it works in the game window. Then, if I duplicate that avatar and hide the original, and hit play again... nothing. No animation. If I click on the prop and hit play on its timeline, it animates just fine of course.
Okay, so I just did the gesture test, enabling one of the objects that was refusing to animate constantly while I have my gun out, and lo and behold, it begins animating as it's supposed to. But as I mentioned before, the animator on this particular prop seemed to have been running, just not changing materials as requested, because when I enabled beeping with my inventory system, the beeps were being produced but the LED animation that went with them, was not.
I suspect what may be going on is VRChat is overriding the material changes except when a gesture triggers them, but any old gesture won't do it has to be one which unhides the object which the animator is on. I have no idea how or why this is.
Emotes which animate materials on these same objects work just fine btw.
Of course even if that's the case that VRChat is somehow overriding the material changes, why would copies of my avatar also fail to animate these objects in Unity when I hit play... ?
Hm, interesting. If I enter play mode and then uncheck and re-check the animator on the object while in play mode, the object begins animating.
Note however that the animator is checked by default in play mode. So it's not getting unchecked somehow the moment I enter play mode.
More weirdness... So not only can I hear the beeping that results from the animation playing as it should (minus the material changes) when I press play, but I can also see the audio source being toggled on and off, and replacing the sound with a longer one, it's clearly restarting over and over again once a second as it should, rather than say, staying on constantly in a loop. So my beep definitely isn't beeping at a constant rate cause the audio was looped for some reason. It's being restarted like it is supposed to be. But this just raises more questions. Why are animated material changes and only material changes broken?
Well I give up on the material changes. I guess I'm just gonna have to duplicate all my LED meshes and make lit versions that are slightly larger to cover the unlit ones, and redo my animations.
Oh my god, I went to all the trouble to change my animated LEDs over from material changes to a system where I make lit versions visible instead, and while this was more reliable within Unity itself, the animations still do not run continuously and automatically in the game!
I mean I can hear constant beeping indicating the audio source is being toggled...
But the lit and unlit versions aren't switching?
Correct.
In Unity pressing play they animate just fine. And I see them being turned on and off.
now I haven't tested with this specific setup, but last time, hiding the object and unhiding it with a gesture made the animation begin to play properly.
I assumed that the materials were the issue since they were being finicky in Unity as well, but I guess not.
But my assumption is that it could be a weird quirk with how things are loaded into the client
Do you have an alt account or have someone who can tell you what they see from your avatar? I'm curious if there's any changes between what they see and what you see
Just checked, they can't see it either.
Hmm
Well I guess I can try a temporary fix of using the animation that turns on the beeping with the inventory system to hide and re-show the helmet and chest sensor which should make those animations begin running... Then I can disable the audio after with another emote but those animations will keep running, assuming this works.
That could work then
Assuming that the temporary fix works again and again on repeat
Well, that didn't work... I'm not sure why. The only thing I can figure is maybe the main avatar's animator is overriding the state changes, but the same avatar has a tail wag animation which plays just fine. Of course that is animating a bone position not the visibility.
I'm wondering if that has something to do with it
But I've seen plenty of hand-based animations and those use visibility right?
Yes, but they are triggered with gestures. And if I enable these with a gesture, they animate. So there may be something special about gestures.
That could very well be
I'm trying to think about visibility in animations I've seen
So just to be extra sure the animation is in fact running, I edited the animation to make the object I'm trying to animate rotate 180 degrees. The result, it rotates 180 degrees over and over again just as expected. So it's only setting the LEDs active, or adjusting their materials, which does not work.
@thorn spire right click -> reimport your shader to fix right eye not being stereo. Check console for errors
what animations does one need to make for a generic rigged model?
All of them 
@mental narwhal sorry for the ping, but with the LOD change in build 2019.3 have the settings for VRHigh/Low etc changed at all? Some folks I talk to are seeing unusual behavior with lighting and I believe it's to do with some aspects of the default quality settings misbehaving compared to the visual elements in the unity inspector, which default to desktop ultra.
I have a simple quality of life suggestion: With the import of the VRCSDK, set the unity project's quality settings to match those used in VRC so some of those inconsistencies go away.
I noticed those pins were made back in 2017
To tack onto that, I'm also curious about the ones that Android is using!
The base settings for LODBias stayed unchanged in that update. The LOD changes were to make the runtime LODBias compensate for the difference in FoV between the desktop camera's FoV and the much larger VR FoV. So it's the same for desktop still. This script is effectively what they're doing: https://gist.github.com/Merlin-san/429d6d64b39140a44fa411baf7e7d92a
Other than that I think they changed the anisotropic textures setting from Forced On to Per Texture in the Unity 2018 update.
The base settings for LODBias stayed unchanged in that update. The LOD changes were to make the runtime LODBias compensate for the difference in FoV between the desktop camera's FoV and the much larger VR FoV. So it's the same for desktop still. This script is effectively what they're doing: https://gist.github.com/Merlin-san/429d6d64b39140a44fa411baf7e7d92a
Other than that I think they changed the anisotropic textures setting from
Forced OntoPer Texturein the Unity 2018 update.
Thanks for that Merlin - I think we could get some benefit from exposing more of that in the game options or something and for now I've been suggesting to people to literally override it in gpu settings panel when they have trouble.
It could use a good look though, because the things that actually cause performance issues could be reduced somewhat if a player was okay with it, something like a background task that optionally does a lossy texture resize when you load things, or texture quality settings (not sure how that would work with people using custom import settings, but), turning AA off or adjusting anti-aliasing, disabling soft particles (since they potentially do a depth pass in camera in the forward renderer), real-time reflection probes, or being able to manually set soft/hard particles or the raycast budget, number of cascades or shadow distance. I know some of this is available in vrlow, but texture streaming and memory budget of all kinds are unknowns right now and not everyone is aware enough of the setpasscall impact to put toggles up in a world.
Are you aware of a way to see what they are exactly if we don't get an answer on that @split hull
because I couldn't find one
It would be nice to get an update on the settings. I don't think there is an easy way to see the settings they use, the settings file is probably compressed in the game's resources files
They are looking at adding more control over quality settings in the settings menu when the new UI comes around
noice.
looking at it pretty generally the biggest impacts right now on the gpu I can see are material interactions with lighting in various worlds and Vram
cpu got way better with the last update.
that's completely ignoring the things you can do with udon of course
I wonder if texture streaming and lightmap streaming would even work
vrchat breaks the mould in a lot of ways
Yeah CPU usage is being improved, there are some other changes that VRC is testing that could help more on CPU too
for sure. I'll keep on those CBTs whenever I can
it's disabled in VRC atm, the default system for streaming is bad for VRC imo
it puts both non-streaming textures and streaming textures in the same budget
and gives priority to non-streaming textures
then evicts higher quality mips from the streaming textures to fall in budget
which means that if you're in a world that eats a lot of VRAM, suddenly all the avatar textures are going to be blurry
doesn't surprise me, most middle case situations in standalone games that would make sense, same with older things like prioritizing static batching over gpu instanced batching even if one could be potentially faster. I guess it's on my mind a lot lately because vrchat is very, very firmly starting to breakout run in popularity and I want people to have a good time.
the default memory budget is 512 for texture streaming which is probably pretty low in general for most people
I think they would need a world budget and an avatar budget that are separate. But that involves more than just ticking a check box for VRC, and you'd probably want worlds to be able to control the world budget
GPUs need more vram by default too, 4GB for low-mid end GPU's is just too low when the OS and other applications can eat 2GB of that right off the bat. Despite that I still have worlds that are 500MB downloads and decompress to probably >1.5GB vram that work fine on lower end cards
scriptable render pipeline plox (that's not really possible of course but yeah)
maybe i'm asking in the wrong channel moves
Not sure where to post my question, guess I'll post it here
Has anyone tried to use TMP font asset generation with Japanese/Chinese/Korean font before? I keep getting this same error for .ttf and .otf files. I followed guides but I'm getting this error.
@eternal mantle Maybe Invalid_File_Name is hinting at a directory name it doesn't like. What happens if you put the fonts into simple ascii folder names.
Do any of the broken fonts have a permissive license or place to download them
Seems like there is a collider attached, meaning that you are probably meant to add velocity to the whole hierarchy
So you can either use physics or looping root motion
Looping root motion is easier imo
has a more regular position change than physics since that varies more with the client
I used a different font that seemed to work but seems that certain fonts gives me that error. And I have tried changing the font file to english and still did the same thing.
Also another question, is 3D Text/ UI Text better performance than TMP?
@cloud meteor
@eternal mantle Noto San JP from Google has worked for me in TMP. https://fonts.google.com/specimen/Noto+Sans+JP?selection.family=Noto+Sans+JP:wght@500&sidebar.open
We use the google NoTofu CJK font as well for TMP in the game I work on (mobile) and it works well.
Do you intend to use a bitmap font or auto-generated?
If you know the symbols you are going to need beforehand, you can extract the IDs for all those letters and then create a bitmap font containing only those symbols. Since all work is done at editor time, the performance and memory gain is quite substantial.
About 3DText / UIText being better performance than TMP ... it depends a lot.
I honestly don't understand why VRC is limited to UI Text in scripting, as UI text placed in scenes through multiple canvases ramp up the drawcalls.. 😐
Does anyone know if ScriptableObjects are supported? I'm assuming not since MonoBehaviours are off the table.
does Vrchat sdk has their own languace
@slim pollen the basic framework is written in C#
But utilized in a way that fits VRChat’s udon system for SDK3
so basically its C#
Yes
Howdy all. I've been trying to get the Leapmotion+ to work with varying success. Any advice on how to switch "grip input profiles" from vrchat to default? It changes automatically on game startup, the vrchat profile lacks a trackpad
Thanks, and here's a link to the Github - https://github.com/SDraw/driver_leap
does anyone know if there is a way to do audioSource.PlayOneShot() on an avatar?
no ?
@warm niche if this is for avatars you can’t use world triggers or coding to make it happen. You’d use custom override gestures and animations to enable/disable sounds.
No.
Is there a way for UI Text to not appear behind objects? I see it where ever I am, even behind walls.
It's behaving like 3D Text.... Bad UI Text, badddd.
https://gyazo.com/d73b389e02c9403bd04f8ba18dcd3f22