Progress!
After stumbling around with the basics, I have verified that one of the solutions may work (but will require a MASSIVE amount of transposition)
//Woefully short of the 2300 lines I need to transpose
struct Functions
{
//define the contents of a noise state struct
struct fnl_state
{
float seed;
//need to pass in all of the other struct variables
};
//create a struct containing all of the noise values
fnl_state createState(float i)
{
fnl_state newState;
newState.seed = i;
//need to pass in all of the other struct variables
return newState;
}
//placeholder noise functio
float3 fnlGetNoise3D(fnl_state state)
{
return float3(0, state.seed, 0); //if Seed_In is 1, this will return green.
}
};
Functions f;
return f.fnlGetNoise3D(f.createState(Seed_In));