#development-advanced

1 messages · Page 30 of 1

languid lily
#

I plan on making a maze. Going to be, big to say the least like more than 20 rooms of decent size. Thinking having the rooms load and unload locally with player may help performance.

odd fable
#

uh oh @mental narwhal's going to start teaching us the ways of our lord and saviour Monad and how he can transform one state into another safely and purely

#

sorry I worked with someone who really really really liked Haskell and talked about it a lot 😛

stiff lily
#

Is there a way to remove keyframes on fbx export so that blender doesn't fall asleep while eating my CPU for 30 minutes ?

odd fable
#

I suppose turning off Baked Animation in the export options is not what you're looking for?

stiff lily
#

Sadly not since i'm doing this specifically for an animation

odd fable
#

so you'd like to keep some keyframes and remove others?

stiff lily
#

I'm also not sure why it has an issue with certain animations but not others, they're the same length

#

Yeah, keep 25 keyframes out of 1600

odd fable
#

I think you'd need a script for that, maybe one exists though?

stiff lily
#

@odd fable Ok, what i had to do was select all my keyframes in pose mode then "bake action", it removed all the unnecessary keyframes 👌

odd fable
#

nice!

#

though it's destructive right? was hoping for a non-destructive way

stiff lily
#

It's very destructive 😄

#

Disabling NLA Strips and All Actions seems to be necessary too

#

Maybe by disabling both of those the keyframes don't need to be deleted

warm niche
#

is it possible to get the Limb IK script from Final IK working in game? Seems to work fine in Unity and it's a whitelisted script, but doesn't appear to work at all in the game itself

#

trying to use it on an avatar

drifting egret
#

Yes, but you need the execution order script as well

warm niche
#

thanks, that worked

rough sleet
#

I'm happy to see people are actually making use of that guide.

drifting egret
#

I think quite a few Final IK users are using it, they just don't participate on that site much

warm niche
#

do you have some more example of what you can do with that ?

drifting egret
#

Yes, I'm about to post one actually. I'm having some issues

#

So, I'm trying to make a decent Yoyo using Final IK.

#

I'm using the CCDIK Component, and I added every bone in the yoyo string to the list (and the yoyo itself).

#

As you can see, the Yoyo spazzes out quite a bit when moving up/down. Is there a way to prevent that? I want it to "roll up" smoothly

#

The gfycat I posted should show the issue

#

Any ideas?

#

I tried rotation limits on the final yoyo bone, that didn't seem to work.

#

FABRIK seems to have similar jitter issues, although slightly less so. But then the string doesn't even roll up, it just hangs.

#

I don't really see any other components that I could be using either

hybrid raft
#

Are you trying to build a physics animated YoYo?

drifting egret
#

Sort of. In the end I'm just gonna animate the end part of the yoyo (or animate a game object that the IK script has as target transform)

#

I don't even need full physics or anything

#

In the end, it needs to look like a basic looping trick, is what I'm going for.

hybrid raft
#

If you are going to be animating it manually I would just use shapekeys instead

drifting egret
#

But I kinda want to do more with it, stuff that I'm probably gonna need an IK system for

hybrid raft
#

Can you give an example?

drifting egret
#

I want to easily be able to incorporate other yoyo tricks once I get this to work

#

Animating it all by hand would be a lot of work

#

I just wanted to get the IK stuff working

#

FABRIK makes the string slack, which is neat in itself, but not what I want to start out with

near bronze
#

Maellon might be onto something, shape keys sound like a good option. Treat them like keyframes in an animation, then you won't have to deal with bones and everything, you can work straight on the vertices

hybrid raft
#

Well if he wants cool tricks I'd honestly just animate everything manually with bones. Stretch and shrink bones with the Yoyo instead of coiling it because no one will be able to notice the difference anyway. When you need to wrap the string around a finger for a trick, place the finger at one of your bone joints and bend the bone. Of course you'd still have to animate everything by hand. I don't know enough about Final IK to understand how it could help you animate a yoyo

near bronze
#

I would check out dynamic bones to see if they'd work too. And you can have them lock to a position with inverse colliders

drifting pelican
#

Hello! Does anyone know if it would be possible to make a light on an avatar become brighter /darker depending on if im talking or not

grand socket
#

@drifting pelican you could have a mesh behind said light that would pop out when you talk and that mesh could be painted brighter or have some self illumination

drifting pelican
#

Thats a good idea, i'll have to play around with that

robust yarrow
#

are you trying to use playmaker?

zinc shell
#

Yeah

robust yarrow
#

thats why

#

playmaker is not enabled

zinc shell
#

Slaps head

robust yarrow
#

its in closed beta testing 😛

#

soon (tm)

verbal plume
#

I need help with making world objects on my avatar

autumn hatch
#

Well, how are you achieving that effect in the editor?

verbal plume
#

by moving the aramture

#

but the problem is that avatar is moving by movement of a main game object of it

#

and when it does it moves the spheres with it

#

and it kills the effect

#

is there a way to disable that synchronization between position of parent and child?

#

Or if you know any other way to make the spheres lag behind me i would love to hear your idea @autumn hatch

autumn hatch
#

Sadly I don't. The only idea I have is maybe somehow setting up a "tail" and playing around with dynamic bones?

verbal plume
#

dynamic bones are not what i'm after

#

they don't give the objects such freedom

near bronze
#

I'd there a way to make dynamic bones stretch? Because that would do it

odd fable
#

particle systems

#

for that particular thing maybe some kind of rigid body with a high mass/drag?

#

like, a spring joint or something maybe

near bronze
#

That's exactly what tach suggested above, read what I wrote to him

#

It would work for something on the hand, people do that all the time. But to lag behind your model itself when you move is a different issue

odd fable
#

ah I see

#

maybe you do have to resort to a particle system hack then

near bronze
#

Not sure how you'd do that without particle attractors

hybrid raft
#

If you parent the particle system to an object with a fixed joint on it does it work? That's how I get regular objects into world space with Avatars

near bronze
#

Yeah that's exactly how you do world particles. Problem is it wouldn't follow him

hybrid raft
#

Have an empty object tied to the world with an empty fixed joint. Have the spheres be children of the empty game object. And then do whatever he was doing to have them lag behind on the editor. Like a spring joint connecting the spheres to his chest or something

near bronze
#

That's exactly what tach suggested above, read what I wrote to him

hybrid raft
#

Woops sorry

#

Wait are you sure?

near bronze
#

Woops somehow I edited what i said to tach with what I said to you

#

I guess it's gone

hybrid raft
#

Lol

near bronze
#

/shrug

#

Aww that doesn't work on mobile

hybrid raft
#

What was the reason it doesn't work though. Since it was lost in the edit. If the object is staying behind when you move your avatar away, you should be able to get the follow to work the same as if it was on your hand.

near bronze
#

Because it still had to be inside the model, and unlike on the hand, when you move it moves the model and everything in it directly

hybrid raft
#

When you walk around the empty object should stay still even though it is inside the model because you put an empty fixed joint on it. I think what I'm not understanding is why adding a spring joint to the children of the empty object overwrites that behavior.

#

Is that just how it all works? Because I can place objects with avatar emotes and walk away from them and they will stay put just fine.

near bronze
#

Because you're leaving the connected body empty, which causes it to bascislly bug out and not know what to do. But he can't do that because he still wants it to follow him

odd fable
#

i was thinking a vertex shader hack might be possible in the particle system to simulate following the centroid

#

but looking now, unity_WorldToObject seems to be identity when rendering world space particle systems

cold minnow
#

Unity 2018.1 when

#

Unity 5 makes me want to jump off the window

#

@sterile cipher

#

God damn tupper upgrade unity soon

hearty lantern
#

Don't @ staff unless it is urgent mate

sharp burrow
#

Also, it has been given a response to it before, just ask someone who is active in the feature-request channel. You also find it on the canny

cold minnow
#

it's very urgent

#

unity 5 is a pile of shit compared to unity 2018.1

near bronze
#

woah really? I didn't know that

cold minnow
#

Just the Job System is worth the upgrade

#

and that's just 1 of the new features

sharp burrow
#

Well it is something they want to do. So it should happen some time in the future maybe.

cold minnow
#

Should be number 1 priority. Rooms with more than 25 players are hyperlaggy

sharp burrow
#

Majority of that lag isn’t just because of Unity itself thought.

cold minnow
#

It actually is

#

Unity 5 CPU computing relies too much in just 1 core

#

Unity 2018.1 has the Job System which allows hundreds of subprocesses to run at the same time

#

in pararell

odd fable
#

they'd still have to implement dynamic bones and final ik on the job system, which is up to the script developers (or vrc themselves), not unity

#

would be a nontrivial amount of work

#

but totally doable and should be done 😃

warm niche
#

nah man

#

need to limit camera for no-friend

#

effectively blocking all cool shader

#

also need to limit particle system

#

so fuck creators

#

and fuck your fun

#

also fuck you for playing vrchat because why not eh

#

/s

cold minnow
#

Dynamic Bones comes with source code

#

they could modify it to use the Job System, no need to wait for the original dev

warm niche
#

that looks pretty cool

warm niche
#

