you would have to create this transit network either on another interface connected to your esxi host where you have your pfsense wan from your 10 router or with the use of a vlan.
" The computers in the 10 subnet and the pfsense are effectively all connected to the same switch."
You can not do it that way without issues with asynchronous routing.. Which is not good for anything ;)
You have 2 solutions here, either NAT at pfsense so the network behind pfsense is hidden and looks like everything is on the 10 when talking to 10 devices and when going out the internet through the 10 router.. Ie everything behind pfsense looks like it is pfsense wan IP in the 10 network.
Or if your not going to nat and have a downstream router, then you need to use a transit network or you would have to create host routing on all devices wanting to talk to stuff behind pfsense.. Ie a workstation on the 10 that wanted to talk to a 192 device behind pfsense would have to have a route to pfsense wan IP for taking to the 192 network.
Also when your not natting on pfsense your going to have to let your 10 router to also nat this 192 network to its public IP for internet.
The simple solution for you would be to just let pfsense nat. For you to get to stuff behind pfsense then you would need to create port forwards on pfsense and if wanting to get to them from internet, you would have to create forwards on your 10 router to forward to pfsense wan IP.
The more robust solution would be not to nat and just use a transit network, and setup outbound natting on your 10 router for any networks you place behind your now downstream router pfsense.
If your goal is to be able to just plop pfsense on any esxi host that might be in different networks then nat is the way to go.