Jump to content

No Noise on vector


Arthur Spooner

Recommended Posts

@tgh is not your position attribute.

you gave it the position values but it's not link to your position attribute.

you will have to set your new position values

@P = noise(@tgh);

I know I already told you this, but based on your questions, I highly recommend you to take some introduction courses. It will help you a lot.

You can find courses on coursera or any other website

https://www.coursera.org/courses/?languages=en&query=introduction%20to%20programming

you will see, once you will understand those basic operations, it will make it much easier for you.

Link to comment
Share on other sites

3 hours ago, holycause said:

I know I already told you this, but based on your questions, I highly recommend you to take some introduction courses. It will help you a lot.

You can find courses on coursera or any other website

https://www.coursera.org/courses/?languages=en&query=introduction%20to%20programming

you will see, once you will understand those basic operations, it will make it much easier for you.

I've taken introduction courses, I just have to do a little when time permits until I understand, it will be tedious; unless you know of any courses which can fast track ?

 

Ohh I set the the attribute, then I have to get it and set it on the point position :mellow:

Edited by Arthur Spooner
Link to comment
Share on other sites

f@apl = ch("noise");

This works, but it doesn't change the noise, the values for @apl change but there all the same value when they change ?

I did another code adjustment trying to get it to work;

@P.y = ch("noise",noise(@tgh));

In this case, my grid moves but the noise is not applied ?

Edited by Arthur Spooner
Link to comment
Share on other sites

I suppose you have a parameter added to the pointwrangle node called "noise" and you want to use it as a multiplier for the general noise?

Then you can read the parameter:

float noiseMultiplier = ch("noise");

Then you can calculate the noise itself:

vector noiseVector = noise(@P);

And apply the whole thing to the @P:

@P = noiseVector * noiseMultiplier;

 

Link to comment
Share on other sites

I want a slider to control the noise, when the slider is at 0, no noise, anything above 0 there is noise ?

I set the point position on an vector attribute, then I assigned that attribute to noise() on the position.y that all works successful but what isn't working is applying the noise to a slider or I believe it's called channel ?

v@tgh = @P;
@P.y = noise(@tgh);
@apl = ch("noise");


 

Link to comment
Share on other sites

@apl = ch("noise")

Does not really do anything. You're setting an attribute of an unknown type (you really should specify the type) to a channel value. The attribute is just made up. So that's like saying my_gobblygook = a slider. What did you expect the code to do for you?

Link to comment
Share on other sites

2 hours ago, Atom said:

@apl = ch("noise")

Does not really do anything. You're setting an attribute of an unknown type (you really should specify the type) to a channel value. The attribute is just made up. So that's like saying my_gobblygook = a slider. What did you expect the code to do for you?

I know I'm only setting it, I know it's wrong but the only other code method I know is

float ch("noise",@apl);

that doesn't work either :unsure:

 

@P.y = noise(ch("noise"));

The grid moves, but no noise is applied ?

Edited by Arthur Spooner
Code
Link to comment
Share on other sites

There is this website called google where you can search for things. I found this link.

http://www.sidefx.com/docs/houdini15.0/expressions/ch

It clearly shows that the ch function does not accept two parameters. Also you are trying to define it as a float, it is not a variable, it returns values. There are companion functions such as chf (which returns a float) and chs (which returns a string).

Link to comment
Share on other sites

as holycause told you, and as I told you too, you should start at the beginning.

All your threads and questions are clearly showing a lack of the basic knowledge. And I'm not mocking you, I am too in the process of learning houdini.
I've accepted to help you via skype, and I could see that you need to understand the basic philosophy of houdini before you can tackle some vex coding.

It's like your asking for help to pilot an space shuttle when you've never rode a bike !

Link to comment
Share on other sites

if you want to control the amplitude of the noise, you need to multiply the result of the noise() function

so for example :

@P.y = noise(@P) * ch("amp");

if you decide you need to have control over frequency as well then you can do this:

@P.y = noise(@P*chv("freq")) * ch("amp");

and with offset control it would be:

@P.y = noise(@P*chv("freq")+chv("offset")) * ch("amp");

 

Edited by anim
Link to comment
Share on other sites

16 hours ago, anim said:

if you want to control the amplitude of the noise, you need to multiply the result of the noise() function

so for example :


@P.y = noise(@P) * ch("amp");

if you decide you need to have control over frequency as well then you can do this:


@P.y = noise(@P*chv("freq")) * ch("amp");

and with offset control it would be:


@P.y = noise(@P*chv("freq")+chv("offset")) * ch("amp");

 

I assume you only need to use, for example, the temp variable vector chv  if you are creating the variable, not if you are applying it, as in the last two VEX code examples ? I thought noise needs three values,  there is four if you including @P; I'm probably completely wrong in the sense that you need three values. I don't see the big difference between chv & ch ?

How do I keep the grid stuck at it's position because currently it moves on the Y in the world ? Thanks for help up to this point, truly am appreciative

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...