Interaction refactoring and replication
Initial refactoring of the interaction system to better lay the groundwork for interaction replication. Very rough untested draft as of now, changes include:
- Action/Hover now inherit from a BaseBehaviour which can save shared information, and adds some basic replication properties.
- Adds a BaseInteractionComponent which similarly to the BaseBehaviour contains replication and some general properties shared by both direct and ray interactors.
- Start/End functions have been condensed into one, and an Enum now separates the two. This reduces code duplication especially for replication by a lot.
- Adjusts other components such as intenselect to the new refactoring
- Callback for Behaviours that only executes on the originating client
- GrabBehaviour adjusted to replicate correctly
Missing changes:
- Test the whole thing:
-
Standalone seems to work fine -
Dedicated server grab -
Direct Interaction for -
VR Grab -
Grab seems to work fine for desktop Listen server + 2 clients -
Cave Grav -
Desktop + VR + Cave + Dedicated server Grab
-
-
Raycast Interaction for -
Desktop Grab -
Cave Grab -
VR Grab -
Desktop + VR + Cave + Dedicated server Grab
-
-
- Documentation and comments, especially the replication part
- Adjust blueprints and any other uassets
- Actually consider the replication process and add some more callbacks and events that can be used
- Naming scheme is wild
- Does it even make sense like this? This is just one possible approach
Edited by David Gilbert
Merge request reports
Activity
added Refactor label
assigned to @david.gilbert
added 1 commit
- d0302fe5 - refactor(interaction): Fixes issue with function definition of HasInteractionTypeFlag
added 1 commit
- 1db0a59c - fix(interaction): Fixes wrong EventType being used in...
added 13 commits
-
1db0a59c...952a1ab5 - 12 commits from branch
dev/5.4
- ac593bc9 - Merge branch 'dev/5.3' into 'refactor/interaction_replication'
-
1db0a59c...952a1ab5 - 12 commits from branch
added 8 commits
-
ac593bc9...6fcb7e2a - 7 commits from branch
dev/5.4
- 4d621968 - Merge branch 'dev/5.4' into refactor/interaction_replication
-
ac593bc9...6fcb7e2a - 7 commits from branch
added 1 commit
- 3baf0639 - style(interaction): Make clang format happy.
requested review from @marcel.krueger
added 3 commits
-
3baf0639...33b4f6b2 - 2 commits from branch
dev/5.4
- 2a030b93 - Merge remote-tracking branch 'remotes/origin/dev/5.4' into refactor/interaction_replication
-
3baf0639...33b4f6b2 - 2 commits from branch
added 1 commit
- a48342ef - fix(interaction): Adds left mouse button to raycast interaction
Please register or sign in to reply