فهرست منبع

Merge pull request #78365 from smix8/ps_navmap_default_up_4.x

Add ProjectSettings navigation map default up
Yuri Sizov 2 سال پیش
والد
کامیت
4b0d1026af
3فایلهای تغییر یافته به همراه5 افزوده شده و 0 حذف شده
  1. 3 0
      doc/classes/ProjectSettings.xml
  2. 1 0
      scene/resources/world_3d.cpp
  3. 1 0
      servers/navigation_server_3d.cpp

+ 3 - 0
doc/classes/ProjectSettings.xml

@@ -1967,6 +1967,9 @@
 		<member name="navigation/3d/default_link_connection_radius" type="float" setter="" getter="" default="1.0">
 			Default link connection radius for 3D navigation maps. See [method NavigationServer3D.map_set_link_connection_radius].
 		</member>
+		<member name="navigation/3d/default_up" type="Vector3" setter="" getter="" default="Vector3(0, 1, 0)">
+			Default up orientation for 3D navigation maps. See [method NavigationServer3D.map_set_up].
+		</member>
 		<member name="navigation/3d/use_edge_connections" type="bool" setter="" getter="" default="true">
 			If enabled 3D navigation regions will use edge connections to connect with other navigation regions within proximity of the navigation map edge connection margin. This setting only affects World3D default navigation maps.
 		</member>

+ 1 - 0
scene/resources/world_3d.cpp

@@ -68,6 +68,7 @@ RID World3D::get_navigation_map() const {
 		NavigationServer3D::get_singleton()->map_set_active(navigation_map, true);
 		NavigationServer3D::get_singleton()->map_set_cell_size(navigation_map, GLOBAL_GET("navigation/3d/default_cell_size"));
 		NavigationServer3D::get_singleton()->map_set_cell_height(navigation_map, GLOBAL_GET("navigation/3d/default_cell_height"));
+		NavigationServer3D::get_singleton()->map_set_up(navigation_map, GLOBAL_GET("navigation/3d/default_up"));
 		NavigationServer3D::get_singleton()->map_set_use_edge_connections(navigation_map, GLOBAL_GET("navigation/3d/use_edge_connections"));
 		NavigationServer3D::get_singleton()->map_set_edge_connection_margin(navigation_map, GLOBAL_GET("navigation/3d/default_edge_connection_margin"));
 		NavigationServer3D::get_singleton()->map_set_link_connection_radius(navigation_map, GLOBAL_GET("navigation/3d/default_link_connection_radius"));

+ 1 - 0
servers/navigation_server_3d.cpp

@@ -192,6 +192,7 @@ NavigationServer3D::NavigationServer3D() {
 
 	GLOBAL_DEF_BASIC("navigation/3d/default_cell_size", 0.25);
 	GLOBAL_DEF_BASIC("navigation/3d/default_cell_height", 0.25);
+	GLOBAL_DEF("navigation/3d/default_up", Vector3(0, 1, 0));
 	GLOBAL_DEF("navigation/3d/use_edge_connections", true);
 	GLOBAL_DEF_BASIC("navigation/3d/default_edge_connection_margin", 0.25);
 	GLOBAL_DEF_BASIC("navigation/3d/default_link_connection_radius", 1.0);