### Godot version

4.0 (.NET)

### System information

Windows 11

### Issue description

I have a global uniform vec4 in my shader. I was trying to set this value from code, using:

`RenderingServer.GlobalShaderParameterSet("vector4test", new Vector4(1f, 0.0f, 0.0f, 1.0f))`

This did not work, it seems the uniform was still at some default or invalid value. This is confirmed by running this afterwards:

`RenderingServer.GlobalShaderParameterGet("vector4test").As<Vector4>()`

Which also returns a zero'ed Vector4, not the vector I passed in.

After some time of head-scratching, I tried passing the value as a Plane instead of a Vector4. Then, it worked.

The [documentation](https://docs.godotengine.org/en/stable/tutorials/shaders/shader_reference/shading_language.html) says that Vector4 type can be used to set vec4 shader types in GDscript (no mention of C# but I assume it should be the same). However this implementation seems to be broken.

### Steps to reproduce

Run attached project. Observe that nothing is visible. Change the line in the MeshInstance3D.cs script and observe that the plane with the shader suddenly appears when running it again.

### Minimal reproduction project

[Vector4Test.zip](https://github.com/godotengine/godot/files/11003334/Vector4Test.zip)

matches.insert(block->parent_function->arguments[i].name, ScriptLanguage::CODE_COMPLETION_KIND_VARIABLE);
							}
						}
						skip_function = block->parent_function->name;
					}
					block = block->parent_block;
				}
				if (comp_ident) {
					if (is_shader_inc) {
						for (int i = 0; i < RenderingServer::SHADER_MAX; i++) {
							const HashMap<StringName, ShaderLanguage::FunctionInfo> info = ShaderTypes::get_singleton()->get_functions(RenderingServer::ShaderMode(i));
							if (info.has("global")) {
								for (const KeyValue<StringName, BuiltInInfo> &E : info["global"].built_ins) {
									ScriptLanguage::CodeCompletionKind kind = ScriptLanguage::CODE_COMPLETION_KIND_MEMBER;
									if (E.value.constant) {
										kind = ScriptLanguage::CODE_COMPLETION_KIND_CONSTANT;
									}
									matches.insert(E.key, kind);
								}
							}
							if (info.has("constants")) {
								for (const KeyValue<StringName, BuiltInInfo> &E : info["constants"].built_ins) {
									ScriptLanguage::CodeCompletionKind kind = ScriptLanguage::CODE_COMPLETION_KIND_MEMBER;
									if (E.value.constant) {
										kind = ScriptLanguage::CODE_COMPLETION_KIND_CONSTANT;
									}
									matches.insert(E.key, kind);
								}
							}
							if (skip_function != StringName() && info.has(skip_function)) {