In Unity, objects in a scene are an instance of a prefab. You can import the assembly of your submarine directly as a prefab using a .fbx file format. This format also imports the texture of each component of your submarine if you set it in your CAD software before the conversion to fbx. To import the .fbx in Unity, simply drag and drop your .fbx into Assets/Prefabs.
This is where you will setup your AUV components.
In our case, the first child of AUV8 is a transform node containing the physical components of our AUV. If you rotate the transform node, you can set up the axis in Unity to be the same as the one in your control model.
You can see that there are four cameras on our gameObject. Two of them provide visual feedback in the Unity window. In our case, we target display 1 in Unity. The two "Renderer" are copies of their parent camera and target renderering textures in our files wich are used in the camera publisher to send as a standard ROS message.
This camera is not part of our submarine but it can be use to orbit around the AUV while in play mode. This feature is by far not user friendly and should be upgraded.

In the hierachy tree, you can see the game object "RosConnection" as a child of the empty game object "General".
This game object is the only connection between Unity and the ros master. You can see in the inspector window that there are some components attached to this gameOobject. These components are publisher or subscriber scripts. For example, at the time this picture was taken, we could send and receive the position and send our camera's video feed. If you want to add a subscriber that shoot topideos while trigger, simply create a script with the position Subscriber, for example, and attach it to the component with the "Add component" button. If you don't see your script in the dropdown menu, make sure the class has the same name as the script.

This script is still WIP so the other arguments might change.