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

Integrate VoiceChat for WebGL in Normcore 2.x

Hi, I know you already have this in your to-do-lists, but since nobody else is asking for it, I'd though i'd at least let you know we are waiting for this to be integrated 🙂

Make OnModelReplaced fire after connecting to a room

This has caught me twice and it might be intended behaviour but it feels like a bug. When I want to store room time in a model when isFreshModel is true for a scene view I have to make a coroutine wait for room != null and then I forget the next project I start cos it's counterintuitive. If room is supposed to be not null when OnModelReplaced is fired then this is a bug report 🙂...

Normcore + Movement SDK Docs

Someone really need to figure out how can one integrate Movement SDK with Normcore. Please

Interest Management

Have some mechanism to hide or show network activity based on distance or manually for each player.

Region Select

Optional region select when you connect

Toggleable warning for reset RealtimeView GUID

It can get quite annoying, with already having an option for disabling no realtimes existing, this would be nice to have as well.
No description

Allow RealtimeView.realtime and RealtimeView.viewUUID to be set from the editor inside prefabs

We have a use case where we want to be able to dynamically spawn a normcore room from a prefab. Unfortunately, the way RealtimeView works requires us to use a scene instead of a prefab. This is because the realtime and viewUUID fields on RealtimeView are hidden in the inspector when viewing from a prefab. If these were exposed, they wouldn't conflict with other normcore room scene view UUIDs because they would be tied different Realtime instances

Show the property path for RealtimeSet delta update errors

Sometimes I'll get an error from normcore like RealtimeSet received delta update for non-existent key (2297). Is there any way you could add an optional flag to show the full property path for these kinds of errors? It would make debugging them a lot easier

Server Mirroring

For spectator sidecars, if you go beyond the x-large server bandwidth, the only option is to stream twice from the client to multiple connected rooms. This is a janky and resource constraint solution where a mirror would be an elegant fit.

More Connection events

Please implement more connection events, especially failure or error events like 'didConnectToRoomFailed' for example.

Asia Server, Maybe?

I love this networking service so much. But in my country, it is very lagging to play my game.

Control instantiation rate on connection?

So if you have 30-50 rigibodies when connecting to a room there is a pretty heavy duty hiccup. A way to stagger that instantiation burst that was built in would be pretty nice.

peer 2 peer mode

this one is a bit out there but maybe we can get a peer 2 peer mode with the normcore servers acting as lobby and relay only if a direct connection is not possible. Save server costs while keeping the same codebase....

Add an event for when a whole model is updated after each property is done updating

A common issue people have is that they check the first property update event but find that the 2nd property hasn't been updated yet. A more useful event would be when the whole model is done updating then you wont get so many noob mistakes....

Possible option to force firing updated model event

Not sure if there are technical difficulties with doing something like this, but to have an event (or maybe just a property setting) that would fire the event if the model was sent an update even if the model didn't change value. This would make it so you could easily use a simple int to continously play various sound effects or trigger various animations from just an int becuase it could keep firing?

Custom update rate for far away models

We have a large scene that has many RealtimeTransforms throughout it, including avatars. We would love to have all models update less frequently if the player if further away from them. For example, if Ann is on one side of the scene while Bob is on the other, their avatars shouldn't update for each other at all until they get closer. In addition, they shouldn't be streaming each other's audio because they wouldn't be able to hear each other. You can get around this by sectioning off the scene into smaller rooms but then you increase you room hours and thus increase the cost of Normcore. Not ideal....

Support for all primitives

Why can't we sync something like a long over the network?

Undeprecate IsOwnedX

Just a nitpick, but ownership flags ending in "Self" (i.e. "isOwnedRemotelySelf") was really confusing when I was getting started. I understand the purpose is to differentiate from hierarchal ownership, but hierarchal ownership flags already end with "InHierarchy" (i.e. "isOwnedLocallyInHierarchy") so the distinction already exists. It simply confuses newcomers searching for the proper flag.
Next