Material Sine in C++

Hello,
I have done gerstner waves material and now I want to reproduce it in C++.
Does anyone know how to reproduce Sine function in C++?

Unreal has a math utility class called FMath. You will want to use its SinCos function it will look like this:

float sinVal, cosVal;
FMath::SinCos(&sinVal, &cosVal, inputVal);

inputVal is whatever you are trying to compute the Sine of.

Material Sine is described here Math Expressions | Unreal Engine Documentation And it’s not clear sin.

If anyone is looking for Sine in C++ it looks like this:

float Sine(float x)
{
	float result = x * PI * 2;
	result = FMath::Sin(result);

	return FMath::Clamp(result, -1.f, 1.f);
}

It’s not perfect though.

Thanks for answer but it’s not what I have been searching for.

I’m still wondering if there’s a better way to this, as this gives me a bit wrong result.

If you are trying to calculate the value of Sine or Cosine withing a material function, I believe there is a serious bug in UE.

the sine function returns -.43 for sin(1.57079).

I created a custom function (MySine) that correctly calculates the value:

There is no bug. Material function sine takes phase input in 0-1 instead of radians.