Normal

N

Normal

Join the community to ask questions about Normal and get answers from other members.

Join

🤝ask-a-question

💼jobs-and-opportunities

💾sample-code

🥂project-showcase

💭feature-request

✨normcore

💬chat

🚧wip-and-updates

Meta Avatar loads too far into the floor

On the Meta Avatar when the player is sitting they are too far into the floor but when they stand up they are at the right height. I need for the players to not sink into the floor when their avatar loads.

Unable to fully apply prefab changes because of RealtimeView

I have a prefab with a RealtimeView component in it that was added via RealtimeComponent. When I try to save changes to this prefab, it always marks the RealtimeView as dirty, so I can't save the prefab fully. Is there a way to save the prefab?

"Incrementing" a value on a model

If I have a private int _damage on a model, and then I do the following code: public void AddDamageToModel(int damage) { SetDamage(model.damage + damage); }...

Amplify Meta Lip Sync

I need to amplify the audiosource on the Meta Avatar using ontriggerenter. How can I access that Audiosource because I need this feature for the app to amplify the AudioSource on the Avatar Head.
No description

Punching networked enemies

Gameplay: multiple people facing a wave of enemies. If I punch an enemy, I want it to fly for everyone. Is this the right architecture? Enemies have kinematic rigidbodies with RealtimeTransform. If I punch an enemy (via OnTriggerEnter), I claim ownership of the enemy RealtimeTransform. I turn the rigidbody (on my client) to kinematic = false, apply my custom punch force with physics. The enemy flies on my client and its transform gets synced to other clients via RealtimeTransform. SO everyone sees it fly. Once the enemy hits the ground and finishes rolling, I release the ownership and set the rigidbody kinematic = true again. I understand we can just do networked rigidbodies and Unity physics collision and this is handled mostly "automatically" but I want to use OnTriggerEnter to do some custom punch power calculations based on the puncher's "strength level."...

Microphone doesn't work

For some reason one of the clients run into this line and others can't hear it. Why is it happening and how can I fix it? I have 3 roles - Teacher, Player, Observer. No one can't hear the one who starts as player, but other roles are ok and player can hear other roles. I did find any problems with avatar prefabs, they are pretty similar. Class name AudioDeviceDataReader. Line 46 // If the next read head will be past the write head position, bail....
No description

Connecting rooms by geo

I know that new rooms are colocated with the first person who enters the room, but is there a way to specify room geos manually? The use case is funneling players automatically into an existing room for their geo or to create one if it doesn't exist. Right now, my game just funnels players into any open room, which can cause some players to get stuck with bad ping. If I have to do this manually, is there a way to know what geos Normcore supports? Or is the best thing for me to just bucket them on my own and let the buckets connect to whichever Normcore server it finds?...

Have multiple clients apply a force to a rigidbody

Wondering if there's any way to have multiple clients be able to apply a force to the same rigidbody. I know that realtime transform will only allow the owner to modify the position of a rigidbody, just wondering if there's any workarounds to this of if this is something anyone else has had to solve before I am trying to build a system that allows two or more users to carry/lift the same object. I'm thinking I'll need to have the non owning clients send their desired physics input over an RPC to the owner and add that in...

Plugin Mismatch Error on 2.15.4

I'm getting a mismatch error after updating to version 2.15.4 (was previously on 2.13.2). Getting the error on WebGL when trying to connect to a host that's on Android. I restarted the editor and rebuilt for both platforms. I see that this was a bug in 2.15.3 but still getting it on the latest for some reason. Any idea what might be going on?
No description

When is it safe to retrieve the AudioSource from a peer?

I need a reference to the AudioSource (the one that is created by the RealtimeAvatarVoice component). I was retrieving it on an onchange for one of the properties of my model, but it seems like it still doesn't exist by then. Is there an event for when it's created, or should I poll for it?

is StringKeyDictionary<TValue> a property I can put in models?

It seems to want TValue to be a model of its own, how am I supposed to use it?

RealtimeView.RequestOwnershipOfSelfAndChildren() causes error: Collection was modified

Any ideas how to fix this? InvalidOperationException: Collection was modified; enumeration operation may not execute. System.Collections.Generic.List1+Enumerator[T].MoveNextRare () (at <b4bf55bf6893420ebddeeda99394cb6d>:0) System.Collections.Generic.List1+Enumerator[T].MoveNext () (at <b4bf55bf6893420ebddeeda99394cb6d>:0)...

Grabbing object with realtimetransform doesn't sync position across clients.

I have fruit in my game with an XR Grab Interactable and a RealtimeTransform. When one player picks up a piece of fruit, the others can't see it moving. I'm assuming it has something to do with ownership?

How to know if other players disconnect from room?

How to know if other players disconnect from room?

Model stays on datastore after destroying object view

This happens changing scenes (keeping realtime over scenes), in repeated scenes we found that the model used is not restored after destroy, so on OnRealtimeModelReplaced() the model comes with the values of the last scene

Debugging stuttering/lag

We just had 10 people in a VR game (all Quest 2 or 3) together in an instance, and it was quite laggy and stuttering. There are a couple of factors we're trying to narrow down, but would appreciate any pointers here, or easy ways to continue stress testing. 1. Server instance was in the Netherlands while we are US west, so our ping was consistently around 120-150ms. I would presume ping is a separate concern from stuttering, but not sure 2. There were ~10 active players in the room. Both voice and avatar movement were stuttering. The game itself didn't seem to be lagging, which maybe means a bottleneck on the Normcore server? If this is potentially the issue, would love to learn how to size up 3. Maybe some combo of 1 and 2? We had people from different geos all together...

isOwnedLocallySelf seems to be incorrect for me

Sorry, I'm a newbie. I'm instantiating my prefab with: Realtime.InstantiateOptions options = new Realtime.InstantiateOptions(); options.destroyWhenLastClientLeaves = true; options.destroyWhenOwnerLeaves = true; options.ownedByClient = true;...

Microphone on the HTC VIVE Focus 3 doesn't work

Microphone on the HTC VIVE Focus 3 doesn't work, but on other platforms -Pico, Oculus, PC everything's ok. What could be the problem?

RealtimeProfiler docs?

Are there any docs available for using the RealtimeProfiler? We're trying to understand network usage during a session as part of our new game telemetry reporting.

If multiple clients run the following code to clear a RealtimeDictionary, what happens?

foreach (var kvp in model.playerPoints) { model.playerPoints.Remove(kvp.Key); } ...
Next