TOZ Noise

This package is an enhanced Noise Library adapted for Unity Game Engine.

Used for generating heightmaps for Unity Terrain, TOZ Planet Renderer and mesh objects. Also used for generating Procedural Textures and BumpMaps and lightmaps. This package also can generate 3d volume textures and save NoiseMaps.

TOZ Planet Renderer includes a slightly modified version for free and as a support tool to generate some useful assets.

Buy From:
ASSETSTORE

  • This asset has now a commercial licence, if you got it for free previously, do not worry as you can still use the old version for free with your own personal productions, however if you sell it as a part of another tool or package, new terms and licence apply.

Can it animate in real time curved line noises like electricity and chemical blends.
Can you make a demo of such.
If so I will probably buy it.
As of now I'm not sure what it can do other than generate textures.

Thanks

[quote=“rosevelt”, post:2, topic: 492486]
Can it animate in real time curved line noises like electricity and chemical blends.
Can you make a demo of such.
If so I will probably buy it.
As of now I’m not sure what it can do other than generate textures.

Thanks
[/quote]

You can do anything with it, just needs coding the logic. Noise functions are there which provide 4d,3d,2d,1d noises also projected as plane, cylinder, line and sphere.

So, you make a mesh of a simple plane object, get suitable 2d or 3d noise value and move the plane vertices with this noise value. Thats it.

Custom support is always available via mail.

Hi,
what is the main difference to the Libnoise Port to Unity http://forum.unity3d.com/threads/68764-LibNoise-Ported-to-Unity ?
(Same features but with a editor frontend?)

[quote=“sloopidoopi”, post:4, topic: 492486]
Hi,
what is the main difference to the Libnoise Port to Unity http://forum.unity3d.com/threads/68764-LibNoise-Ported-to-Unity ?
(Same features but with a editor frontend?)
[/quote]

The main difference is i wrote this one from scratch and tried to keep it exactly same as original c++ source.
Added important tutorial files and 2-3 sample files as well.
And an editor as well.

What are the capabilities during runtime?

Say if a player wants to create a terrain, can your library be used to select parameters and have all the same functionality during runtime?

[quote=“SimtropBuggi”, post:6, topic: 492486]
What are the capabilities during runtime?

Say if a player wants to create a terrain, can your library be used to select parameters and have all the same functionality during runtime?
[/quote]

LibNoise is a noise library, it gives you generic functions to easily create various kind of noise.
If you can find an optimal way to set terrain vertices at certain heights through these generated noise functions, then the answer is yes.
But this package doesnt give you the optimal way, it gives you the noise functions alone.

I can't find this on the asset store but am interested in a supported libnoise with demos, particularly around terrain generation. Can you please message me.

Cheers,
Adam.

Hi Aubergine,

I'd like to start by saying thank-you for this great port! I've been using the port from Pakfront for a while now and recently decided to create an inspector based extension to it for visual generation. I was only about 1/2 way through when I stumbled upon your port and I've consequently dumped my work since yours fits the bill very nicely!
I really like how you have stayed true to the original.

Edit: I just realised what was going on. You were creating the object based on an interface, but to get access to methods not available in the interface you have to cast to the correct type. Sorry for asking a silly question, I'll leave the below just in case someone else learns from it too.

I do have one question about the way you declare and cast your types, and please note I'm only asking because I think there is something i'm missing (or I might learn something here).
The question is: is the below example a code style of yours or is there a specific reason why you Type a variable as it's the base class Type, and then when creating the new object you create it as the desired Type there.

For example, in Tutorial5, why do you do this:

        IModule terrainType = new Perlin();
        ((Perlin)terrainType).Frequency = 0.5;
        ((Perlin)terrainType).Persistence = 0.25;
        IModule finalTerrain = new Select(flatTerrain, mountainTerrain, terrainType);
        ((Select)finalTerrain).SetBounds(0.0, 1000.0);
        ((Select)finalTerrain).SetEdgeFallOff(0.125);

instead of this:

        Perlin terrainType = new Perlin();
        terrainType.Frequency = 0.5;
        terrainType.Persistence = 0.25;
        Select finalTerrain = new Select(flatTerrain, mountainTerrain, terrainType);
        finalTerrain.SetBounds(0.0, 1000.0);
        finalTerrain.SetEdgeFallOff(0.125);

[quote]
Edit: I just realised what was going on. You were creating the object based on an interface, but to get access to methods not available in the interface you have to cast to the correct type. Sorry for asking a silly question, I'll leave the below just in case someone else learns from it too.
[/quote]

As you found out yourself, IModule is an interface and we cast the object to appropriate type later on because the generator functions and other tools all use the interface. Not necessary, but less code.

