Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

perf: Remove 2 messages when player connects #384

Merged
merged 3 commits into from
Oct 6, 2020
Merged

perf: Remove 2 messages when player connects #384

merged 3 commits into from
Oct 6, 2020

Conversation

paulpach
Copy link
Contributor

@paulpach paulpach commented Oct 6, 2020

Before:

when I connection is established, we spawned the objects like this:

  1. ObjectSpawnStartedMessage
  2. SpawnMessage
  3. SpawnMessage
    ...
    n) SpawnMessage
    n+1) ObjectSpawnFinishdMessage (and initialize all objects)

After:

when I connection is established, we spawned the objects like this:

  1. SpawnMessage (initialize)
  2. SpawnMessage (initialize)
  3. SpawnMessage (initialize)
    ...
    n) SpawnMessage (initialize)

BREAKING CHANGE: It is no longer guaranteed that all objects are spawned before we start calling events

Before:

when I connection is established, we spawned the objects like this:

1) ObjectSpawnStartedMessage
2) SpawnMessage
3) SpawnMessage
...
n) SpawnMessage
n+1) ObjectSpawnFinishdMessage

After:

when I connection is established, we spawned the objects like this:

1) SpawnMessage
2) SpawnMessage
3) SpawnMessage
...
n) SpawnMessage

BREAKING CHANGE: It is no longer guaranteed that all objects are spawned before we start calling events
@uweeby
Copy link
Member

uweeby commented Oct 6, 2020

I like this change but it caused this in the ChangeScene example:

image

@sonarcloud
Copy link

sonarcloud bot commented Oct 6, 2020

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 0 Code Smells

100.0% 100.0% Coverage
0.0% 0.0% Duplication

@uweeby uweeby merged commit c40e0fd into master Oct 6, 2020
@uweeby uweeby deleted the simplespawn branch October 6, 2020 17:40
github-actions bot pushed a commit that referenced this pull request Oct 6, 2020
# [47.0.0](v46.2.0...v47.0.0) (2020-10-06)

### breaking

