mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	Removed transparency from spatial editor grid.
This commit is contained in:
		
							parent
							
								
									f577efd47e
								
							
						
					
					
						commit
						e2861a3b7c
					
				
					 2 changed files with 21 additions and 72 deletions
				
			
		|  | @ -665,7 +665,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { | |||
| 
 | ||||
| 	_initial_set("editors/grid_map/pick_distance", 5000.0); | ||||
| 
 | ||||
| 	_initial_set("editors/3d/grid_color", Color(1, 1, 1, 0.2)); | ||||
| 	_initial_set("editors/3d/grid_color", Color::html("808080")); | ||||
| 	hints["editors/3d/grid_color"] = PropertyInfo(Variant::COLOR, "editors/3d/grid_color", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_RESTART_IF_CHANGED); | ||||
| 
 | ||||
| 	_initial_set("editors/3d/default_fov", 55.0); | ||||
|  |  | |||
|  | @ -3728,12 +3728,9 @@ void SpatialEditor::_init_indicators() { | |||
| 
 | ||||
| 		indicator_mat.instance(); | ||||
| 		indicator_mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); | ||||
| 		//indicator_mat->set_flag(SpatialMaterial::FLAG_ONTOP,true);
 | ||||
| 		indicator_mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); | ||||
| 		indicator_mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); | ||||
| 
 | ||||
| 		indicator_mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); | ||||
| 
 | ||||
