hi ..
no, a terrain is not needed.
by default, e.g. the 'Modern Streets' rule creates an attribute 'elevation' with the value 0, which means 'on the grid', no elevation. If you create a terrain, each shape samples the height above terrain in the shape's pivot point and uses that to calculate elevation above terrain.
but it's not needed, as mentioned above.
ok ?
m.