The toolbar is always visible and lives underneath whatever panel you have open. It has a bunch of handy features that can aid and inform your volume making adventure. At a high level it allows the following:
Run a quick test on the selected volume or depot
Run a report showing detailed information on selected volumes or depots, or all if nothing is selected
Selects the closest volume to the current location (handy in busy levels where selecting things is fiddly)
Toggle hiding everything in the map except the selected volume and it's warnings
Clean up content by removing any temporary Volumator objects from the map (e.g. warning sprites)
Toggle the opacity of the selected volume, making them easier to see and select
Show a separate widget that keeps a running output log of all Voluamtor events the tool carries out
Toggle the displaying of settings
Show various help information such as links to this website, videos and support email
This feature displays any issues with the selected volume (or depot's volume) so you can easily assess the integrity of the volume.
It works by reusing the original scanned data and assumes that the volume should encapsulate that area. For example, we detect points on an L shaped room and a volume is built, the detected point locations are then checked to see if the volume covers them, if not they are considered issues.
The quick test is handy to check the general integrity of the volume shape and in isolation of the world, but it is NOT a replacement for a full pilot/drone test carried out in the Test tab. This is because it is using the previous detected point data, rather than going out and scanning the geometry of the area. It is similar to the tests that are run after a volume is generated, although it has the added advantage of doing Geometry Tests, which post-generation tests don't do.
As covered in the Test page, there are four types of issue:
Warning - a location that is not inside of the volume that collides with geometry
Error - a location that is not inside of the volume that collides with nothing, so is in open space and is more likely to be a problem
Multi-volume - a location covered by more than one volume, which could be a problem if volumes are supposed to be exclusive and not overlap
Geometry change - a location that previous collided with something during detection that no longer does, this is likely because world geometry has changed, signifying that the world has altered since the map was detected and is worth investigating
Quick tests do not run multi-volume tests regardless of the 'multi-volume test' setting, however they will report in the text log if the volume overlaps with another of the same class.
As it's the original world-space detected data that's tested, the testing locations do not move if you move the volume. You can see this below. If you've accidentally moved the volume, you can reset the volume's location to it's original position in the Edit tab.
Quick test on a recently built volume that has no issues reported
Quick test after moving the same volume, you can clearly see how the tested points are in world space and the warnings/errors are displayed in places the volume doesn't cover
A report can be run on the selected volumes, or all if nothing is selected. It will open a new widget window, displaying details about the volumes and even running some tests for you. It's a great way to get a detailed understanding of your volumes.
The volume and depot buttons can be clicked on for quick teleportation to the object in the map.
All of the column titles can be hovered over for more info on what it represents. Most are common sense, but some less obvious ones are:
Complexity - this is a loose guide as to how complex a volume is and how much CPU use it would be compared to others, it's surface area divided by triangle count
Collision - an analysis is carried out on the collision of the brush component on the volume, if the volume is negative it implies the volume is severely broken. Volumator attempts to repair bad volumes when generating and will tell you if it's unable to. It's likely you'd need to delete this volume if this is true, it's pretty rare but is nice to know that all is well
Reload - The volume's shape has been changed but Unreal hasn't refreshed collision, this happens whenever you Regenerate a volume and causes some Unreal functions (e.g. get closest point on collision) to not work until the volume is reloaded. Don't worry, it doesn't affect game runtime as that causes a reload, it only impacts your editor usage while you have the map open. Volumator detects this situation and switches to an alternative testing method for affected volumes, but this method causes more CPU usage when testing. This can be resolved by simply saving and reloading the level. It's absolutely not a big deal, it's more for my testing and transparency.
Data - Does the volume have a valid Volumator_Data actor component. Any of the columns to the right of the 'Data' column are reliant on this being true (see below), and many of the advanced features of Volumator require this component.
Intersect - As we don't do multi-volume tests on a report, this is an alternative. It tells you if any of the volumes being reported on overlap. You could run multipe reports with different volumes select to see exactly which volumes are overlapping if you like.
Points - The total number of points that were detected when building the volume. This is NOT the perimeter points of the volume, this is the pre-generation points. These points are filtered and processed during the generation (or regeneration) stage to create and order the final perimeter points
Point Dist - Simply the Min Point Distance as set during Detection. It can be handy to know this as the Resolution will be clamped to not go below twice the Min Point Distance for boring technical reasons. For example MinPointDist=75 means Resolution cannot go lower than 150, even if you set it lower. In order to get a lower Resolution you'd need to create a new volume with your MinPointDistance set lower. See Settings for more info
Edited - Has the volume got manually modified vertices, usually due to using the 'Edit Vertices' mode on the Edit tab. A regeneration of the volume will cause those changes to be lost.
Moved - Has the volume moved from it's original location.
A report showing 5 volumes. LocationVolume2 (the middle one) has no Data component, so all the entries to the right of Data are invalid for that volume
Selects the most relevant volume. This is incredibly handy if you're in a busy level with lots of art, as your volumes can be hard to select or it's hard to determine which volume covers the area.
It returns the first volume you're inside of. If you're not inside any volume it'll select the closest by finding the closest point on each volume in the map, i.e. it's smarter than just getting the closest actor location.
If you have a depot currently selected, it'll select that depot's volume instead.
This way, clicking this button should always select the most appropriate volume based on what you're doing.
This toggle button will hide everything in the map except what you have selected. It unhides everyone with a second click.
Additionally, it will also keep any warnings/errors shown, allowing you to easily assess a volume without the rest of the maps' visual clutter.
It supports multi-selecting, allowing you to easily see how all the volumes in your map link together.
This button is incredibly powerful as it allows you to understand problems and shapes in 3D space. Combing use of the Select Volume button and Show Selected, we can really quickly fly around assessing volumes in a level with ease.
A generated volume with some warnings that are hard to see
After clicking 'Show Selected' everything else is hidden except the volume and it's issues. Making it incredibly easy to fly around and assess each without the art getting in the way
During the course of using Volumator, some editor-only actors can be added to the map. These are usually cleaned up but there may be times where you want or need to manually remove anything Volumator has created.
A good example is the warning/error sprites. If Volumator isn't able to attach them to a volumator related actor (e.g. a depot) then it'll create a special actor to attach the sprites to. Clicking Cleanup will delete any of these actors from the map. Volumator is smart enough to cleanup it's mess when it starts a new process, but the latest is going to stick around as it's there for your purposes.
Another example is things like splines used for editing corner points on volumes or manual path building. These should get cleaned up, but if you've interrupted a process some how (or something broke) then they could hang around.
As a reminder, any actor or component Volumator makes (outside of the volumes themselves) are set to be Editor-Only and will not get packaged or interfere with your game, so cleaning up these actors is really just to avoid unnecessary clutter in the editor.
Many volume classes in Unreal appear in the editor as wireframes. This can make it hard to assess their shape given Volumator can make quite complex ones. It also makes them hard to select too, as you have to click on the wireframe edges. This bugged me so I built a system to better see and select volumes, but be aware that it's entirely optional if you don't need it.
One thing to keep in mind is that as both systems block clicks, so if you are outside of the volume viewing in and want to select something inside of the volume (e.g. a depot) the volume's opacity will block the click and you'll select the volume instead of the actor inside it. This is as you'd expect, but due to this having opacity on can sometimes be frustrating, so you can quickly toggle opacity on/off with this button.
As this volume has opacity switched on, selecting this depot actor would not be possible from this camera angle as clicking on the depot would select the volume instead
By toggling opacity of the volume to off, we can now select the depot easily from this camera angle
For opacity we actually have two options: Volumator's VolumeVisualiser component and Unreal's built-in Display Shaded Volume function. They have different pros and cons, but I found Unreal's system problematic enough that I tried to make something better suited to how we work with volumes. You select between the two options in the Generation-Settings-Advanced option: 'Use Simple Opacity'. Enabling this will switch to Unreal's Display Shaded Volume system. Refer to the Settings page that discusses the difference in more detail.
There is also a setting to enable opacity on newly created volumes too, so volumes automatically have opacity on creation. This is also in Generation-Settings-Advanced and called 'Opacity on create'.
Each time Volumator carries out a major action we output something to the main Unreal log to give you feedback. However, as the Unreal log is very busy, we also print Volumator output to a special 'mini log' underneath the toolbar. However, this mini-log only shows the latest log entry.
As Volumator outputs a lot of it's own log data, especially when doing compound actions such as the Validation system or running multiple depots, it can be really helpful to see a running log of everything Volumator is doing, without having to deal with the clutter of the main unreal output log.
This is where the Full Log comes in. Clicking this button will open a separate widget window that keeps a running log of all Volumator logs. Using this you can keep a better eye on exactly what Volumator has done, and can be really handy when it's trying to wrangle particularly difficult spaces. You may find you can uncover the source of problems or better track it's progress.
You can clear the full log by clicking the 'Clear' button. In Widget Settings you will find options to disable the mini-log and Volumator outputting to the Unreal log too.
Shows or hides the settings panel, for if you prefer a cleaner looking widget.
Clicking Help shows an additional set of buttons that allow you to access various help features such as a link to this website, link to the youtube tutorials and our contact email address.