AFAIK, your proposed approach is not compliant without Software Assurance.
Licensing all 32 physical cores of the host with SQL Server Standard Edition (per core, without Software Assurance) gives you the right to run SQL Server in one Operating System Environment (OSE), either physical or virtual. It does not grant unlimited or multiple virtual OSE rights. To run SQL Server in multiple VMs under the Per Core model without Software Assurance, each VM must be licensed individually based on the number of virtual cores assigned to that VM, subject to the minimum core licensing rules.
In your scenario, you have three VMs each with 8 virtual cores. Without Software Assurance, you would need to license each VM separately for 8 cores (with a minimum of 4 cores per VM, which you already exceed). Simply licensing all 32 physical cores of the host does not cover multiple VMs.
The ability to license the entire physical server and run SQL Server in any number of VMs on that server is a benefit that applies only when all physical cores are licensed and those licenses are covered by active Software Assurance (or when using subscription licensing). This distinction has been consistent across recent versions, even if the wording in newer Product Terms separates physical and virtual licensing options more clearly.
Effectively, your intended approach, which involves licensing all 32 physical cores without Software Assurance and running three separate SQL Server instances in three VMs on that host is not compliant. To be compliant, you should either license each VM individually by virtual cores or add Software Assurance to the full set of physical core licenses.
More at https://www.microsoft.com/licensing/terms/productoffering/SQLServer
If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.
hth
Marcin