Skip to content

Commit 78e37ad

Browse files
boooooommmmmmShuyan HuOl6rin
authored
can adjust camera move speed by holding right mouse button and scroll (#140)
* can adjust camera move speed by holding right mouse button and scroll * fix the coding style * coding style Co-authored-by: Shuyan Hu <shuyan.hu@dena.com> Co-authored-by: Olorin <muhan.liu@boomingtech.com>
1 parent 91edfa9 commit 78e37ad

File tree

2 files changed

+25
-3
lines changed

2 files changed

+25
-3
lines changed

engine/source/editor/include/editor_ui.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ namespace Pilot
8080
Vector2 m_engine_window_size {1280.0f, 768.0f};
8181
float m_mouse_x {0.0f};
8282
float m_mouse_y {0.0f};
83+
float m_camera_speed {0.05f};
8384

8485
bool m_is_editor_mode {true};
8586
int m_key_state {0};

engine/source/editor/source/editor_ui.cpp

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ namespace Pilot
3737
Pilot::Quaternion& values,
3838
float resetValue = 0.0f,
3939
float columnWidth = 100.0f);
40+
4041
EditorUI::EditorUI(PilotEditor* editor) : m_editor(editor)
4142
{
4243
Path& path_service = Path::getInstance();
@@ -690,6 +691,11 @@ namespace Pilot
690691
{
691692
ImGui::TextColored(ImVec4(1.0f, 0.0f, 0.0f, 1.0f), "Press Left Alt key to display the mouse cursor!");
692693
}
694+
else
695+
{
696+
ImGui::TextColored(
697+
ImVec4(0.0f, 1.0f, 0.0f, 1.0f), "Current editor camera move speed: [%f]", m_camera_speed);
698+
}
693699

694700
auto menu_bar_rect = ImGui::GetCurrentWindow()->MenuBarRect();
695701

@@ -877,7 +883,7 @@ namespace Pilot
877883

878884
void EditorUI::processEditorCommand()
879885
{
880-
float camera_speed = 0.05f;
886+
float camera_speed = m_camera_speed;
881887
Quaternion camera_rotate = m_tmp_uistate->m_editor_camera->rotation().inverse();
882888
Vector3 camera_relative_pos(0, 0, 0);
883889

@@ -977,10 +983,25 @@ namespace Pilot
977983
{
978984
return;
979985
}
980-
// wheel scrolled up = zoom in by 2 extra degrees
986+
981987
if (isCursorInRect(m_engine_window_pos, m_engine_window_size))
982988
{
983-
m_tmp_uistate->m_editor_camera->zoom((float)yoffset * 2.0f);
989+
if (m_io->isMouseButtonDown(GLFW_MOUSE_BUTTON_RIGHT))
990+
{
991+
if (yoffset > 0)
992+
{
993+
m_camera_speed *= 1.2f;
994+
}
995+
else
996+
{
997+
m_camera_speed *= 0.8f;
998+
}
999+
}
1000+
else
1001+
{
1002+
m_tmp_uistate->m_editor_camera->zoom((float)yoffset *
1003+
2.0f); // wheel scrolled up = zoom in by 2 extra degrees
1004+
}
9841005
}
9851006
}
9861007

0 commit comments

Comments
 (0)