### Godot version

v4.0.beta.custom_build [2afa17519]

### System information

Windows 10, Forward+, NVIDIA GeForce GTX 1050 Ti (31.0.15.1694)

### Issue description

Attempting to tile multiple noise textures with the same settings will create visible seams between them.

Image of 4 noise textures creating seams between them
![noise_seam](https://user-images.githubusercontent.com/10490534/215283424-5dcd06ca-32be-4bf1-827d-654e3f640e8e.png)

It seems to be due to the values being normalized, as can be seen here:
https://github.com/godotengine/godot/blob/218bef90af2091afde3b1be816c87286c194a2a8/modules/noise/noise.cpp#L87

It would be nice if this could be an option instead of hard coded into the noise texture.

### Steps to reproduce

- Create two Sprite2D
- Give them a noise texture
- Make sure both the texture and the noise object of the two sprites are unique
- Reposition the sprites so their edges connect
- Set the noise offsets to the sprite's position
- Observe the textures seemingly tile well with the exception of a visible seam

### Minimal reproduction project

This test project uses a \@tool script for the `noise` scene to duplicate the texture and noise object on `_ready`.
Reopen the `main` scene to refresh textures.
[noise_seam.zip](https://github.com/godotengine/godot/files/10527941/noise_seam.zip)
GDCLASS(NoiseTexture2D, Texture2D);
private:
	Ref<Image> image;
	Thread noise_thread;
	bool first_time = true;
	bool update_queued = false;
	bool regen_queued = false;
	mutable RID texture;
	uint32_t flags = 0;
	Size2i size = Size2i(512, 512);
	bool invert = false;
	bool in_3d_space = false;
	bool generate_mipmaps = true;
	bool seamless = false;
	real_t seamless_blend_skirt = 0.1;
	bool as_normal_map = false;
	float bump_strength = 8.0;
	Ref<Gradient> color_ramp;
	Ref<Noise> noise;
	void _thread_done(const Ref<Image> &p_image);
	static void _thread_function(void *p_ud);
	void _queue_update();
	Ref<Image> _generate_texture();
	void _update_texture();
	void _set_texture_image(const Ref<Image> &p_image);
	Ref<Image> _modulate_with_gradient(Ref<Image> p_image, Ref<Gradient> p_gradient);
protected:
	static void _bind_methods();
	void _validate_property(PropertyInfo &p_property) const;
public: