Zyzyl's Multi-cam Switcher tool

From Neos Wiki
Revision as of 21:59, 10 February 2022 by Zyzyl (talk | contribs)
Jump to navigation Jump to search

This is work-in-progress, please don't edit right now!

This multi-cam switcher tool dramaticaly enhances filming or streaming workflows for people wanting to play with multiple camera angles. It allows you to easily create, fine tune, and switch between all of your viewpoints. A major improvement over the standard Neos streaming UI is the ability to preview all your available shots at all times!

The tool can be found in this public folder insert public folder link along with documentation and a copy of the license. The tool is free to use for any purpose and you may edit and redistribute it as well. The only requirement is that you must provide reasonable attribution to Zyzyl as the tool's creator if you use it or release a modified version.

Instructions

Quick Start

  1. Spawn the multi-cam switcher tool and your Neos streaming camera.
  2. Put your camera in the green camera anchor on the right hand side of the UI.
  3. Add new viewpoints by using one of the 'Create New' button options.
  4. You can switch the active viewpoint (indicated by a red border) by laser clicking on any of the preview screens as long as your streaming camera is in the anchor.
  5. You can fine tune all types of view point using the settings (click the cogwheel button in the header of each preview screen). For static viewpoints you can also grab the blue camera visual to do general positioning.
  6. When you're finished setting up, you can leave editing mode by pressing the 'Disable editing' button on the lower toolbar. Disabling editing locks most things from being changed and prevents any stray laser clicks from messing up your shots!
  7. Lastly you can hide the multi-cam switcher UI from the stream camera using the InteractiveCameraObjectExcludeTip (see here for details).

Happy filming!

Getting the Multi-cam Switcher tool

