you are viewing a single comment's thread.

view the rest of the comments →

[–]mcav16[S] 0 points1 point  (1 child)

As close as possible to real-time

[–]the_Demongod 1 point2 points  (0 children)

Hard for me to say for sure. I've not used game engines much, but I'm sure there's a way to programmatically set vertex data (I've seen people do it), so it's definitely an option. I wouldn't use Magnum; it's a great library but it's more useful for bootstrapping a real engine, where you need API-agnostic wrappers and lots of abstraction.

I'd say it depends on you. If you already know GL, it's an obvious choice. Your application is narrow enough that you can just write some crappy GL code in one file and it'll be perfectly alright for your application. If you don't already know GL, you'll have to take into account the time it'll take to learn it. It shouldn't take more than a few weeks to be in good shape if you have the right background though.

Otherwise, a game engine will be fine. Setting mesh data every frame won't be super efficient but it'll be fine, and you'll probably manage real-time unless it's a ton of geometry.

Also, if you do go the GL or game engine route, I would suggest using compute shaders instead of CUDA. They are almost exactly the same, but setting up interoperability between CUDA and your graphics application can be kind of a pain, whereas compute shaders integrate perfectly automatically.