Yo anyone up

near bronze
#

sure

lilac cliff
#

Hello guys i have a question there is possible to play vr chat with a leap motion ?

near bronze
#

People have done it, yeah

lilac cliff
#

yes but integrate to the game because i dont have succeed to instal this driver

near bronze
#

you might have to contact the guy who made it

cold minnow
#

Is VRC_WebPanel able to play a twitch steam?

#

Or is HTML5 disabled?

sharp burrow
#

It works, but are a few requirements that are needed before it can work for you (meaning everyone that wants to view it needs to do it)

cold minnow
#

and the requieriments are?

foggy harbor
#

Is there a post, or thread anywhere regarding world objects for avatars?

warm niche
#

Anyone have any unity shaders for glowing effect?

drifting egret
#

Just use emission on any shader

#

Or use MK Glow

warm niche
#

whcih mk glow shader is best, like im trying to make my avatars eyes glow , somewhat a glowing blur as well.

hallow storm
#

I dont think emission is enough. I think you need bloom to really get the glow most people think of in their head

normal aurora
#

you get enough bloom for free from the headset

cold minnow
#

Judging by the metadata of the Playmaker dlls of the vrchat folder, I think they use the 1.8.5 version

drifting egret
#

Bloom only works in certain worlds

#

I don't know of a reliable way to get it working everywhere

near bronze
#

Hey everyone, I'm having some issue with the inherit velocity module on a particle system inside a rigidbody. What exactly does "velocity is being driven by rigidbody" mean? Because when it comes to the inherit velocity module, it's not working off the velocity of the rigidbody compared to the world, it's only working off the velocity of the particle system compared to the rigidbody. In other words, if I move the particle system it's fine, but not when moving the rigidbody. Is there any way to make it work when moving the rigidbody?

harsh nest
#

@near bronze is the rigidbody component and particle component on the same game object ?

urban tide
#

Has anyone had an issue with uploading to worlds where their objects won't appear, as if the materials didn't upload? Or some objects in their scene didn't upload at all? I've got kind of a large problem with one I'm trying to upload. This isn't my first or even my second world - so I'm not new to it, but definitely new to this issue.

near bronze
#

@harsh nest no they're not

harsh nest
#

@near bronze maybe you can add them both to same gameobject then ?

near bronze
#

no luck

#

it may work if it were just a regular rigidbody, but this one is connected by joint to another.

#

because world particles

#

as a note, what I want totally does work with IKFollowers, but those have their own issues which make them undesirable

drifting egret
#

Dumb question maybe, but maybe you can use subemitters to emit worldspace particles from a local particle system? @near bronze

#

You would spawn a dummy particle in local space, and then add a "Birth" subemitter that spawns the world particle

#

Not sure if this would work

near bronze
#

nah, doesn't work either

hearty lantern
#

You can totally emit world particles from a local particle system

#

I have always used it on death rather than birth

near bronze
#

Yeah you can, but they still don't inherit velocity like I need them to

normal aurora
#

so it turns out VRChat is removing all Final IK scripts. Proof: [Warning:6/11/2018 8:26:57 PM] The referenced script on this Behaviour (Game Object 'Constrained FABRIK Arm') is missing!

#

no idea whether it's the SDK or the runtime doing it though

#

I'm guessing it's the SDK, otherwise people's posable dolls would all break too

#

but I also haven't been to any of those worlds since the last update to check

drifting egret
#

I have, and I know the doll in avatar testing still works. I'm not home right now so I can't test if Final IK works if I put it in my own world

#

But I got it to do something on an avatar, it would be extremely strange to allow it on avatars but not worlds.

normal aurora
#

it could just be that certain scripts are allowed and others aren't, and all the ones I've tried over the past two days just aren't

drifting egret
#

My best guess is indeed version mismatches. If version mismatches were allowed, people could just modify Final IK to do literally anything they want.

normal aurora
#

or yes, version issues

drifting egret
#

Does the asset store allow getting older versions perhaps?

normal aurora
#

because I can't fetch older versions even if I wanted to, Unity just won't allow that

drifting egret
#

:/

normal aurora
#

so 1.7 is what I can get

#

unless they happen to have an archive of older ones on their web site or something

drifting egret
#

You might be able to email the devs of Final IK if you know the version that VRC actually uses

normal aurora
#

I wouldn't have a clue .. but I know someone here will

drifting egret
#

@normal aurora they're on version 1.6.1

#

A dev mentioned it earlier in this channel

#

Do you happen to know which version you're trying to use right now?

normal aurora
#

1.7, the current available one

#

digging through the rootmotion web site

#

or at this point, pirating it off anyone who has a copy seems fair

#

since I do own it

#

assuming the version is the issue, anyway. someone I'm asking in another window is suggesting it might just be settings

drifting egret
#

But if the component is literally missing then that's weird

#

Unless I'm misreading the error, and the FABRIK script is actually emitting the error itself

#

You said the FABRIK demo doesn't work, what if you just apply FABRIK yourself? Just add the FABRIK component to basically anything and give it a very basic configuration

#

Because demos usually have all kinds of extra scripts

normal aurora
#

ah, hmm... yeah, all the demos have scripts to limit rotation of joints too

#

(something I wish we could get working in avatars, cough)

#

lol, ok, I have no idea how to set up a demo like this without it looking bad when transformed, but this is at least enough to test whether it will even move

#

no movement in VRChat, works fine in Unity, same as every other test so far

#

I also see a note in the backlog about final IK and humanoid rigs not playing well together, which isn't great news for me either, but I think I've already shown that the initial problem I'm seeing isn't even that

drifting egret
#

Biped IK works perfectly well on humanoids in this game, it's just not recommended to use on avatars I think

#

Since VRC uses its own VR IK config

normal aurora
#

mm for actual player avatars I could understand that

#

I was trying it out for a posable doll because it's less work to set up than FBBIK and seems to bend limbs in more intuitive directions without needing extra targets

#

so it's like failed experiment #1

#

#2 is the FBBIK, #3 is the FBBIK with the straight fbx instead of with the avatar prefab

#

then beyond that it's mostly existing demos from Final IK which I copied into my test world one by one and just gave them a new target

#

I should have divided my limited weekend time to get something done on other sub-projects instead of burning it all trying to get this one thing to work

#

the video player automation stuff could totally be done now, with the new triggers, and I should be working on that

#

I think I'll at least cram some design work for that into the last 30 minutes I have of the day lol

sturdy frost
#

Has anyone here done good gun sound effects before, trying to figure out how to randomly trigger 3 sets of different sounds every 0.12 seconds

#

The sets include 4 "core" sounds, 4 "Far" sounds and 9 "near' sounds

near bronze
shell shard
#

Nice

manic cloud
#

phase why my gesture go slow vrpill

near bronze
#

Leave behind gestures, transcend to particle triggers

drifting egret
#

That is really cool

frozen pike
#

The future is now!

stiff lily
#

Couldn't the 3D start rotation solve the issue of particle always going in the same direction ?

drifting egret
#

You mean world mesh particles?

near bronze
#

Nah, the direction it's stuck going in is consistent with the world, not my hand

drifting egret
#

Probably not, that would just give it a predefined rotation

near bronze
#

it would just make it stuck going in a different direction, still not following the direction of my hand

drifting egret
#

The issue is that the rendered mesh completely ignores the particle's actual direction or rotation

#

There's a shader that aligns world mesh particles to their velocity, which is so far the only known solution to making them work

near bronze
#

He was talking about the direction of the subemitted particle in my video. It's a very, very similar issue to what you're talking about though

drifting egret
#

Ohhh, right

#

My bad, haha

#

I think they fixed all that in Unity 2017, so we're like one version behind getting a lot of issues fixed

near bronze
#

yeahhh

drifting egret
#

Ugh, Final IK isn't working in my world either

#

What's up with that? I thought Final IK was whitelisted?

#

It's literally supported on avatars as well

#

Why not worlds?

#

This says it's supported as well

drifting egret
#

I even tried an old 1.6.1 from an earlier project and it didn't work either

#

Scratch that, 1.6.1 does work. Hmm. Convoluted but ok

verbal plume
#

I'd love if somebody could help me learn shader forge

manic cloud
#

@verbal plume you use youtube for that, or any guides out there.. nobody's going to teach u shaderforge, as it has a lot of variables etc...

drifting egret
#

I found it to be very self-explanatory

warm niche
#

@drifting egret have you figured out how people do the global announcement when they have entered

drifting egret
#

Nope

warm niche
#

Where their name pops up on the screen

#

O

drifting egret
#

Oh

#

Then I have even less of an idea how it works lmao

warm niche
#

Lol

drifting egret
#

Maybe a camera set to point to their nametag

warm niche
#

No

#

Image

#

Custom image

#

I think its an overlay

stiff lily
#

Isn't that just a fullscreen shader with transparency ?

warm niche
#

I dont know

#

But it shows on everyones screen when they do it

#

I just dont know how its done

sharp burrow
#

It's what Ruuubick said.

drifting egret
#

I think the hardest part is getting the player's name, displaying it isn't too hard after that

#

It's just screenspace

sharp burrow
#

