Plugin Separation: Move the RWTHVRCluster Module into its own Plugin with respective content. Removes Toolkit dependency to nDisplay
this is a biggie:
- We need android/quest/pico support for the plugin
- We want to keep dependencies minimal in general
- nDisplay and other cluster plugins are not whitelisted for android -> Problem!
- While it is easy to
#if
out code and modules, this is not possible for uassets in Content - When building for android and there is a reference to nDisplay in e.g. a BP, this crashes
Therefore I propose we move the nDisplay dependent code and content into a separate plugin:
https://git-ce.rwth-aachen.de/vr-vis/VR-Group/unreal-development/plugins/rwth-vr-cluster-plugin
I have adjusted the code and content in a way that should limit dependencies between the two plugins, ideally both run without the other. So far, this seems to work. However, one needs to be really careful with saving nDisplay-dependent assets in the RWTHVRToolkit!
For C++, this suggestions uses the following defines. If the RWTHVRCluster module is enabled, you can access cluster/nDisplay related functionality - but guard this behind the DEFINE, otherwise your code will break on android.
if (IsPluginEnabledForTarget("RWTHVRCluster", base.Target))
{
PrivateDependencyModuleNames.Add("RWTHVRCluster");
PrivateDependencyModuleNames.Add("DisplayCluster");
PublicDefinitions.Add("PLATFORM_SUPPORTS_CLUSTER=1");
}
Merge request reports
Activity
added Refactor label
requested review from @marcel.krueger
added 1 commit
- 376c1fea - refactor(cave): Optionally enable RWTHVRCluster Plugin.
added 1 commit
- 3c7b2005 - fix(cave): RegisterComponent now doesn't throw a nullptr anymore because...
added 1 commit
- 5aff6022 - fix(cave): Tries AddComponentByClass in the hopes of preventing further nullptr exceptions
added 90 commits
-
5aff6022...992dab6b - 88 commits from branch
dev/5.3
- 7f46cfb1 - Merge branch 'dev/5.3' into refactor/plugin_separation
- dcd9790f - fix(samples): Adjusts BP_CaveSetup in Map to the one from the separated VR Cluster Plugin.
-
5aff6022...992dab6b - 88 commits from branch
added 1 commit
- 262f479b - fix(pawn): Re-serializes base pawn without dependency to nDisplay
added 1 commit
- f7f383e3 - fix: Enables XRBase plugin for toolkit. Usually this is enabled through...
added 1 commit
- 33b05341 - fix(ci): Manually remove nDisplay references from Config files when generating...
added 5 commits
-
286b712b...53c84a3f - 3 commits from branch
dev/5.3
- b9bb8062 - Merge remote-tracking branch 'remotes/upstream/dev/5.3' into refactor/plugin_separation
- 2eb1d91a - Merge branch 'refactor/plugin_separation' of...
-
286b712b...53c84a3f - 3 commits from branch
mentioned in commit 0c4ff69e