LeviLamina
Loading...
Searching...
No Matches
PerlinSimplexNoise.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class IRandom;
8class SimplexNoise;
9class Vec2;
10class Vec3;
11// clang-format on
12
13class PerlinSimplexNoise {
14public:
15 // member variables
16 // NOLINTBEGIN
17 ::ll::TypedStorage<4, 4, int> mLevels;
18 ::ll::TypedStorage<8, 24, ::std::vector<::SimplexNoise>> mNoiseLevels;
19 ::ll::TypedStorage<4, 4, float> mNormalizationFactor;
20 // NOLINTEND
21
22public:
23 // prevent constructor by default
24 PerlinSimplexNoise();
25
26public:
27 // member functions
28 // NOLINTBEGIN
29 MCAPI PerlinSimplexNoise(uint seed, int levels);
30
31 MCAPI PerlinSimplexNoise(::IRandom& r, int levels, bool parityInitialization);
32
33 MCAPI float* getRegion(
34 float* buffer,
35 ::Vec2 const& pos,
36 int xSize,
37 int ySize,
38 ::Vec2 const& scale,
39 float sizeScale,
40 float powScale
41 ) const;
42
43 MCAPI float getValue(::Vec3 const& pos) const;
44
45 MCAPI float getValue(float x, float y) const;
46
47 MCAPI float getValueNormalized(::Vec3 const& pos) const;
48
49 MCAPI float getValueNormalized(float x, float y) const;
50
51 MCAPI ~PerlinSimplexNoise();
52 // NOLINTEND
53
54public:
55 // constructor thunks
56 // NOLINTBEGIN
57 MCAPI void* $ctor(uint seed, int levels);
58
59 MCAPI void* $ctor(::IRandom& r, int levels, bool parityInitialization);
60 // NOLINTEND
61
62public:
63 // destructor thunk
64 // NOLINTBEGIN
65 MCFOLD void $dtor();
66 // NOLINTEND
67};
Definition IRandom.h:10
Definition SimplexNoise.h:14
Definition Vec2.h:5
Definition Vec3.h:10
Definition buffer.h:5