It's just a screenspace shader with a custom texture on it

warm niche
#

Is that easy to make in sforge?

#

@drifting egret they usually just put their name in as part of the texture

drifting egret
#

Ohh, I get it

#

I thought you meant like in a world

#

Like a world where you'd get a popup if someone new joined

warm niche
#

Like its usually an emote

#

Basically announcing that they are here

drifting egret
#

Yeah, then that's a whole lot easier

#

And also kinda egotistical lmao

warm niche
#

Lol

#

So do you just throw your texture onto a quad

#

Lol

drifting egret
#

It's a screenspace shader, I'm not exactly sure how they work just yet

warm niche
#

Oh i looked it up

warm niche
#

Screenspace texture apply to ui and player layer

near bronze
#

So the vrc_Triggers, are they just for worlds or can avatars do anything with them?

drifting egret
#

Just worlds

#

Avatars have no script functionality basically, we only get dynamic bone and final IK

near bronze
#

damn

warm niche
#

Hm

#

Shaderforge is hard

#

Theres no resources

warm niche
#

Whats the learning curve of shaderforge compared to blender unity

#

?

#

Hey has anyone messed with the new oscButtonIn sdk function yet? Does it only take single button osc data or can it use all osc data?

warm niche
#

Anyone know if i can 360 stream through vr

#

On apps like vrchat, bigscreen etc

near bronze
#

Like a Livestream of 360 video?

#

Does any streaming platform even support that?

warm niche
#

Yea

#

Not sure if they do that is what im asking

#

And not just livestream 360, live stream 360 inside the vr app

#

So for example lets say me and a buddy are sitting at a table talking to one another in vrchat

#

I want to live 360 stream that

#

So make the vrchat live 360 streaming

near bronze
#

At the very least, it wouldn't be something built into the game. There might also be a way to capture 360 from steamvr, but it would be a mod/plugin if it exists or is possible at all And even then, it's unlikely that mod would stream itself, you'd have to pipe the video to something like OBS, which in turn would have to be modded to accept 360 video, if such a thing even exists

warm niche
#

hm

#

post effect

#

thats where i do screenspace right

warm niche
#

If it doesn't exist, it should

warm niche
#

Would this be the correct place to ask shader related questions?

#

yea

#

this is the shader chat

#

except i dont know how to do this

#

Awesome. I am trying to get this shader closed right, I need the whole ENDCG in there, but if I include it, I start getting unexpected tokens '}' and syntax error unexpected $end.

#

Without it, well it doesn't work because I have CGProgram shit in the shader

warm niche
#

Or I manage to fix the unexpected tokens and get 'frag' : frag not all control paths return a value

frozen wing
#

@warm niche your fragment function needs to return a fixed4/float4 depending on what you used.

near bronze
warm niche
#

I am really terrible w/ all these, been follow a heavy mix of guides, I used a fixed4, how exactly would I return something without exploding it? I haven't seen anything that covers it

#

Like

#

If I do return i.xxx, can I be sure it wont break anything?

frozen wing
#

@near bronze That looks like an old version of Unity. As far as I'm aware this is not a supported feature of the current particle systems. You can however get a second material field by activating the Trails component. If you need to randomise within a single particle system I would suggest looking at using a texture atlas in combination with the Texture Seet Animation component.

#

@warm niche things exploding would depend on your code. for the shader to compile at least, you need to return the expected fixed4.

near bronze
#

The effect I'm looking for is a sort of "outline" around my particles, but this outline has to be on a different render queue, set behind every particle not just surrounding each and ever one. Neither trails nor randoms would do that

#

Is there perhaps a way to have a shader put two different textures on two different render queues?

frozen wing
#

@near bronze yes that should be possible with a custom shader.

near bronze
#

oof I've never touched shaders and have no idea where to begin

frozen wing
#

if you search exactly what you just asked you can get examples of how to change the render queue and then all you probably need to do is run a pass for the initial particle and then a pass for the outline

warm niche
#

@near bronze pretty sure you can choose directly on the particle if he should be in front or behind other particles system

near bronze
#

Oh I can easily get the effect I want by just having multiple particle systems. But at this point, I'm trying to make a new effect to get away from an old effect for the sole reason that my old effect was absolutely terrible on performance. So just "moar particle systems" isn't exactly what I'm looking for

fossil mica
#

Not sure if this is the right place to ask this. In the VRC Home area there are markers on the table that let you draw in the air. I need to try and add this to one of my scenes. Can anyone point me in the right direction to get me started?

#

I found this, but this seems to be set up on the avatar itself. Im just using a default avatar from VRC, so I dont have it in Unity. I tried to find an avatar in the unity app store to use, but was having a hell of a time trying to find something that was all set up properly so I gave up on it. https://www.youtube.com/watch?v=zLI5mxCBnlk

autumn hatch
#

Don't remember where exactly but I think there is a community made pen prefab you can download and import to your scene on the fan community forums
https://vrcat.club/

#

Snail's marker pen is for avatars only AFAIK

fossil mica
#

Well all I really want to do is add a pen to my scene that people who are visiting can pick up and use. Thats why I was confused as to why that tutorial I posted involved the avatar. I found this. Is this what you were referring to? https://vrcat.club/threads/updated-noenoe-pen-prefabs.85/

autumn hatch
#

I think so yes

lean agate
#

@near bronze if you want to get into custom shaders I'd recommend following this guide: https://catlikecoding.com/unity/tutorials/rendering/ . Creating an outline effect for a 3d mesh shouldn't be too difficult, just look it up. Try first to get it working on a regular object and then on particles

warm niche
#

Can i implement cryptocurrency into my vrchat world

trail bridge
#

quick question, is there a way to restart non looping animations without enabling disabling the gameobject

shadow dock
#

I'm curious if anyone here has gotten the osc in vrchat working. im using oscwidgets as a base to try and find the problem. using osc data monitor it shows that an osc packet is coming through to my computer in port 9000 and at the address /button/1 with a float value of 1 when active and 0 when not active. in unity i set the VRC_oscbuttonin with the address /button/1 and the correct triggers below it but nothing happens when the osc button is pressed. anyone able to help?

warm niche
#

I need to know if a world will be allowed to be public if it has cryptocurrnecy in it

#

Can I add cryptocurrency

#

no where all players have wallets and can send money to players, exchanges and banks

#

Use it in the world

#

Besides the fact that is isn't possible, is it against the rules?

#

Will my world be allowed to go public

#

if I build it

#

I need a better answer than that, sorry not trying to be rude

#

Will be putting alot of time into dev

#

gotcha

#

I don't see him in here

#

also I can't dm any of the admins or vrchat team? Is this normal

#

If I can't dm him how to I get in touch

sand canyon
#

@warm niche read the TOS and see if what you are planning might fall under commercial stuff

#

For example you cannot make worlds that advertise a product

warm niche
#

@sand canyon TOS?

#

Not advertising products

sand canyon
#

Terms of service

warm niche
#

I just am making it where the players can exchange currency

#

access a bank, exchange, etc

sand canyon
final wigeon
#

@warm niche I'd suggest sending an email to hello@vrchat.com about it.

warm niche
#

@final wigeon ok thank you!

#

@sand canyon Thank you for the info as well

warm niche
#

So what does that mean

#

If I am not avertising any products or donations or anything and am strictly using for world function purposes

#

Can you tell tupper to dm me

#

it's definitely possible

#

I'm basically going to provide a way to link your wallet in world, and then when you press buttons you can essentially spend your currency.

#

You adjust a knob to determine how much you want to put in

#

once you press the button you confirm transaction

#

Yea I did already

near bronze
#

So are you talking about spending real world crypto or making a purely ingame currency that uses the crypto model?

warm niche
#

Spending real world crypto that is an ingame currency itself

near bronze
#

What are you hoping to have that would be worth it then?

warm niche
#

Can you reword that question, not sure I understand

near bronze
#

Why would people spend money on it

warm niche
#

To play other players

near bronze
#

Oh like betting?

warm niche
#

That's part of it

near bronze
#

ok that at least makes a little more sense.

warm niche
#

I'm excited to get it released, got some work to do though

#

just need the green light before I start fucking with the models in vrchat sdk

near bronze
#

I think your concerns are justified, you're just being shrugged off because you're not exactly explaining it.

warm niche
#

Phase do you code in C#?

near bronze
#

nah

drifting egret
#

How so?

#

@warm niche scripts get removed by the way

#

Which is why people say it isn't possible

#

You're limited to whitelisted assets and the trigger system

warm niche
#

lol

#

i feel like my moderation reports and crash logs go directly into the trash

#

20 days later the users i reported are still ingame spamming their crash guns all over the place

fierce python
#

Mhm, this is the world we live in, nothing truly happens to the bad guys but the good guys gets bans all over the place, and never gets a warning, just a straight up ban with almost no description, the e-mails associated with the account should at least get a description of what and how you got banned with an appeal ticket system to get reviewed by an person.

fossil mica
#

Is it possible to play a youtube video on a screen in unity, to be used in vr chat? In Unity I tried switching the video component to use a url, but the YT vid just wont play. It works only when I import an mp4 into the project.