* Remove GameObject sync ([#370](#370)) ([5b223fa](5b223fa))
* Use SyncLists directly (delete overrides) ([#2307](https://github.com/MirrorNG/MirrorNG/issues/2307)) ([fb49d19](fb49d19)), closes [#2305](https://github.com/MirrorNG/MirrorNG/issues/2305)

### Bug Fixes

* access NI on disabled objects ([#383](#383)) ([0ab4c60](0ab4c60))
* adding namespace for sonar bug ([2ed0859](2ed0859))
* bug Client ConnectionState not set properly in Disconnect ([#369](#369)) ([74298c5](74298c5))
* Bug with  NI destroy order ([#374](#374)) ([485f78b](485f78b))
* Examples can exit property in client mode ([35faaf3](35faaf3))
* examples no longer use prefabs or common files ([#378](#378)) ([718ec9e](718ec9e))
* networkmenu should add NSM to playerSpawner too ([c7bd0be](c7bd0be))
* nre modifying syncvars that have not been spawned ([69883c5](69883c5))

### Features

* new generic Read and Write methods for all types ([#2301](https://github.com/MirrorNG/MirrorNG/issues/2301)) ([85252c3](85252c3))
* support Jagged arrays ([0267dbe](0267dbe))

### Performance Improvements

* Only synchronize dirty objects ([#381](#381)) ([64fd6ed](64fd6ed))
* Remove 2 messages when player connects ([#384](#384)) ([c40e0fd](c40e0fd))

### BREAKING CHANGES

* It is no longer guaranteed that all objects are spawned before we start calling events

* fix object spawning on scene change

* remove unused variable

Co-authored-by: uwee <uweenukr@gmail.com>
* You can no longer use gameobjects in syncvars
* Serialize and Deserialize methods in synclists don't do anything anymore

* Remove old comment

* Fix compilatio error
github-actions bot pushed a commit that referenced this pull request Oct 6, 2020
# [47.0.0](v46.2.0...v47.0.0) (2020-10-06)

### breaking

* Remove GameObject sync ([#370](#370)) ([5b223fa](5b223fa))
* Use SyncLists directly (delete overrides) ([#2307](https://github.com/MirrorNG/MirrorNG/issues/2307)) ([fb49d19](fb49d19)), closes [#2305](https://github.com/MirrorNG/MirrorNG/issues/2305)

### Bug Fixes

* access NI on disabled objects ([#383](#383)) ([0ab4c60](0ab4c60))
* adding namespace for sonar bug ([2ed0859](2ed0859))
* bug Client ConnectionState not set properly in Disconnect ([#369](#369)) ([74298c5](74298c5))
* Bug with  NI destroy order ([#374](#374)) ([485f78b](485f78b))
* Examples can exit property in client mode ([35faaf3](35faaf3))
* examples no longer use prefabs or common files ([#378](#378)) ([718ec9e](718ec9e))
* Lobby comp should not reference NetworkConnection.IsReady ([#385](#385)) ([6a1a190](6a1a190))
* networkmenu should add NSM to playerSpawner too ([c7bd0be](c7bd0be))
* nre modifying syncvars that have not been spawned ([69883c5](69883c5))

### Features

* new generic Read and Write methods for all types ([#2301](https://github.com/MirrorNG/MirrorNG/issues/2301)) ([85252c3](85252c3))
* support Jagged arrays ([0267dbe](0267dbe))

### Performance Improvements

* Only synchronize dirty objects ([#381](#381)) ([64fd6ed](64fd6ed))
* Remove 2 messages when player connects ([#384](#384)) ([c40e0fd](c40e0fd))

### BREAKING CHANGES

* It is no longer guaranteed that all objects are spawned before we start calling events

* fix object spawning on scene change

* remove unused variable

Co-authored-by: uwee <uweenukr@gmail.com>
* You can no longer use gameobjects in syncvars
* Serialize and Deserialize methods in synclists don't do anything anymore

* Remove old comment

* Fix compilatio error
github-actions bot pushed a commit that referenced this pull request Oct 6, 2020
# [47.0.0](v46.2.0...v47.0.0) (2020-10-06)

### breaking

* Remove GameObject sync ([#370](#370)) ([5b223fa](5b223fa))
* Use SyncLists directly (delete overrides) ([#2307](https://github.com/MirrorNG/MirrorNG/issues/2307)) ([fb49d19](fb49d19)), closes [#2305](https://github.com/MirrorNG/MirrorNG/issues/2305)

### Bug Fixes

* access NI on disabled objects ([#383](#383)) ([0ab4c60](0ab4c60))
* adding namespace for sonar bug ([2ed0859](2ed0859))
* bug Client ConnectionState not set properly in Disconnect ([#369](#369)) ([74298c5](74298c5))
* Bug with  NI destroy order ([#374](#374)) ([485f78b](485f78b))
* Examples can exit property in client mode ([35faaf3](35faaf3))
* examples no longer use prefabs or common files ([#378](#378)) ([718ec9e](718ec9e))
* Lobby comp should not reference NetworkConnection.IsReady ([#385](#385)) ([6a1a190](6a1a190))
* networkmenu should add NSM to playerSpawner too ([c7bd0be](c7bd0be))
* nre modifying syncvars that have not been spawned ([69883c5](69883c5))

### Features

* Add IncludeOwner option to SendToAll ([#387](#387)) ([6b0a005](6b0a005))
* new generic Read and Write methods for all types ([#2301](https://github.com/MirrorNG/MirrorNG/issues/2301)) ([85252c3](85252c3))
* support Jagged arrays ([0267dbe](0267dbe))

### Performance Improvements

* Only synchronize dirty objects ([#381](#381)) ([64fd6ed](64fd6ed))
* Remove 2 messages when player connects ([#384](#384)) ([c40e0fd](c40e0fd))

### BREAKING CHANGES

* It is no longer guaranteed that all objects are spawned before we start calling events

* fix object spawning on scene change

* remove unused variable

Co-authored-by: uwee <uweenukr@gmail.com>
* You can no longer use gameobjects in syncvars
* Serialize and Deserialize methods in synclists don't do anything anymore

* Remove old comment

* Fix compilatio error
github-actions bot pushed a commit that referenced this pull request Oct 7, 2020
# [47.0.0](v46.2.0...v47.0.0) (2020-10-07)

### breaking

* Remove GameObject sync ([#370](#370)) ([5b223fa](5b223fa))
* Use SyncLists directly (delete overrides) ([#2307](https://github.com/MirrorNG/MirrorNG/issues/2307)) ([fb49d19](fb49d19)), closes [#2305](https://github.com/MirrorNG/MirrorNG/issues/2305)

### Bug Fixes

* access NI on disabled objects ([#383](#383)) ([0ab4c60](0ab4c60))
* adding namespace for sonar bug ([2ed0859](2ed0859))
* bug Client ConnectionState not set properly in Disconnect ([#369](#369)) ([74298c5](74298c5))
* Bug with  NI destroy order ([#374](#374)) ([485f78b](485f78b))
* Examples can exit property in client mode ([35faaf3](35faaf3))
* examples no longer use prefabs or common files ([#378](#378)) ([718ec9e](718ec9e))
* Lobby comp should not reference NetworkConnection.IsReady ([#385](#385)) ([6a1a190](6a1a190))
* networkmenu should add NSM to playerSpawner too ([c7bd0be](c7bd0be))
* nre modifying syncvars that have not been spawned ([69883c5](69883c5))

### Features

* Add IncludeOwner option to SendToAll ([#387](#387)) ([6b0a005](6b0a005))
* new generic Read and Write methods for all types ([#2301](https://github.com/MirrorNG/MirrorNG/issues/2301)) ([85252c3](85252c3))
* support Jagged arrays ([0267dbe](0267dbe))

### Performance Improvements

* Only synchronize dirty objects ([#381](#381)) ([64fd6ed](64fd6ed))
* Remove 2 messages when player connects ([#384](#384)) ([c40e0fd](c40e0fd))

### BREAKING CHANGES

* It is no longer guaranteed that all objects are spawned before we start calling events

* fix object spawning on scene change

* remove unused variable

Co-authored-by: uwee <uweenukr@gmail.com>
* You can no longer use gameobjects in syncvars
* Serialize and Deserialize methods in synclists don't do anything anymore

* Remove old comment

* Fix compilatio error
@github-actions
Copy link
Contributor

github-actions bot commented Oct 7, 2020

🎉 This PR is included in version 47.0.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants