mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	Bug Fixes
-=-=-=-=- -Fixed problem with scaling shapes (#827), related to not taking scale in consideration for calculating the moment of inertia -Added support for multiline strings (or comments) using """ -Save subscene bug, properties not being saved in root node (#806) -Fix Crash in CollisionPolygon2DEditor (#814) -Restored Ability to compile without 3D (#795) -Fix InterpolatedCamera (#803) -Fix UV Import for OBJ Meshes (#771) -Fixed issue with modifier gizmos (#794) -Fixed CapsuleShape gizmo handle (#50) -Fixed Import Button (not properly working in 3D) (#733) -Many misc fixes (though no new features)
This commit is contained in:
		
							parent
							
								
									738eb2c1a8
								
							
						
					
					
						commit
						d85b67be53
					
				
					 56 changed files with 7513 additions and 1908 deletions
				
			
		|  | @ -158,13 +158,54 @@ void MeshInstanceEditor::_menu_option(int p_option) { | |||
| 			ur->add_undo_method(node,"remove_child",nmi); | ||||
| 			ur->commit_action(); | ||||
| 		} break; | ||||
| 		case MENU_OPTION_CREATE_OUTLINE_MESH: { | ||||
| 
 | ||||
| 			outline_dialog->popup_centered(Size2(200,80)); | ||||
| 		} break; | ||||
| 	} | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| void MeshInstanceEditor::_create_outline_mesh() { | ||||
| 
 | ||||
| 	Ref<Mesh> mesh = node->get_mesh(); | ||||
| 	if (mesh.is_null()) { | ||||
| 		err_dialog->set_text("MeshInstance lacks a Mesh!"); | ||||
| 		err_dialog->popup_centered(Size2(100,50)); | ||||
| 		return; | ||||
| 	} | ||||
| 
 | ||||
| 	Ref<Mesh> mesho = mesh->create_outline(outline_size->get_val()); | ||||
| 
 | ||||
| 	if (mesho.is_null()) { | ||||
| 		err_dialog->set_text("Could not create outline!"); | ||||
| 		err_dialog->popup_centered(Size2(100,50)); | ||||
| 		return; | ||||
| 	} | ||||
| 
 | ||||
| 	MeshInstance *mi = memnew( MeshInstance ); | ||||
| 	mi->set_mesh(mesho); | ||||
| 	Node *owner=node->get_owner(); | ||||
| 	if (get_scene()->get_edited_scene_root()==node) { | ||||
| 		owner=node; | ||||
| 	} | ||||
| 
 | ||||
| 	UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo(); | ||||
| 
 | ||||
| 	ur->create_action("Create Outline"); | ||||
| 
 | ||||
| 	ur->add_do_method(node,"add_child",mi); | ||||
| 	ur->add_do_method(mi,"set_owner",owner); | ||||
| 
 | ||||
| 	ur->add_do_reference(mi); | ||||
| 	ur->add_undo_method(node,"remove_child",mi); | ||||
| 	ur->commit_action(); | ||||
| } | ||||
| 
 | ||||
| void MeshInstanceEditor::_bind_methods() { | ||||
| 
 | ||||
| 	ObjectTypeDB::bind_method("_menu_option",&MeshInstanceEditor::_menu_option); | ||||
| 	ObjectTypeDB::bind_method("_create_outline_mesh",&MeshInstanceEditor::_create_outline_mesh); | ||||
| } | ||||
| 
 | ||||
| MeshInstanceEditor::MeshInstanceEditor() { | ||||
|  | @ -182,9 +223,23 @@ MeshInstanceEditor::MeshInstanceEditor() { | |||
| 	options->get_popup()->add_item("Create Convex Collision Sibling",MENU_OPTION_CREATE_CONVEX_COLLISION_SHAPE); | ||||
| 	options->get_popup()->add_separator(); | ||||
| 	options->get_popup()->add_item("Create Navigation Mesh",MENU_OPTION_CREATE_NAVMESH); | ||||
| 	options->get_popup()->add_separator(); | ||||
| 	options->get_popup()->add_item("Create Outline Mesh..",MENU_OPTION_CREATE_OUTLINE_MESH); | ||||
| 
 | ||||
| 	options->get_popup()->connect("item_pressed", this,"_menu_option"); | ||||
| 
 | ||||
| 	outline_dialog = memnew( ConfirmationDialog ); | ||||
| 	outline_dialog->set_title("Outline Size: "); | ||||
| 	outline_size = memnew( SpinBox ); | ||||
| 	outline_size->set_min(0.001); | ||||
| 	outline_size->set_max(1024); | ||||
| 	outline_size->set_step(0.001); | ||||
| 	outline_size->set_val(0.05); | ||||
| 	outline_dialog->add_child(outline_size); | ||||
| 	outline_dialog->set_child_rect(outline_size); | ||||
| 	add_child(outline_dialog); | ||||
| 	outline_dialog->connect("confirmed",this,"_create_outline_mesh"); | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Juan Linietsky
						Juan Linietsky