harsh nest
#

@fossil mica is it possible you tried some old video with encoding that is not supported by the plugin?

fossil mica
#

@harsh nest Well they are youtube videos. Arent they all the same basically? I did try one that is very recent and it just wont play using the URL option in the video component. I have seen youtube players in the asset store that arent very old, so that tells me this feature isnt actually built into unity. Can anyone confirm that?

fossil mica
#

When I view my scene in VR chat in VR, there is something crazy happening where its not refreshing properly. Looks fine in desktop mode, but in VR there is crazy ghosting going on, cant see the skybox at all since the building im in just draws over it as you move your head around. Anyone know what could cause this in Unity? I tried 2 different headsets so its not that.

#

Sorry for all these messages. Just trying to get some things figured out. In the publish window in VRC, I see this error " room has very fast update rate". How do I fix this?

karmic hill
#

@fossil mica Did you try ingame? None of my videos play in unity but works ingame

fossil mica
#

@karmic hill Yes, in VRC the youtube video wont play.

warm niche
#

Is it possible to stream vrchat 360 ingame

stiff lily
#

Yes, but you need a specific avatar made for that purpose. Not sure how to make it though.

#

Also, is there a way to copy the Y transform position (during animation) of a parent to a child on two different meshes ?

near bronze
#

Oh damn I didn't even think about that, you might be right ruubick

#

Like a 360 degree camera in unity rendering on to a texture that your camera can point at

#

And then OBS might be able to take that and wrap it around to a 360 video

stiff lily
stable goblet
#

Ya really feels like that report abuse button does nothing hyperlul I pushed the button.....30 mins passes........No one.

normal aurora
#

got my time to verify that the older 1.6.1 version of final IK doesn't get stripped and lets me move objects around with IK properly

#

at this point I'm just dealing with weird inconsistencies, like how biped IK will properly bend an elbow without additional poking, but not a knee

#

but wow, for arms it's super handy, one target is enough for each side and you can do any movement you want

verbal plume
#

How would you guys make a game object be detatched from avatar for a while?

normal aurora
#

fixed joint attached to nothing probably

#

haven't ever done it myself though

drifting egret
#

Yep

#

You also need it to be inside an object that has an animation that resets the fixed joint object's to 0 position and rotation

#

Then disable this animation and enable the fixed joint object in a gesture

harsh nest
#

Or you can enable it with emote: Emote plays animation that enables Anmation Component that plays animation that enables the target GameObject and disables it self, you need to fiddle with animation in text editor to change the path to make it able to disable it self.

#

That way your GameObject will stay enabled after Emote is done playing and you didnt have to waste gestue slot

normal aurora
#

both FBBIK and Biped IK seem intent on only bending my knee at 90 degrees from the direction it actually bends

drifting egret
#

You mean the knee bends wrongly?

#

You need to bend the object's legs slightly in the scene

#

@normal aurora you need to "hint" at Final IK which way the leg bends by slightly bending it yourself. Just slightly. So that the cubes in the knees turn green and not red or yellow.

normal aurora
#

hmm

drifting egret
#

This isn't actually mentioned anywhere

#

It's in a random tutorial video by the guy who made Final IK

#

Very little documentation on the package honestly.

normal aurora
#

I can get one to green but the other is blue

#

and then one of the arms is naturally green without having done a thing, and the other is blue lol

#

the other odd thing I have is, if I don't add a bend target, legs don't bend at all, even though arms work fine without it

#

weird how it needs hand-holding only for legs

drifting egret
#

It tries to guess

normal aurora
#

even in blue state setting some angle at all seems to work fine

drifting egret
#

The real question is why it's not looking at the animator properties to figure it out for itself

normal aurora
#

yes, that.

drifting egret
#

¯_(ツ)_/¯

#

80 dollars woooo

#

But still, it's the best IK solution we have right now, and it works well. Just a tad inefficient.

normal aurora
#

I mean, it got real close to just working in one shot, which isn't too bad

#

the arms I haven't tweaked at all since setting a target. I can move the hand to any position with the arm at a sensible position

#

I have a nice hack to deal with setting a bend goal without actually making the player move a separate goal object, I'm parenting it to the foot target

#

it just 'feels' like moving someone's foot by holding the ankle

#

the leg orients with it

calm oar
#

I'm not sure if I am posting this in the right place, so if I am not, please let me know and I'll move it to the correct channel.

So I'm having this extremely odd issue that I wasn't having a week ago. Basically, whenever I have a group of 3 or more trying to join my map, it causes a ton of lag for the people already inside the world, sometimes even sending them back to SteamVR Home or flat out crashing the game. This is confusing me as a week ago this wasn't happening, and while I have made updates to the world, the only thing that has been a major addition was some particle pens.

I'm not sure why this is happening as I see no other worlds having this issue. Can someone help me figure out what is wrong?

molten wraith
#

is there a way to declare variables in a world? i'm trying to set a video player to play videos that have URLs with an incremental id at the end and not trying to 'hardcode' the playlist but have it load each next video on demand

#

just for proof of concept of something that will be more elaborate later

hybrid raft
#

You probably want to try messing with animation state machines @molten wraith https://docs.unity3d.com/Manual/AnimationStateMachines.html

You can set variables in VRC_Trigger with AnimationAdd and actions like that. You can "read" from variables by having the animation state machine turn objects in the world on and off which then trigger more VRC_Trigger events

#

Just reread what you wrote. I'm not sure if Animation State Machines can pass strings.

normal aurora
#

I'm still using an Animator as a state machine, but each node turns on a game object which sets that URL into the video player when it's enabled

#

it's just more work than it would be if we had some kind of real scripting 😉

#

I'm using it for an overcomplicated remote control so I was thinking of breaking sub-playlists down into sub-state machines

#

at the moment it's just a hairy mess but at least I'm not populating it manually

#

...anyway, I came here to ask something more esoteric 😉 if I put two or more vertex colour layers into my model, is accessing the second one just a matter of using a COLOR1 in the shader?

#

I'm (ab)using the vertex colour to store additional data and wondered whether I could also rid myself of my main albedo texture too

#

I know I could encode the two together into the first layer too...

warm niche
#

@normal aurora you can use the UV3 map to store two floats in every vertex extra too

molten wraith
#

ok thanks @hybrid raft and @normal aurora that at least gives me some ideas

#

the plan was to have some kind of web panel that i could queue up links to videos on, assign them ids as they are added, then use a redirect script on the host that takes the id and redirects to the relevant video source url

#

this way the video player could follow a standard base url, but increment ids to go to each next video

#

part of the issue was that the video player caches the redirect destination of videos so i can't even use a "current.php" script which would always redirect to the current video (as decided on the web panel) and tell the player to go 'next' and reload current.php again (since it already cached where the redirect first went)

#

if you reload the world it works but that's because the cache clears

#

i could actually solve the problem if there was a way to disable the caching of redirect destinations

#

but the only other bypass is some kind of querystring that changes/increments each time you hit 'next' to defeat caching

#

oh and you also can't make the playlist a ton of urls with different querystrings as the redirect locations are all resolved on world load but maybe some kind of animation state machine thing wouldn't resolve the url until the state is reached?

rough sleet
#

@warm niche @normal aurora UVs/texcoords are actually float4s but I'm pretty sure they're not imported and just get set to (0, 1). So you have to do it in the editor using C#, create an asset file, and replace the original mesh in the mesh renderer with the asset file.

#

I don't even know if any modeling software lets you export meshes with a four channel UV map nevermind Unity importing it.

warm niche
#

@rough sleet well there's people using them, I don't know anything about the specifics other than that this is a thing

rough sleet
#

It definitely works, I know some editor extensions use them. MegaSplat for example.

warm niche
#

there you go

rough sleet
#

But it's all in Unity, it edits the mesh UVs, saves the modified mesh to an asset, and then replaces the mesh in the mesh renderer.

warm niche
#

beats using vertex colors imho

rough sleet
#

I know that works, what I don't know is if you can do is set the other UV channels in Blender, Maya, etc. and have them get imported.

#

I suppose you could have a script combine multiple UV channels if you need more than two floats in UV3 and UV4.

warm niche
#

I think the guy who asked this knows his way around unity

rough sleet
#

Then the editor script solution will probably be fine

warm niche
#

just letting him know there's options

rough sleet
#

That's always good

warm niche
#

for avatars you can even use UV1 and UV2 aswell

rough sleet
#

I've been trying to figure out a good workflow for a shader that lets you use texture arrays to merge tiled materials.

#

Something convenient like getting all of the tiled materials in a scene, building a texture array, merging all of the tiled sub-meshes in each mesh, writing the texture array index, and the texture's scale and offset values into UV3 and UV4, and then writing it all out into an asset file seems like it might be manageable.

warm niche
#

depending on the amount of mats I'd do that atlassing by hand before I write a tool for it

magic sedge
#

Can the shader that aligns mesh particles with velocity be edited somehow to allow transparency? I just figured out how to get it working but transparency on the mesh particles is the only thing that I need.

normal aurora
#

