diff -r 57293f34ce59 -r cc6ab1e3f7d5 qmlfrontend/engine_instance.cpp --- a/qmlfrontend/engine_instance.cpp Fri Mar 22 21:06:12 2019 +0100 +++ b/qmlfrontend/engine_instance.cpp Fri Mar 22 21:29:10 2019 +0100 @@ -41,11 +41,13 @@ reinterpret_cast(hwlib.resolve("render_frame")); advance_simulation = reinterpret_cast( hwlib.resolve("advance_simulation")); + move_camera = + reinterpret_cast(hwlib.resolve("move_camera")); m_isValid = hedgewars_engine_protocol_version && start_engine && generate_preview && dispose_preview && cleanup && send_ipc && read_ipc && setup_current_gl_context && render_frame && - advance_simulation; + advance_simulation && move_camera; emit isValidChanged(m_isValid); if (isValid()) { @@ -53,6 +55,8 @@ << hedgewars_engine_protocol_version(); m_instance = start_engine(); + } else { + qDebug("Engine library load failed"); } } @@ -71,6 +75,10 @@ advance_simulation(m_instance, ticks); } +void EngineInstance::moveCamera(const QPoint& delta) { + move_camera(m_instance, delta.x(), delta.y()); +} + void EngineInstance::renderFrame() { render_frame(m_instance); } void EngineInstance::setOpenGLContext(QOpenGLContext* context) {