Mesh construction will be much faster if you create an STL vector for the vertices, and another for the indices, get the total size for each, resize them, and then fill them in. Then use the CreateMesh() overload that accepts the data:
https://www.ultraengine.com/learn/CreateMesh?lang=cpp
That will be much much faster than adding one vertex at a time.
Regarding VR, although it is very important I decided it would be okay to defer that for now because everyone is still just learning the new engine. When I add support, it will take less than four weeks to do. In Leadwerks I was using the SteamVR library, and it Ultra I can using Khronos OpenVR. I don't think it will be much different than what I did before. I don't really recommend trying to hack VR support right now because anything you do will just get replaced by something that will probably be better integrated. I have a meeting this week that will give me a better idea of what the immediate next steps will be, but I don't have a definitive answer about the VR question today.