editor scripts are definitely something I can mess with but the main thing is having some data channel that does get imported so that I can distinguish objects in the mesh from each other. I maybe guess I could bust it into sub-meshes for import and then join it in unity and add the metadata at that point. at a point it starts to be easier to generate the mesh in unity

#

current game of golf is trying to fix the logic I have to determine which side of the object is being looked through. it's off somehow in a way which is hard to figure out

#

if I can fix it, that's the end of using stencil for that 😉

full apex
#

Is there a way to do a complete avatar reset in game without changing avatars? I'm looking for a way to make it so my avatar is synced again with ppl who recently joined the world after me (using VRC Toggle Props)

drifting egret
#

That's an issue toggle props has

#

Other than switching, there is no way to fix it

#

You can change the animator so toggle props actually syncs properly

#

You either need to make a "reset" emote, or change the animator so the default state is always the same

full apex
#

yea that's what i tried, but it ether send my character to a loop of death or ignores it completely..

eternal mantle
#

Idk if this is the right place to ask this question but does anyone know how to get the npc name billboard to be above an object? Whenever I place VRC_NPC Spawn on an object, it always appear the object.

normal aurora
#

what's the highest shader model I can declare without cutting any supported platforms off from running the shader?

#

I usually use 3.0 but apparently I just exceeded the limit for texcoordn values

golden valley
#

doesn't list the number of interpolators after 3.0 unfortunately

normal aurora
#

4.0 has 32, I was reading on some other resource

#

I just hope that using 4.0 doesn't shut out someone with an ancient graphics card from seeing the result

#

if it were going to shut someone out then I could work around it

#

by I guess giving them a slower implementation. lol, adding insult to injury too

golden valley
#

you might also be able to combine some of the texcoords together

#

for example instead of

float2 uv : TEXCOORD0;
float3 screenPos : TEXCOORD1;
float depth : TEXCOORD3;

could be

float3 uvAndDepth : TEXCOORD0;
float3 screenPos : TEXCOORD1;
#

you just need to use i.uvAndDepth.xy for texture samples

#

and the .z for using the depth

#

might not be possible depending on what you are doing

normal aurora
#

I'm passing through the object position and viewDir so that I can hackily determine which face of a cube is being looked through without using a stencil

golden valley
#

and you could also merge that a bit further and do

float4 uvAndDepthSPx : TEXCOORD0;
float2 screenPosYZ : TEXCOORD1;

You'll see vertex streams for particle system do this but it's much more messy

#

you are hitting texcoord limit with just that?

normal aurora
#

well, I converted to a surface shader

golden valley
#

ah

normal aurora
#

so it's the texcoords used by that plus my extra two, is just slightly over I guess

#

I could compute it per-fragment too, it will just run slower

#

but it's a small prop it's being used on, maybe it wouldn't even be that bad

golden valley
#

you could change the amount of data the surface shader uses too

by default it's

struct SurfaceOutput
{
    fixed3 Albedo;  // diffuse color
    fixed3 Normal;  // tangent space normal, if written
    fixed3 Emission;
    half Specular;  // specular power in 0..1 range
    fixed Gloss;    // specular intensity
    fixed Alpha;    // alpha for transparencies
};
#

if you don't need some of those you could remove them

normal aurora
#

ah, this is true

#

currently I'm using SurfaceOutputStandard even... with standard lighting

#

because I had in the back of my mind the idea of using a metallic map

golden valley
#

SurfaceOutputStandard has half Occlusion; // occlusion (default 1) on top of SurfaceOutput

#

if you aren't ussing occlusion you could just change it to SurfaceOutput

#

oh and it has metalic/smoothness instead of specular

normal aurora
#

yeah. I do know how to convert metallic if I had to though

#

at the moment I'm just hoping I won't

#

my custom variables pose a problem for tessellation anyway

#

so for all I know, I might end up killing it anyway :/

#

I have some playing to do, to see whether I can hijack some other texcoords and pass it through

golden valley
#

yea i'm not sure how easy that is to do without editing the surface shader compiled code a bit

#

idk surface shaders are weird

normal aurora
#

yeah

golden valley
#

pretty much a black box that just outputs PBR lol

normal aurora
#

I started to like them because lighting causes me so much grief

golden valley
#

I would suggest starting with something like amplify or shader forge PBR base shaders

#

even if you don't use the node system you can modify the code fairly easily

#

you can do the same for surface I guess but it's quite large and there's a ton of #IFDEF stuff in there

#

confusing to follow

frozen pike
#

Anyone messed with playing midi files in vrchat?

#

Wanted to do like a midi jukebox

fossil mica
#

Anyone know what could cause this? Pretty simple scene brought in from Unity, acting all crazy in both Oculus and Vive headsets, but works fine in desktop mode. https://vimeo.com/275632954

#

Ah crap sorry the video is still processing.

frozen pike
#

Your link isn't working

#

Ah ok

fossil mica
#

Free acct on vimeo. No idea how long this takes.

near bronze
#

sounds like shaders though. Not every shader was designed for VR and if it does anything screenspace it'll probably need to be adapted

fossil mica
#

Once its processed ill let you know. Its so weird because it does like this wacky trailing effect where the skybox is seen. It like pulls the edges of the 3d object out and fills the sky with it.

near bronze
#

Ohh sounds like flat lit toon lite

#

is anything using that?

golden valley
#

I think that will happen if you have a shader that writes to depth but is also transparent. I've ran into this with some kinda combination like that before

fossil mica
#

I thought maybe something was up wit hthe skybox so I tried to change it and it didnt fix anything. I didnt build this scene, Im just trying to get it working ion VR Chat, but there doesnt seem to be anything unusual about it. Its literally just a pretty plain looking office with no roof. The edges of the walls just get dragged out when you look around. Youll see it in the vid when its up

golden valley
#

does it work fine in unity?

fossil mica
#

Yeah theres no issues in Unity. Its only in the headsets in VRC. It doesnt even do it in desktop mode in VRC.

golden valley
#

Do you have a reference camera set up? Perhaps you changed the "Clear Flags" to "Don't Clear"?

fossil mica
#

There is another camera in the scene. Should I delete that? Idk what you mean by clear flags and dont clear. Kinda new to this.

golden valley
#

if it's not setup as the reference camera in your scene descriptor it shouldn't matter

#

that's probably not the issue if the reference camera field is empty

#

clear flags is found in the inspector when you have a camera selected

#

it's not going to take effect in game unless that camera is set as the reference cam

#

but leaving the reference camera empty should use a default which shouldn't have incorrect settings so don't worry about it

#

I would try to disable all the objects in your world, add just a plane and upload and look in game and see if it still happens. If it does happen it's an issue with a shader on one of your objects

#

it happens on any place where you would be able to see the skybox, right?

#

would be nice is vimeo processed that video lol

fossil mica
#

Yes thats right, you cannot see the skybox AT ALL in it. So weird. but there is also this ghosting effect across the whole scene. Youll see if it when vimeo decides to process my video

golden valley
#

yea disable all the objects in the scene and upload with just a plane

#

it's probably going to happen still but it will narrow down the issue a bit

fossil mica
#

Alright but I cant actually try that until tomorrow since Im working from home and dont have the headsets here. I just wanted to see if people recognize whats happening in the vid.

golden valley
#

yea ill look at it when it processes but it probably won't tell me much if it's just anywhere on the skybox

fossil mica
#

Aside from the ghosting issue thats happening across the entire view, what sort of thing would cause the 3d objects to like smear across the skybox?

golden valley
#

i believe it's called the "hall of mirrors" effect

#

basically for some reason the color buffer isn't being cleared every frame

#

so either you have your clear flags set to don't clear or you have an object who is writing to depth but also transparent

#

basically saying "I'm taking up this space, but at the same time I also should show what's behind me because i'm transparent"

fossil mica
#

When you look at it, it doesnt look like anything is being cleared at all. It like just keeps doing it, layers on layers on layers.

golden valley
#

with nothing behind it

fossil mica
#

Ah vid says conversion starting soon now

golden valley
fossil mica
#

Yeah pretty similar

golden valley
#

I'd also check Window->Lighting->Settings and check the skybox material

#

it should be on default-skybox

#

or some other skybox material

fossil mica
#

Yeah I just have a skybox that I downloaded, but I also tried default and it still had the problem

golden valley
#

what is the shader of that skybox material though?

#

click the material and post an image of the inspector

#

well actually if default did it nvm

fossil mica
golden valley
#

Yea it's gotta be either an object's shader, clear flags on the camera, or that skybox. I don't know of any other things that could prevent the color buffer from being reset

#

is there a roof in that video?

#

like an object there?

fossil mica
#

No theres no roof, just the sky

#

Thats what I was saying, that effect is over the entire skybox

golden valley
#

also it might not happen in the scene view, but you should be able to enter play mode and move the camera around to see it

fossil mica
#

I cant actually move the camera when I hit play. Not sure why. Like I said I didnt built this scene. Im also seeing some error that says unknown mixed bake mode in lightmode... etc... not sure if that would have anything to do with this problem

fossil mica
#

clear flags is set to skybox. is that correct or should i change it?

drifting egret
#

Wait, you can't move the camera in play mode?

#

You don't have something taking control over the camera, right? Such as, say, a VR Runtime?

