No, only partially right. You must have the main domain "hosted" (added as a domain in the "Add Domains" section of the panel) in order to then add sub-domains, but there is no need to have that main domain "pointed" (DNS setup at the domain registrar to use the DreamHost nameservers).
Adding the main domain establishea a DNS record on the DreamHost nameserver - which is never "used" if the registrar DNS setting are pointed somewhere else.
However, once that is done, you can then add "hosting" for subdomains (which sets up their entries in the DreamHost DNS servers) and then "point" (modify DNS at the registrar) to the DreamHost nameservers for the subdomains, leaving the main domain DNS pointed wherever it is pointed.
There are numerous posts in these forums about how to do this, as well as an article in the DreamHost wiki, named "Host a subdomain on DreamHost when DNS is controlled elsewhere".
Think about it for a minute: When you set up to host a domain on DreamHost that is already hosted somewhere else, you "add hosting" before you transfer the DNS, right? When you do this DreamHost adds DNS records to their nameservers so that when you are ready to transfer the DNS at your registrar, it will be ready to go; if you never do that the site is still served at the old host (wherever the DNS is "ponted").