Hi again Aubergine,

I've had a think about it, and I don't think the casting is necessary. Please correct me if I'm wrong but the second block of code I posted will not throw compile or runtime errors as each time the object is used, it's used via the appropriate casting. For example when the Select (in the second block) needs access to the objects they request the IModule Type, which is valid due to the various modules implementing IModule within their class.

If we do it via the second method, it nearly 100% matches the original libnoise and has the added bonus of being far easier to read.

Can you think of any instance in your code that this would fail? I have to admit I haven't looked at any of the GUI code yet.

El

Edit: PS. Please don't think i'm attacking your code, I doubt I could replicate what you've done. I'm just keen to discuss it for my own understanding of C# Implements and me wanting to be lazy and not casting all the time :).

[quote=“Ellandar”, post:11, topic: 492486]
Hi again Aubergine,

I’ve had a think about it, and I don’t think the casting is necessary. Please correct me if I’m wrong but the second block of code I posted will not throw compile or runtime errors as each time the object is used, it’s used via the appropriate casting. For example when the Select (in the second block) needs access to the objects they request the IModule Type, which is valid due to the various modules implementing IModule within their class.

If we do it via the second method, it nearly 100% matches the original libnoise and has the added bonus of being far easier to read.

Can you think of any instance in your code that this would fail? I have to admit I haven’t looked at any of the GUI code yet.

El

Edit: PS. Please don’t think i’m attacking your code, I doubt I could replicate what you’ve done. I’m just keen to discuss it for my own understanding of C# Implements and me wanting to be lazy and not casting all the time :).
[/quote]

If you are not going to use NoiseBuilder and/or imagemap builder classes and related functions and tools, then you can use without casting.
But those classes dont know about individual modules, they only know the interface, thats why you have to cast from it.

[quote=“aubergine”, post:1, topic: 492486]
This package is a port of LibNoise for C++ directly to C# and Unity.
Also includes the Unity compatible NoiseUtils classes with all artificial lighting information as well as normal map generation.
Important tutorials 5, 6, 8 and example granite texture are also added.

DOWNLOAD
[/quote]

I just noticed; everyone that has posted so far, has had questions, criticisms and ask if they can use this. Not one yet has said ‘Great Job’ or even a ‘Thanks!’. So to you aubergine, Thank You! Well done. The editor was a nice touch. I was trying to add the textures to a sphere (using get pixels) but the seams of the mesh come apart. Do you have any suggestions on what I can do there or perhaps just applying noise to a sphere directly without a texture (although the texture is best). Thank you again so much.

[quote=“Chuckalicious”, post:13, topic: 492486]
I just noticed; everyone that has posted so far, has had questions, criticisms and ask if they can use this. Not one yet has said ‘Great Job’ or even a ‘Thanks!’. So to you aubergine, Thank You! Well done. The editor was a nice touch. I was trying to add the textures to a sphere (using get pixels) but the seams of the mesh come apart. Do you have any suggestions on what I can do there or perhaps just applying noise to a sphere directly without a texture (although the texture is best). Thank you again so much.
[/quote]

Thanks :slight_smile:
The editor has image builder for spherical distortion. Just render as spherical map and it will correctly map to a sphere.

[quote=“Chuckalicious”, post:13, topic: 492486]
I just noticed; everyone that has posted so far, has had questions, criticisms and ask if they can use this. Not one yet has said ‘Great Job’ or even a ‘Thanks!’…
[/quote]

[quote=“Ellandar”, post:9, topic: 492486]
Hi Aubergine,

I’d like to start by saying thank-you for this great port!..
[/quote]

One person had :slight_smile:

[quote=“Ellandar”, post:15, topic: 492486]
One person had :slight_smile:
[/quote]

Make that two :slight_smile:

Is it possible to make noise for water effects? Because this is a pretty cool looking package i could make use of!

[quote=“FuzzyQuills”, post:17, topic: 492486]
Is it possible to make noise for water effects? Because this is a pretty cool looking package i could make use of!
[/quote]

What do you mean by “water effects”? This is libnoise, plus a simple texture editor. The noise values range from -1 to +1 if you use the functions yourself.
The editor just normalizes the value between 0 and 1 and uses a gradient of your own choice to generate some texture.

If you mean caustics, yes you can, just use a ridge noise and use a black and white gradient.

@aubergine: yes, i meant caustics and wave maps. Sorry to be confusing. And thank you for your help!

+1 Download for you!

[quote=“FuzzyQuills”, post:19, topic: 492486]
@aubergine: yes, i meant caustics and wave maps. Sorry to be confusing. And thank you for your help!

+1 Download for you!
[/quote]

Well, im updating my website. If you cant find the download, check back soon again.