#

If you have a headset, try putting it on and see if it tries to display the game in there

golden valley
#

that's fine

fossil mica
#

@drifting egret Everything controls fine in VR. Thats not my problem. I was just mentioning I cant control it when I hit play since this was originally just set up for AR by a vendor, and Im now trying to get it into VRC but having some weird graphic issues

#

@drifting egret Everything controls fine in VR. Thats not my problem. I was just mentioning I cant control it when I hit play since this was originally just set up for AR by a vendor, and Im now trying to get it into VRC but having some weird graphic issues

azure chasm
#

got a small question about triggers -- i've got a door with a fairly long animation attached to it.
in terms of my network buffer type, would i want to unbuffer everything on the door except for the trigger that activates the end of the door's opening sequence (that disables the clips and toggles the open/close buttons. this would be a bufferonce) -- and then add an objectSync to the door object?

would that be the best way to handle late joining for this animated door instance? i'm trying to wrap my head around how this buffering thing works better.

latent hemlock
#

For shader dev, this is just a small thing, but how does a shader tell unity whether to render flat or round in the preview?

#

https://i.imgur.com/iniIbaC.png I made the preview pane bigger in the bottom right, usually this is a sphere on a material but on mine it's flat, also shows in the project explorer. This doesn't affect the functionality of the shader though but I imagine people might get confused

harsh nest
latent hemlock
#

Right, ofc it’s the simple things that get me

#

It has “plane” written there

#

Thanks

echo bay
#

God damn 91 FPS on desktop and 25 on VR wtf

#

Isn't it just two render ? So shouldn't it be just cut in half at 45 at maximum ?

warm niche
#

@echo bay it's not just two renders, it needs to render the whole scene so do all the occlusion and transforms all over again too

echo bay
#

It does kill me I have a solid 45 fps on local testing VR

#

And 25 on VRChat

#

No reason

warm niche
#

if the world needs a ton of stuff like that doubling does not mean half 😐

#

hmm that sucks

echo bay
#

Ofc I do not use any sync component, just 0

warm niche
#

vrchat has so much overhead, it's really hard to predict performance sometimes

echo bay
#

Yeah but the world should render on the PC

#

Dunno 😄

rough sleet
#

@warm niche Single Pass Stereo should be avoiding the duplicated occlusion and transforms.

#

I'm not sure how much of the work it saves but it's quite a bit.

warm niche
#

I know but it's never half

#

desktop is just too different

rough sleet
#

Yeah, it's still more than desktop but less than the 2x of multi-pass stereo.

warm niche
#

oh yeah thank god 😄

rough sleet
#

There's another option in newer versions of Unity called Single Pass Stereo Instanced which is supposed to save more.

#

By using GPU instancing to draw both eyes together.

#

It requires shaders to support it which makes custom non-surface shaders more complicated but it might be worth the effort.

near bronze
#

Does anyone know how the presentation room's pens work? They're definitely something more than normal trails because of how you can erase just parts of them. Is it particles with trails drawn between them? Or just a script that's able to erase pieces of a normal trail

#

I tried particles that inherit velocity up until the next particle is emitted but it ends up causing a bad divide between each segmenthttps://i.imgur.com/OUOFHR8.png

#

And I also see there's a thing called ribbon mode for the particle trails module, which is exactly that, but that's not on this version of unity

drifting egret
#

It's a dev-owned map so there are almost certainly some scripts involved

#

Maybe you could look at how Noenoe pen prefabs does it

near bronze
#

is that the snail trail or something different?

drifting egret
#

No, it's a pen prefab for worlds

#

It's not quite as perfect as presentation room since it just spawns lots of little dots

near bronze
#

Oh yeah I've seen that

drifting egret
#

I'm not sure how the erasing part works, I think it does that by colliding with a certain layer

#

It's particles

#

If you use a trail on the particles, you could smooth it out

near bronze
#

Idk if it's what he used, but it would be easy to do an eraser with triggers since they work now

drifting egret
#

And still have it erase-able

near bronze
#

You're right, it's using an unused layer

#

Have you seen the video about particle triggers though? Cause damn

drifting egret
#

Yeah, I did

near bronze
#

Now then, is the separate layer thing something you'd even be able to do on avatars? Or do triggers make eraseable pens on avatars possible now?

drifting egret
#

Yeah, you can make separate collision layers

#

Or just use the ones provided by VRC, plenty of unused or reserved ones in there

rough sleet
#

Presentation room uses scripts, the NoeNoe pens are particles that die on collision.

covert oracle
#

Ive got a map im working on that has cubes that scale themselves on the y axis according to music (basically a visualizer) everything works when i hit play in the unity editor, but nothing moves when testing.

#

This is what it should look like in game

rough sleet
#

@covert oracle You can't use C# scripts in VRChat for security reasons. If you're using them then that's why it not working.

#

What you can do instead is pre-process the music into a video file with colours based on the scale you want and use a shader to offset the vertices based on that.

covert oracle
#

huh, c# scripts have worked on a few of my other maps

#

kk, thx

rough sleet
#

I should be clearer custom C# doesn't work

#

Only specific scripts that VRChat has included with the client can be used.

low peak
#

I can't get Cubed Paradox's shaders to work in Unity WebGL

warm niche
#

@low peak those are HLSL not GLSL/WebGL

mental narwhal
#

@covert oracle @rough sleet (non-whitelisted) C# scripts run in local tests but they are stripped out when uploaded. At least they used to work in local testing.

cloud hearth
#

yes C# scrips do work in local testing still but upon upload are removed
only scrips that could be used in worlds after upload would be ones already in client..

azure chasm
#

does objectSync affect a GameObject being active or not?

sand canyon
#

I’m not 100% positive but Object Sync I don’t think syncs active status. If you make a synced object inactive you should broadcast that AlwaysBufferOne.

#

But now I want to see what happens if the master deactivates a pickup locally and then someone else tries to push it around with physics.

shadow dock
#

@mental narwhal ill have to type it here since typing in #open-beta-discussion is turned off. that's what i finally came to realize I've not worked with networking before and didn't realize two programs cant use the same port. I've gotten it to work since i found that out.

normal aurora
#

okay, so apparently I’m not the only person to have thought of abusing video and a shader to carry additional data

vapid prairie
#

Is there a limit to how many polygons an avatar can have in vrchat?

warm niche
#

yeah 19'999.

vapid prairie
#

Is there a reason? I feel like it could run higher settings

warm niche
#

that limit was put there when they wrongly assumed that polys was the primary reason for lag

#

and they still didnt bother to change it

vapid prairie
#

Interesting. I'd like to see some higher end avatars. Does it similarly apply to worlds as well?

warm niche
#

no clue about world

#

but it's pretty easy to bypass the poly limit to be honest

#

and a lot of people are probably doing it

vapid prairie
#

Oh thank god

warm niche
#

probably yeah

#

btw, unity will split meshes after 65k polys

#

pretty sure that most people still keep the poly count under 65k

vapid prairie
#

Thats reasonable

#

The biggest thing I'm trying to figure out is do these "lo-rez" worlds and avatars exist because of game limitations set by vrchat, or just either the lack of knowledge or ingenuity the public development community has.

#

Idk where the bar is set

drifting egret
#

The "lag-free" worlds exist because the performance in this game is getting worse and worse

#

Ironically, "lag-free box" is one of the laggiest worlds in existence

#

Because everyone is visible at once

#

And I'm pretty sure the lights aren't baked, or the ambient lighting isn't baked

#

And the player limit is very high on that world as well

vapid prairie
#

Sounds like a rendering problem

rough sleet
#

@drifting egret I blame the directional light shadows.

drifting egret
#

There's shadows in that world?

#

That also means the light isn't baked lmao

#

Or at least, there are realtime/mixed lights

crude schooner
#

yah shadows are to blame

rough sleet
#

Directional lights use four shadow cascades and render the depth buffer. Which is four shadow caster passes for every mesh in the world within 1500 units/metres plus a shadow caster pass for everything in your view frustrum.

#

There were shadows last time I was there.

#

It was close to when it was first uploaded.

vapid prairie
#

Shadows need to be better optimized as we create worlds in the Unity engine then

rough sleet
#

It isn't necessary to bake a directional light without shadows, the brightest directional light is included in the base pass so it doesn't use an add pass.

vapid prairie
#

We have some control of it?

rough sleet
#

@vapid prairie Baking lighting helps immensely.

#

Also the new HD Render Pipeline Unity is working on as part of the scriptable render pipelines work is much more efficient.

vapid prairie
#

I think the community needs access to higher end assets to push for a higher standard from vrchat

#

not that vrchat is already doing what they can but we can help

rough sleet
#

This isn't really a problem you can fix with assets

#

It's a limitation of Unity's current rendering pipeline

drifting egret
#

People need to be less dumb about making their worlds

#

And we need harsher restrictions on the SDK on material counts

#

Nobody needs more than 10 materials

#

Unfortunately the devs are dead set on keeping the poly limit without implementing limits that would actually matter

vapid prairie
#

Do community world build teams exist yet?

drifting egret
#

Yes

echo bay
#

