1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-24 15:26:15 +00:00

Modify inertia implementation for freelook and orbit

- freelook now uses position based inertia (holding a key for a
   specific time always rults in the same distance traveled independent
of inertia setting)
 - orbit inertia now is angle bases. (not transformation based) ->
   camera always takes the same path.
 - added setting for orbit inertia
 - added setting hints for freelook settings.
This commit is contained in:
toger5
2017-09-06 19:53:00 +02:00
parent 44f12be3f4
commit b1f804094d
3 changed files with 36 additions and 45 deletions

View File

@@ -676,9 +676,15 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) {
set("editors/3d/warped_mouse_panning", true);
set("editors/3d/orbit_sensitivity", 0.4);
set("editors/3d/freelook_inertia", 3);
set("editors/3d/freelook_base_speed", 1);
set("editors/3d/orbit_inertia", 0.2);
hints["editors/3d/orbit_inertia"] = PropertyInfo(Variant::REAL, "editors/3d/orbit_inertia", PROPERTY_HINT_RANGE, "0.0, 1, 0.01");
set("editors/3d/freelook_inertia", 0.2);
hints["editors/3d/freelook_inertia"] = PropertyInfo(Variant::REAL, "editors/3d/freelook_inertia", PROPERTY_HINT_RANGE, "0.0, 1, 0.01");
set("editors/3d/freelook_base_speed", 0.5);
hints["editors/3d/freelook_base_speed"] = PropertyInfo(Variant::REAL, "editors/3d/freelook_base_speed", PROPERTY_HINT_RANGE, "0.0, 10, 0.1");
set("editors/3d/freelook_activation_modifier", 0);
hints["editors/3d/freelook_activation_modifier"] = PropertyInfo(Variant::INT, "editors/3d/freelook_activation_modifier", PROPERTY_HINT_ENUM, "None,Shift,Alt,Meta,Ctrl");