| 		PoolVector<Color> grid_colors[3]; | ||||
| 		PoolVector<Vector3> grid_points[3]; | ||||
| 		Vector<Color> origin_colors; | ||||
|  | @ -3753,50 +3750,31 @@ void SpatialEditor::_init_indicators() { | |||
| 			origin_colors.push_back(Color(axis.x, axis.y, axis.z)); | ||||
| 			origin_points.push_back(axis * 4096); | ||||
| 			origin_points.push_back(axis * -4096); | ||||
| #define ORIGIN_GRID_SIZE 100 | ||||
| #define ORIGIN_GRID_SIZE 50 | ||||
| 
 | ||||
| 			for (int j = -ORIGIN_GRID_SIZE; j <= ORIGIN_GRID_SIZE; j++) { | ||||
| 
 | ||||
| 				for (int k = -ORIGIN_GRID_SIZE; k <= ORIGIN_GRID_SIZE; k++) { | ||||
| 				Vector3 p1 = axis_n1 * j + axis_n2 * -ORIGIN_GRID_SIZE; | ||||
| 				Vector3 p1_dest = p1 * (-axis_n2 + axis_n1); | ||||
| 				Vector3 p2 = axis_n2 * j + axis_n1 * -ORIGIN_GRID_SIZE; | ||||
| 				Vector3 p2_dest = p2 * (-axis_n1 + axis_n2); | ||||
| 
 | ||||
| 					Vector3 p = axis_n1 * j + axis_n2 * k; | ||||
| 					float trans = Math::pow(MAX(0, 1.0 - (Vector2(j, k).length() / ORIGIN_GRID_SIZE)), 2); | ||||
| 
 | ||||
| 					Vector3 pj = axis_n1 * (j + 1) + axis_n2 * k; | ||||
| 					float transj = Math::pow(MAX(0, 1.0 - (Vector2(j + 1, k).length() / ORIGIN_GRID_SIZE)), 2); | ||||
| 
 | ||||
| 					Vector3 pk = axis_n1 * j + axis_n2 * (k + 1); | ||||
| 					float transk = Math::pow(MAX(0, 1.0 - (Vector2(j, k + 1).length() / ORIGIN_GRID_SIZE)), 2); | ||||
| 
 | ||||
| 					Color trans_color = grid_color; | ||||
| 					trans_color.a *= trans; | ||||
| 
 | ||||
| 					Color transk_color = grid_color; | ||||
| 					transk_color.a *= transk; | ||||
| 
 | ||||
| 					Color transj_color = grid_color; | ||||
| 					transj_color.a *= transj; | ||||
| 
 | ||||
| 					if (j % 10 == 0 || k % 10 == 0) { | ||||
| 						trans_color.a *= 2; | ||||
| 					} | ||||
| 					if ((k + 1) % 10 == 0) { | ||||
| 						transk_color.a *= 2; | ||||
| 					} | ||||
| 					if ((j + 1) % 10 == 0) { | ||||
| 						transj_color.a *= 2; | ||||
| 				Color line_color = grid_color; | ||||
| 				if (j == 0) { | ||||
| 					continue; | ||||
| 				} else if (j % 10 == 0) { | ||||
| 					line_color *= 1.5; | ||||
| 				} | ||||
| 
 | ||||
| 					grid_points[i].push_back(p); | ||||
| 					grid_points[i].push_back(pk); | ||||
| 					grid_colors[i].push_back(trans_color); | ||||
| 					grid_colors[i].push_back(transk_color); | ||||
| 				grid_points[i].push_back(p1); | ||||
| 				grid_points[i].push_back(p1_dest); | ||||
| 				grid_colors[i].push_back(line_color); | ||||
| 				grid_colors[i].push_back(line_color); | ||||
| 
 | ||||
| 					grid_points[i].push_back(p); | ||||
| 					grid_points[i].push_back(pj); | ||||
| 					grid_colors[i].push_back(trans_color); | ||||
| 					grid_colors[i].push_back(transj_color); | ||||
| 				} | ||||
| 				grid_points[i].push_back(p2); | ||||
| 				grid_points[i].push_back(p2_dest); | ||||
| 				grid_colors[i].push_back(line_color); | ||||
| 				grid_colors[i].push_back(line_color); | ||||
| 			} | ||||
| 
 | ||||
| 			grid[i] = VisualServer::get_singleton()->mesh_create(); | ||||
|  | @ -3839,32 +3817,6 @@ void SpatialEditor::_init_indicators() { | |||
| 		last_grid_snap = 1; | ||||
| 	} | ||||
| 
 | ||||
| 	{ | ||||
| 		cursor_mesh = VisualServer::get_singleton()->mesh_create(); | ||||
| 		PoolVector<Vector3> cursor_points; | ||||
| 		float cs = 0.25; | ||||
| 		cursor_points.push_back(Vector3(+cs, 0, 0)); | ||||
| 		cursor_points.push_back(Vector3(-cs, 0, 0)); | ||||
| 		cursor_points.push_back(Vector3(0, +cs, 0)); | ||||
| 		cursor_points.push_back(Vector3(0, -cs, 0)); | ||||
| 		cursor_points.push_back(Vector3(0, 0, +cs)); | ||||
| 		cursor_points.push_back(Vector3(0, 0, -cs)); | ||||
| 		cursor_material.instance(); | ||||
| 		cursor_material->set_albedo(Color(0, 1, 1)); | ||||
| 		cursor_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); | ||||
| 
 | ||||
| 		Array d; | ||||
| 		d.resize(VS::ARRAY_MAX); | ||||
| 		d[VS::ARRAY_VERTEX] = cursor_points; | ||||
| 		VisualServer::get_singleton()->mesh_add_surface_from_arrays(cursor_mesh, VS::PRIMITIVE_LINES, d); | ||||
| 		VisualServer::get_singleton()->mesh_surface_set_material(cursor_mesh, 0, cursor_material->get_rid()); | ||||
| 
 | ||||
| 		cursor_instance = VisualServer::get_singleton()->instance_create2(cursor_mesh, get_tree()->get_root()->get_world()->get_scenario()); | ||||
| 		VS::get_singleton()->instance_set_layer_mask(cursor_instance, 1 << SpatialEditorViewport::GIZMO_GRID_LAYER); | ||||
| 
 | ||||
| 		VisualServer::get_singleton()->instance_geometry_set_cast_shadows_setting(cursor_instance, VS::SHADOW_CASTING_SETTING_OFF); | ||||
| 	} | ||||
| 
 | ||||
| 	{ | ||||
| 
 | ||||
| 		//move gizmo
 | ||||
|  | @ -4058,9 +4010,6 @@ void SpatialEditor::_finish_indicators() { | |||
| 	//VisualServer::get_singleton()->free(poly);
 | ||||
| 	//VisualServer::get_singleton()->free(indicators_instance);
 | ||||
| 	//VisualServer::get_singleton()->free(indicators);
 | ||||
| 
 | ||||
| 	VisualServer::get_singleton()->free(cursor_instance); | ||||
| 	VisualServer::get_singleton()->free(cursor_mesh); | ||||
| } | ||||
| 
 | ||||
| bool SpatialEditor::is_any_freelook_active() const { | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Daniel J. Ramirez
						Daniel J. Ramirez