I though you are wrong on your meterial count @drifting egret

#

I have a 15 worlds maze with beautifull panorama and a skybox for each of them. Just for the skybox it's already 1 per world = 15. So i'm above your limite even if every other world remain all pink untextured

rough sleet
#

He's referring to avatars only

echo bay
#

Oh, so yeah I do agree

vapid prairie
#

@drifting egret where might I find these teams?

rough sleet
#

Worlds are self-contained so they don't need restrictions on polys, materials, etc. like avatars do.

echo bay
#

I though that's fine to let people having any kind of material they want without limite

#

But I also never go on public worlds so... Only friend +

#

But when there is a friend + with 50 people, I just check the disable unfriend avatar and it's perfect

drifting egret
#

Yeah, I do mean for avatars

#

And I do not think it's fine for people to have unlimited materials at all

#

10 materials should be the absolute maximum IMO. It's not that hard to texture atlas.

#

And even 10 is generous as hell

#

But it'll be a huge improvement from all those 30 material avatars that people shit out in public avatar worlds

echo bay
#

I mean, texture atlas is fine, BUT, you cannot shadering a texture atlased

drifting egret
#

You cannot have separate shaders, correct

echo bay
#

Which is the problem, if you wanna paint your avatar in unity and not in blender

drifting egret
#

But you have room for 10 different materials

#

That is more than enough for anything you would ever want to do

#

Tbh the poly limit is much more restrictive than a potential material limit

#

Unfortunately, the devs have decided that "slapping limits on everything is not a solution", even though that's the first thing they jumped to regarding the poly limit and particle system limits.

#

Going through Blender/Maya/3DS Max is something that you have to do for models regardless

echo bay
#

Well I do agree with them for particle limite

#

I would be fine if we where not able to use particles at all on avatar

drifting egret
#

...

#

You would, maybe, but there's a lot of cool stuff you can do with them

#

That isn't just earrape memes or billboard spam

echo bay
#

But I do not do atlassing myself. I have like 40 material slot in unity, and I end up putting multiple time the same shader to have finally no more than 10 differents materials

drifting egret
#

Material slots is what matters though

#

You're incurring 40 draw calls per avatar which is insane

echo bay
#

But it's a pain in the ass to do it in blender because you must know exactly what you want your avatar to look like

drifting egret
#

Even if 10 slots share the same material, that's 10 draw calls

#

At least use Combine same materials or whatever

echo bay
#

Is there a combine same material option in unity ?

drifting egret
#

Nope

echo bay
#

Well that's the problem

drifting egret
#

Tbh people like you are the reason why I have to block avatars in most public instances

#

Because you're too lazy to optimize

echo bay
#

Most of people have good knowledge on 3D tools, or In unity, both are more rare

#

I never go to public instances

drifting egret
#

It's not hard to combine materials or atlas

echo bay
#

So it's fine

drifting egret
#

You literally have to load up the model and press "combine"

echo bay
#

Yeah but it would mean do the texturing first on unity to know what you want it to look like, then going back to blender to merge everything, and going again to unity to redo the texturing stuff

drifting egret
#

And I'm not talking about you in particular, I'm talking about people with your mentality who do visit publics

#

Yes, and?

#

It's almost as if optimization takes time or something

#

Even that shouldn't take you 5 minutes

#

Once you know how you want the shaders laid out

echo bay
#

And whenever you want to reuse the model again with another combination, you must do it again

#

Well i'll get into it someday for sure

golden valley
#

I would suggest saving a copy of your avatar before atlasing and this really shouldn't be an issue if you want to change shaders around

echo bay
#

But I mean that's so heavy to do and learn that it's a curve which most of people will never go through

#

It's not because you do know how it work that it's isn't painfull to learn it. When you don't know how to do it, you just don't do it. Most of people think this way, which is stupid but it's how things are

#

But I really though that those material and drawcall are not really a big problem in front of the guys spamming particles on their avatars

warm niche
#

you talking about optimization and reducing the number of material ?

drifting egret
#

It is

#

Materials are a bigger issue than someone using a few billboard particles

warm niche
#

cuz there is literally a button that combine the material for you

#

same for atlasing

#

you don't even need to learn it if you are that lazy

echo bay
#

The problem is that people do not use few billboard optimised particles lmao

drifting egret
#

He doesn't wanna use it because he wants to use like 20 different shaders and he's too lazy to figure it out beforehand

golden valley
#

materials are probably a larger issue as you constantly have those active where particle systems are only active when you are gesturing

drifting egret
#

And besides, people with high drawcalls are more common than spammy particles

#

You can always ask people to stop spamming particles, you can't tell people "hey, mind atlasing your model in the next 5 seconds?"

golden valley
#

lol

drifting egret
#

You're making excuses because you're lazy and don't care a single bit about performance

echo bay
#

I totally do am lazy, but you must admit that if that's a problem that's because it's the same for a majority of peoples

drifting egret
#

Yeah, a majority of people are too lazy to optimize, or literally don't know why they should.

#

That doesn't mean you're not still part of the problem that is slowly killing the game for a large portion of the userbase

echo bay
#

And saying "Hey, atlas" do not work, as you can see, because we do not know how to do it.
So the best solution would be to make a script into unity to merge materials directly into the SDK

drifting egret
#

You said it yourself, you know how to do it

#

You just don't want to because then you need to think about how you're gonna lay things out

#

I can forgive the people who have 10 materials and are like "nah, I don't feel like atlasing"

#

But if you have 40 materials, you're being a dick

golden valley
#

there's really no reason to do so when there's a blender plugin setup to do all the work for you

warm niche
#

there is literally a button that allow you to atlas in CATS.

golden valley
#

unity isn't a modeling application

#

not to say it coudn't be made, but it's not easy to write scripts like that

echo bay
#

Peoples with 10 materials are already atlassed

#

Default mmd models come with 50 slots

drifting egret
#

That's not atlasing

#

That's just combining same materials

warm niche
#

which would be good enough if everyone did it already

drifting egret
#

And besides, not every model is MMD either

#

And on top of that, I have MMD models with only 8 materials

echo bay
#

As we said, we are talking about majority

drifting egret
#

Maybe you shouldn't be using the same shitty overused Deviantart bases that literally every person on Earth is using

#

Not that the bases are the issue

echo bay
#

It is useless to be angry after me specificly. I am there talking to you so you can mind the majority material abusers point of view and to find a solution together

drifting egret
#

There is no "compromise" here

#

They either atlas or they lag people

#

That's not compromise, that's just a fact

echo bay
#

They won't atlas just because you tell them too

#

So there is a problem

drifting egret
#

Well you certainly didn't, but I'm pretty sure that's a you problem

echo bay
#

If that's why we are talking about this

drifting egret
#

I originally advocated for a 10 material limit

#

That's what started this discussion to begin with

#

People would optimize and atlas if the SDK forced them to

manic cloud
#

I can just say that I'm too lazy to do anything more after 20k (priorities lul), generally it goes to merging images of same size and resizing UVs, thankfully I hang out in <5-8 people rooms, tho I always auto-atlas if I use extra models for animation purposes

#

people would bypass sdk anyway if enforced

drifting egret
#

Nah

manic cloud
#

you need to put reasonable bounds and then ban people who do bypass

drifting egret
#

The vast majority of people decimate their models

#

The idea is that less savvy people are still forced to adhere to optimization limits

#

The people savvy enough to bypass the SDK limits will usually keep their materials to a minimum anyway

manic cloud
#

they don't

drifting egret
#

You would be surprised how many skilled avatar makers I meet that still decimate to under 20k

#

Including you

manic cloud
#

yea.. mine are all under 20k, even if it's funny LOL

drifting egret
#

Why would the material limit be any different? Especially since atlasing is easier and takes less time

#

And doesn't sacrifice quality

#

If anything, people should be putting their efforts into atlasing instead of decimating to sub 20k

manic cloud
#

that's where i agree

echo bay
#

It's easy to decimate cause you can do it from unity

drifting egret
#

Wut

manic cloud
#

no lol

warm niche
#

puke

echo bay
#

But atlassing cannot be done by unity

manic cloud
#

decimate = easy omegalul

drifting egret
#

@echo bay do you have multiple meshes?

echo bay
#

Just one body

drifting egret
#

Hmm

#

I have never heard of Unity decimating before tbh

echo bay
#

And you decimate it with a simple asset

drifting egret
#

But literally nobody does that

manic cloud
#

there is mantis LOD

echo bay
#

That's it

#

Mantis LOD

#

A click and done

drifting egret
#

Doesn't that break shape keys?

manic cloud
#

no

echo bay
#

I didn't for me

manic cloud
#

but it's shit

drifting egret
#

That's interesting then

echo bay
#

it*

warm niche
#

it decimate everything

drifting egret
#

But it seems like the results are questionable

warm niche
#

hand and face included

#

absolute garbage

drifting egret
#

You're not supposed to use it for models

#

You need to use it for LOD's

manic cloud
#

every decimation that is not manual is almost always inferior if done by hand

drifting egret
#

Either way, you're literally the only person with hangups about "but I wanna do everything in Unity!"

manic cloud
#

