Add ability to move client UIs from the server side #33
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello, I see this repository is getting attention again, which is fantastic. I'd like to offer a contribution, as I operate a server that depends heavily on complicated server-sided UI like the following:
The primary thing I'd like to see is the ability to move UI elements across the screen, optionally animating them in the process. This would allow for much more responsive and fluid interfaces, and less garbage on the client and server (as I'd have to send less duplicate UIs).
Unity can do this pretty easily just by changing the RectTransform anchors, so I've added an RPC to start a coroutine to move the UI to a target position on the client. Also added ease-in, ease-out, and ease-in-out easings with a duration to make it smoother.
Currently takes the following JSON packet, a list of MoveUI requests that it will parse all at once:
Due to the nature of this repo, I had to test in an empty Unity project. AFAIK it should work fine, panels with children animate correctly, but I'm unable to test some components, and can't test the function over RPC/in game.