In all Indo-European languages that I know, copulae are intransitive and normally take the nominative. So everything below will apply to other Indo-European languages, too.
It is important to distinguish between objects and other complements. A direct object, which you mean, is always a kind of complement, accompanying a transitive verb; but there are other complements that aren't direct objects and don't require a transitive verb. Note that, in Latin, only direct objects can be passivised (just as in Dutch and German, but unlike English and Greek). Cf.:
I went to Rome: the complement to Rome is not an object, let alone a direct object, but rather a prepositional phrase.
In Italiam ii: same as above.
Romam ii: even though the complement is accusative, it's not a direct object. This can be seen in what happens when we make it passive:
Romam itur a me: normally, a direct object turns into a subject when we make the sentence passive, which does not happen here.
Tibi parceo: "I spare you": the complement is a dative, not an accusative.
Tibi parcitur a me: this is again visible in the passive (unnatural though a me sounds here).
Te video => videris a me: only direct objects become subjects when passivised.
The primary complement of a copula—or the secondary, if you count the subject as the primary complement—is always a nominative. This applies both to adjectives and substantives:
Canis sum: I am a dog.
Vetus sum: I am old.
Imagine if the adjective had to be in the accusative case: wouldn't that be weird?
You would have an adjective sitting there alone in the accusative. It would agree with nothing. So it has to be its own constituent; but it is very strange to have an adjective that clearly describes a property of the subject ("I") but that isn't in the same case and that isn't the same constituent.
So, because the complement of a copula always describes a property or identity of the subject, it has to be in the same case as the subject. This applies as well to the accusative with infinitive:
Dico me canem esse.
Dico me veterem esse.
The complement of a copula doesn't have an independent case: it must always take the same case as that of the 'subject' of the copula even when the latter isn't in the nominative.