but all I can say is that enforce mat/mesh cap and start banning people, then we gucci

drifting egret
#

Fixing the model up in a 3D modeling program is something you have to do regardless

#

For the bone structure too

#

Yep

echo bay
#

Yeah but you see, even me I decimate my models because I can do it from unity.
That's why I though that a big amount of people would the altassing too if it was also possible from unity.

drifting egret
#

If they actually start banning people for the poly limit, they should raise the limit to 65k imo

#

It makes no difference in performance and allows much better quality models

echo bay
#

Isn't 65.000 a max for unity whatever ?

drifting egret
#

For one mesh yes

#

Otherwise it splits

#

65535

#

Maybe one higher or lower

golden valley
#

2^16 -1, so you are correct

echo bay
#

Yeah 20K remain fine still

drifting egret
#

20k is a pointless limit

#

Especially once they start limiting materials

#

It makes literally no performance difference

#

It was implemented on a whim because the devs didn't know any better

#

Even Tupper wanted the limit raised

echo bay
#

Yeah but it's a one click button from unity, you do not have to change tool and import.export the whole thing

manic cloud
#

no, mantis LOD is SHIT for decimation

echo bay
#

Yeah but it do work

drifting egret
#

You're literally the only one who ever complained about having to do stuff in Blender

#

My question is

#

You desperately want 70 fucking different shaders for your materials

#

Yet you're fine with using Mantis for decimation

#

Where is the logic in that? Your model is gonna look shit anyway

golden valley
#

but it's flashy shit

#

lol

echo bay
#

I just do want to paint my model how I do want to paint it with my materials. And I and up with 10-15 differents one at max on the model

manic cloud
#

with 10 materials u can do anything 🤷

drifting egret
#

Yeah, but that's still 40 draw calls

echo bay
#

I don't know how to paint them in blender

drifting egret
#

It doesn't matter that it's only 10 materials in the end, what matters is slots

#

Then learn it?

echo bay
#

And I don't want to use another tool

drifting egret
#

You don't

echo bay
#

I disagree

drifting egret
#

And that's exactly the asshole behavior that only further justifies the material limit

cold minnow
#

Don't use too many materials, it isn't that hard to atlas

echo bay
#

Well, why everybody would have to learn how to manipulate X differents tools

manic cloud
#

oh shieet, if you think learning atlasing is time consuming, imagine how much time I have spent in blender to get my models to 20k and have them look basically the same as originals

drifting egret
#

You're already using Blender to convert the MMD model into a format suitable for Unity

#

You might as well press that extra button to combine the materials

#

Yep, retopo is pretty difficult

#

I wouldn't be able to properly do that myself

manic cloud
#

i don't do retopo, not needed for mmd models

echo bay
#

If the majority of people isn't doing it, that's we may find another solution that just telling them all to do it

manic cloud
#

they are low enough, unless it's extremely badly made clothing piece

cold minnow
#

why would anyone have to learn to optimize avatars in a terribly unoptimized game

#

that renders everything TWICE

golden valley
#

Renders everything twice?

cold minnow
#

Yes

#

One render for each eye

golden valley
#

oh i see

drifting egret
#

@echo bay we don't have to ask them nicely, that's the point

#

A material limit would solve this instantly

#

The vast majority of people would learn how to texture atlas and/or combine materials

#

Or at least atlas the less important bits separately, like atlas just the clothing

#

Tbh there are so many things I would change if I were a dev

manic cloud
#

learning how to atlas is not difficult, or just combine pictures + resize UVs, this is much better to do than put your avatar in Mantis LOD and it makes your avatar look like shit quality

echo bay
#

Would this tool do the stuff from unity ?

drifting egret
#

Custom animator controllers on humanoids, a material limit, dynamic bone limits

#

Dude, we're not arguing this again

#

Learn how to use multiple tools or fuck off, is what I'd say.

#

You're already using Blender to import the model

#

Unless you're one of those people who uses MMD4Mecanim which is even worse

manic cloud
#

I have more important topic to discuss then - name for my world and picture vrpill (is honestly the hardest thing to do )

echo bay
#

Hey, I were very nice with you, trying to arguing so you can get the point of view of this "vast majority of drawcall destroyers peoples because of materials" to find a solution together. You do not have to be mad at me

#

For most of peoples it's already a lot to learn how to use one tool. And since Unity is the one to use with the sdk they stay with it

#

So having a way to decimate material and poly from unity should be the best thing

#

Because you cannot get back into blender a .fbx imported

manic cloud
#

I'd argue that most people spend more time in blender than unity tho, unity gets touched only when u start getting into gestures/animations/particles

golden valley
#

you can

#

you'd just have to learn blender a bit

drifting egret
#

You can easily import .fbx files, I do that all the time

golden valley
#

but i don't think you are willing to do that

drifting egret
#

I think that's the root of the issue yeah

echo bay
#

Not import .fbx

#

Export .fbx

#

It isn't possible

golden valley
#

that's just false

drifting egret
#

You can import and export FBX files

#

I have no idea what in the hell you're saying

#

First of all, that site is shit, and second, I have imported plenty of models from there

#

You can import and export FBX files from Blender

#

You also can't mention that site by name here

#

Since they're shady af

autumn hatch
#

@echo bay Please don't mention that site by name on this discord, thanks.

echo bay
#

I'm sorry

manic cloud
#

only issue with importing fbx back to blender is that your stuff can be broken (bones that is)

drifting egret
#

It's not even an issue if you're porting the model yourself

#

Just open the blend file

#

People who download premade models aren't interested in fixing it up anyway

#

Once again, fixed with an SDK limit

#

And people would be encouraged to actually update to this new SDK if they also raised the poly limit at the same time

manic cloud
#

I can just wish to live to the day when it's actually that - decent limit on poly, mat/mesh cap and ban ppl who don't care about it

fallow ginkgo
#

maybe a 60k poly limit would at least suffice

#

unless you still run on a toaster

drifting egret
#

Nah, 60k is fine

manic cloud
#

and I'll agree any day that my 20k 18mat avatar is worse than 60k 5mat

sharp burrow
#

I still people should be able to go past it, but not be allowed to use it in public worlds/pedestals

drifting egret
#

Meh, I'm not a fan of that either

sharp burrow
#

Think*

fallow ginkgo
#

because Unity splices up meshes when its over 65k

sharp burrow
#

Visemes stops working before 65k from what I heard. Don’t quote me on it though

drifting egret
#

Yeah, that's because Unity automatically splits the mesh above 65k

manic cloud
#

they work, but u need to split head from body in blender

drifting egret
#

That too

#

But I'm not a fan of that, performance and lighting issues

#

Just keep the limit at 65k and it's gucci

#

There is a lot of breathing room at 65k

golden valley
#

Unity 2017.3 doesn't have that limit, so that may change in the future

sharp burrow
#

But then you have 2 draw calls just for the body and head no?

drifting egret
#

Yes

#

And that's even if you have the same material on both

#

2 meshes with 2 materials total is better than 20 materials on a single mesh, but it's still something that should be avoided. Besides, we have to draw the limit somewhere, right? I think 65k is very reasonable

#

We don't want people to run around with actually a million polys either

manic cloud
#

some1 imported a 1+million space station as avatar the other day from what I recall

echo bay
#

How do it has been known ? Does that crashed everybody ?

golden valley
#

i've seen it, didn't notice any lag

#

millions of polygons render just fine it's really draw calls that cause the largest issue

drifting egret
#

Yep, draw calls strain the CPU because the CPU has to tell the GPU what to draw every time, and then it has to wait while the GPU does that

fallow ginkgo
#

I mean unless you really still use a toaster

drifting egret
#

Dynamic bones are more expensive than you think too

fallow ginkgo
#

werent they unreliable as hell

drifting egret
#

You don't even need to have a toaster in order for a lot of draw calls to lag you

#

Especially in VR, and considering this game is single threaded

manic cloud
#

dynamic bones are big issue if u use assign loads of scripts and/or colliders

drifting egret
#

It's bone counts too actually

#

One script with 200 bones is laggy as hell

#

That's why you should merge weights on your dynamic bones

sharp burrow
#

A person I know got a lot of dynamic bones on her avatar and it’s not really noticeable unless you really look for it. She spent a lot of time tweaking the settings for them though

drifting egret
#

Bone size doesn't even matter, so make sure you thoroughly merge the hair bones too

manic cloud
#

y, but having good roots > bone amount

drifting egret
#

If you have long hair for example

golden valley
#

I've got a world with about ~3 million polygons of grass and it runs at 60-90 depending on your system. Meanwhile I pull out an avatar with like 3,000 materials and only 3,000 polygons and you'll lag like crazy

drifting egret
#

Eh, I don't know about that

#

Depends on what the extra overhead is for calling a new bone script as opposed to looping through another few rows of bones

#

@golden valley true lol

echo bay
#

It's also that you render only what you see on the camera. You don't see all your world at a time

#

But you do see all the avatar at a time

golden valley
#

If you go to the corner of the map you can see all the grass

#

but also VRChat culls players out of view too

#

so that's not entirely true

echo bay
#

I see

drifting egret
#

Yep