The tool is available from this public folder insert public folder link. If you copy and paste that record URL into the Neos window it will spawn a copy of the public folder which you can save to your inventory. Inside the public folder there is (in order):

  • The Multi-cam Switcher tool
  • A variant of this documentation
  • A copy of the insert license text
  • A copy of the Neos InteractiveCameraObjectExcludeTip included for convenience (this is not covered by the above license and Zyzyl did not create it - it's a part of the Neos codebase).

You can spawn out any of the above items by double clicking on the inventory icon. It's recommended to always get the tool from the public folder (rather than saving your own copy) to ensure that you get the most up-to-date version.

Tool layout

The tool is composed of 3 major parts. There is the upper UI piece called the 'Display', the lower UI piece called the 'Toolbar', and the green camera anchor which sits on the right of the tool when empty. The display UI contains the viewpoint preview screens and the 'Create New' option buttons. Each preview screen has a header which contains the viewpoint name and several buttons.

The display and toolbar automatically adjust their size depending on various factors (e.g. preview screens being added to the display).

Note that only the user who spawned the tool can interact with the display and toolbar UI buttons.

Setting up

Anchoring the streamer camera

The multi-cam switcher tool works by moving the attached camera anchor between the viewpoint positions. This is how it switches your stream camera's viewpoint, so you need to have your camera set into the camera anchor for the tool to work. Once your streaming camera has spawned, you can anchor it by aiming your laser at the green camera anchor and pressing the trigger. If successful the camera will move to the anchor's position. For a great general overview of the Neos streaming camera, see ProbablePrime's tutorial series: part 1, part 2, and part 3.

Creating new viewpoints

You can add new viewpoints by using one of the four option buttons on the 'Create New' screen on the display. The '1st person view', '3rd person front view', and '3rd person back view' viewpoints will be positioned relative to a specified user. The 'Static view' viewpoints remain stationary relative to the world root unless deliberately moved. When any new viewpoint is created a corresponding preview screen is created on the display.

When adding a new '1st person view', '3rd person front view', or '3rd person back view' you will be prompted to input a username. Start typing until "Matched: target username" appears in green text below the text entry box. The username matching process will attempt to match partial names and is case insensitive. If multiple users have usernames which share some letters you may need to type in the full name to ensure the correct match. Once the desired user is matched, click on the green 'Create' button. To instead return to the 'Create New' screen, press the red 'Cancel' button.

When a new static viewpoint is added a blue viewpoint visual indicator spawns on the left side of the UI. This can be grabbed and moved into position but it does not act as a Neos camera anchor (despite appearing similar). The blue viewpoint visuals will be automatically hidden when you disable editing (see toolbar options).

Switching viewpoints

After placing your streamer camera in the tool camera anchor you can move it to any of the displayed viewpoints by clicking on the associated preview screen with your laser. The currently active viewpoint is indicated by a red border around the preview screen. Hovering over a preview screen highlights it with a white border. Viewpoints cannot be switched if there is no camera in the anchor!

Hiding the multi-cam switcher UI from the streamer camera

It's possible to prevent the streamer camera from rendering the multi-cam switcher by using the InteractiveCameraObjectExcludeTip. A copy of this is in the same public folder as the multi-cam switcher tool. Otherwise it can be obtained from Essential Tools > Misc. The most reliable way to make this work seems to be to equip the tooltip, grab the multi-cam switcher UI with the same hand, and then press primary fire. It may take a few attempts and you can verify whether it was successful by checking whether the switcher UI appears in the Neos private streaming UI.

Customising viewpoints and previews

Perfecting your shot

The multi-cam switcher tool offers convenient options for fine tuning each viewpoint. To edit a viewpoint, click on the cogwheel 'settings' button in the header of the associated preview screen. This shows an overlay over the preview screen which allows tweaking the position, rotation, and FOV (field of view - works similarly to a zoom function). Since the settings options obscure the rendered preview it is recommended to switch your camera to a viewpoint before making edits. This allows you to immediately see the results of edits using the Neos default streaming UI. If you make any mistakes you can reset the position, rotation, and FOV using the buttons on the bottom right of the preview settings UI.

Organising the preview screens

Preview screens can be renamed by clicking on the title for the relevant preview. The order of screens can be changed with the '<' and '>' buttons in the preview screen header. Alternatively, you can 'drag and drop' - hover your laser over a preview and grab. You should see some blue text appear near your hand. Continue to hold grip and hover over the preview position you would like to move it to and then release grip.

Show / hide previews

You can hide the render view on preview screen by clicking on the eye icon in the header. This only hides the preview - it is still possible to swap the streamer camera to a viewpoint if the render is hidden. The main reason to do this is to remove the performance impact of rendering unnecessary preview screens.

Deleting a viewpoint

Viewpoints can be deleted by pressing the red 'X' button in the preview screen header. Static viewpoints can also be deleted by grabbing and deleting the blue viewpoint visual indicator. Deleting a static viewpoint by either method will automatically remove both the preview screen and the blue camera visual.

Toolbar functions

Enable/Disable editing

The "Disable editing / Enable editing" button swaps the multi-cam switcher between 2 states. The tool spawns with editing enabled by default. This allows the full range of viewpoint creation and editing functionality. The intended workflow is that, after lining up the viewpoints you'd like available, you would then disable editing. Disabling editing has several effects:

  • The "Create New" screen on the display is hidden.
  • The blue position indicators for static viewpoints are hidden.
  • All header buttons apart from the show / hide preview button are hidden.
  • Any open viewpoint editing screens are hidden.
  • The ability to move and rename viewpoints is disabled.
  • The ability to save / load viewpoint data is disabled.

These changes are all intended to reduce the possibility of accidentally deleting, moving, or otherwise making changes to your setup during active filming.

Parenting to user

This button controls whether the multi-cam switcher tool stays positioned relative to the user who presses the button (i.e. it is parented to them). Once the tool is parented to a user it is still possible to re-position it by grabbing and moving it. Parenting the UI to the operator is helpful as it means it will automatically move with you as you navigate through the world.

Hiding the UI from others

This button controls whether the UI is visible to other users in the world. The tools spawns as visible to everyone by default. It is generally recommended that the UI be hidden from other users unless they absolutely need to be able to see it. This is because anyone who cannot see the UI does not suffer the (potentially significant) performance cost of rendering the preview screens.

Preview quality

This toolbar section allows you to determine the resolution/quality of the preview screens. The options are very low, low, medium, and high - the tool spawns with low quality set by default. Changing the preview quality can affect the performance cost of rendering the preview screens with lower quality being lighter on performance. As such, it's recommended to use the lowest quality level which is sufficient for your needs. It may make sense to perform the initial setup at a higher quality before switching down when filming. These preview quality options are completely independent of the quality at which the streamer camera records.

Saving and loading viewpoints

It is possible to save all of the current viewpoints by pressing the "Save viewpoints" button while editing is enabled. When viewpoints are successfully saved, an audio clip will play and a glowing data cube will spawn below the toolbar. This can be saved and loaded from the Neos inventory like any other object.

To load viewpoints, simply snap the datacube into the translucent snap box at the bottom right of the toolbar (only visible when editing is enabled) and press the "Load saved viewpoints" button which becomes enabled just to the left of the snap point. This will load all saved viewpoints into the world and creates preview screens for them. This retains any fine tuning performed using the cogwheel settings screen for each viewpoint. Customised viewpoint names are also retained. 1st person and 3rd person viewpoints will be loaded as long as the relevant user is present in the world. However loading saved viewpoints which were attached to users who are not present will fail silently. This failure does not prevent all other saved viewpoints being loaded.

Neos streaming UI settings

There are several settings in the Neos streamer UI which affect the function of the multi-cam switcher.