The submarine
「その潜水艦」という特定の水中乗り物を指します。
had
「持っていた」という過去の所有状態を表します。
a fish-like shape
「魚のような形」を指し、魚に似た形状であることを意味します。
allowing it
「それが可能にしている」という結果や機能を導入します。
to glide
「滑るように動くこと」を意味します。
smoothly
「滑らかに」という様子を表す副詞です。
through the water
「水中を通り抜けて」という動きの経路を示します。