I’m a CS graduate student mainly working on physically-based rendering methods, I am also bold enough to claim a relatively high level of proficiency in both C and C++. I have a number of questions as I’m considering switching the implementation of a project from Qt/OpenGL to UE4. Your help is truly appreciated
I’m working on a project for our graphics lab, I won’t go into details about the project, but we have decided on working with C++ for implementation, OpenGL for visualization, and Qt for GUI, but now that UE4 is free, I was thinking if the engine can help us avoiding direct interaction with OpenGL and Qt, which I must admit is a diversion from the project’s main goals and at the end won’t end up looking attractive for all that trouble. I must add I’m fairly comfortable working with OpenGL but don’t know anything about Qt and will have to learn it from scratch.
Now with the above background, I was wondering if in general UE4 can be used to implement a full-screen UI with drop-down menus, progress bar, buttons, check-box, radio button, vertical/horizontal sliders, and alike; I would also like to know if having a working C++ implementation of an algorithm, we can use UE4 to visualize the algorithm as it is working, let’s say there is a scene and the algorithm performs some measurements and calculations on the scene objects, we would like to display the algorithm’s interactions with these objects while display the intermediate results on a menu.
I’m sure the above can be done using UE4, I can think of this as a game, the algorithm’s interaction with the scene as the game-play, UI and user input are also similar to what one would have in a game.
But I guess my main concern is that how easy it is to integrate a working C++ piece of code with the engine, think of it as implementing the game-play in C++. Knowing that following the original plan we will have to learn Qt from scratch and it will take some time (while being a diversion from project’s main goals), I’m guessing learning UE4 should be easier and more rewarding. Any thoughts on this?