Solution: reproject
You use a CRS that is not suitable for measurements. Reproject to a local CRS (do not simply "change"/set the CRS), e.g. the UTM zone valid for your area of interest. See also here for backround.
Details: why you get 0 values
Wrong measurement units: degrees instead of meters or inches
The CRS you use, EPSG:4326, has layer units in degrees, so measurements are in degrees, too. So the distance in this CRS from Perth (31.95° South, 115.85° East) to a point on Australia's East coast with the same latitude (31.95° South, 152.55° East) is 152.55-115.85 = 36.7 [degrees]. You see that this measurement makes no sense at all as ellipsoidal distance is ca. 3450 km (3450000 m). See here for background.
One degree of longitude can be as long as 111 km (at equator) or as short as 0 m (at the poles), see here for details. So you see that there is no meaningful conversion between distances in degrees length measurements that correspond more or less to real world distances.
Small numbers
The same happened in your case: as measurments in degrees not only do not produce any meaningful measurement, they also produce much smaller numbers (36.7 vs. 3450000 in the case above). So if you have measurements of a few 100 or a few 1000 meters, depending where on Earth you are, measurements in degrees will produce values with two or more 0 digits after decimal points (like 0.0001...).
Multiplying small numbers: values tend towards 0
If you now calculate a volume, you multiply twice (power of 3) - say 0.0001 * 0.0001 * 0.0001 = 0.000000000001. As you see, the numbers tend to go towards 0. If you have decimal numbers with precision of 3 (as it is default setting in QGIS), the number will indeed be rounded to 0. So no wonder using EPSG:4326 produces a value of 0 for volume.