►Nnbody | Nbody namespace contains everything needed to run a certain number of particles through an n-body simulation |
CAABB | |
CParticle | |
CQuadTree | |
►Nnoisemachine | Everything needed to generate, modify and combine noise elements as well as everything needed to texture primitives with it |
►Ncombiner | Combiners require 2 or more source modules. They combine the results of these modules in a specific way |
CAddition | |
CBlend | |
CMax | |
CMin | |
CSelect | |
►Ngenerator | Generators are what produce the initial noise values. These are unique in that they don't require (and can't use) source modules to enable calls to GetValue() |
CConstant | |
CPerlinNoise | Perlin Noise was originally developed by Ken Perlin in 1983. It's a type of Gradient Noise, and was in fact the first. Gradient noise is a method of generating an even lattice of points, each of which has a single random gradient. Points within the lattice sections have their value determined by interpolating the gradients of the points that form the lattice around them. Perlin noise uses a grid (in 2D); other Gradient Noise, like Simplex Noise, uses different layouts of lattices |
CRings | |
CSimplexNoise | |
CVoronoi | Voronoi noise is very similar to WorleyNoise, but rather than give each unit the value of the nearest feature point, each feature point is given a random value within -1.0 and 1.0 and all unit points which are closest to it are assigned this value |
CWorleyNoise | Worley Noise is generates a Voronoi like pattern, but the individual values for each pixel within a sub-division is the distance to the nearest feature point. The borders of the sub-divisions are the integer coordinates; therefore, the frequency is used to zoom into the noise, and therefore map pixels to non-int coordinates within the noise |
►Nmodifier | Modifiers require and only accept 1 source module. They adjust the value from the source module in a specific way |
CBias | |
CClamp | |
CContrastCurve | |
CDisplace | |
CExponent | |
CfBm | |
CFunction | |
CMultiply | |
CRangeAdjust | |
CRidgedMultiFractal | Ridged Multi-Fractal Noise was originally devised by Forest Kenton Musgrave when he was working on Bryce. His original implementation, which this Module is based on can be found here https://engineering.purdue.edu/~ebertd/texture/1stEdition/musgrave/musgrave.c |
CSpiralDisplace | |
CTurbulence | |
►Nutility | Utilities to help with noise generation |
CCache | Used for caching the results of modules. This could be very useful if the results of a module are to be used in two places |
CModule | |
►Npathfinder | Everything needed to find a path between two coordinates |
CAStarPathFinder | The PathFinder class is generally created once for everything that needs to find a path. If multiple objects find paths according to the same conditions, then it would be best if only one PathFinder is created which they all share. This does mean that only one path can be searched for at a time. So, if multiple paths are needed to be found utilizing the same conditions, then the GridMap class would be helpful |
CGridMap | Helper class to make using the PathFinder quick and easy for GridMaps / TileMaps. Essentially the class is created with the information it needs and internally it creates instances of PathFinder that use functions most common to GridMap. Manhatten Heuristic is used, tile based neighbours, movement cost and walls are determined by the arrays provided |
CGridNode | Holds all of information about a specific node of the map (pixel) |
CPath | Found path as well as the overall cost of movement along this path |
►Nspaceengine | |
►Ndata | |
CSFNode | |
CSpaceFormatFile | |
►Nscript | |
CAddNode | |
CAddOperation | |
CArrayConstantNode | |
CArrayItemNode | |
CArrayOperation | |
CArrayPushBackOperation | |
CArrayPushBackwardNode | |
CArrayPushForwardNode | |
CArrayPushFrontOperation | |
CArrayPushItemOperation | |
CArrayPushSizeOperation | |
CArraySizeNode | |
CArrayStoreItemOperation | |
CAssignNode | |
CBreakNode | |
CCastOperation | |
CClassNode | |
CComparisonNode | |
CConstantNode | |
CConstantNodeBase | |
CContinueNode | |
CDecrementNode | |
CDivNode | |
CDivOperation | |
CEngineCallNode | |
CEngineFunction | |
CEngineOperation | |
CEntry | |
CEnvironment | |
CEnvironmentStack | |
CEqualToNode | |
CEqualToOperation | |
CExecutor | |
CForNode | |
CFunction | A callable Function in the environment. Parameters are added separately because the environment needs to switch out when reading in the parameters. This is because the parameter names are in the Functions local environment; so to do this, the function needs to be first created (with associated environment) before the parameter names can be read. Otherwise they would conflict with names already existing in the environment |
CFunctionCallNode | |
CFunctionCallOperation | |
CFunctionNode | |
CGreaterThanEqualToOperation | |
CGreaterThanNode | |
CGreaterThanOperation | |
CGreaterThanOrEqualNode | |
CIdentifierNode | |
CIfNode | |
CIncrementNode | |
CInterpreter | |
CJumpIfNotOperation | |
CJumpOperation | |
CLabelOperation | |
CLessThanEqualToOperation | |
CLessThanNode | |
CLessThanOperation | |
CLessThanOrEqualNode | |
CLexer | The Lexer produces a stream of tokens for the Parser |
CLoopNode | |
CModNode | |
CModOperation | |
CMulNode | |
CMulOperation | |
CNode | |
CNotEqualToNode | |
CNotEqualToOperation | |
COperation | |
COperatorNode | |
CParser | |
CPowNode | |
CPowOperation | |
CProgramNode | |
CPushOperation | |
CPushOperationBase | |
CReturnNode | |
CReturnOperation | |
CStoreOperation | |
CSubNode | |
CSubOperation | |
CToken | |
CWhileNode | |
►Nui | The ui namespace contains everything needed for the user interface. It also contains text drawing as this seemed like the most obvious place to put it |
CAbsoluteLayout | |
CBorder | A border instances draws a specific border style in a given position and size. The border itself stays within the size provided, therefore the method GetEdgeThicknessTBLR() should be used to reduce the avaiable size of whatever the border surrounds (if desired) |
CBorderTextButton | |
CBox | |
CBoxLayout | |
CButton | A button is clicked and the callback is called. Buttons can also repeatedly call a separate callback at a set interval so long as the button is held down |
CConnectionPoint | |
CConnectionPointBase | |
CContainer | Container widgets are widgets that own other widgets |
CDropDownSelect | |
CExpander | An Expander is a container which resizes the first widget it owns to fill it's entire area |
CFlowchart | A Flowchart can have a couple of uses. It can either be static, to represent a tree or or something; or it can be up to the user to couple and decouple nodes |
CFlowchartNode | |
CFlyweight | |
CFlyweightWidget | |
CImage | |
CInputWidget | |
CLabel | |
CLayoutFile | |
CManager | |
CNode | |
CNodeBase | |
CNodePoint | |
CPanel | A Panel is a type of container that doesn't need the full extents of it's owned objects positions and sizes to calculate the minimum size. Instead, the minimum size is always the current size of the panel. It does this by hiding or showing scrollbars |
CRect | |
CRectColoured | |
CRectFilledArea | Most widgets have one or more areas that need to be filled with a specific rect |
CRectFilledBorderedArea | Same as a RectFilledArea but it also contains a border |
CRectTextured | |
CScrollbar | |
CSelect | |
CSingleWidget | |
CSlider | |
CSliderControlGroup | |
CStackLayout | A StackLayout positions all owned widgets in the narrowest possible stack. The orientation of this stack, as well as the starting corner of the "box" can be adjusted |
►CTableLayout | |
CCell | |
CTextButton | |
►CTextDraw | |
Ccharacter | |
CPoint | |
CTextRect | |
CTexturedRect | |
CTooltip | |
CUIManager | |
CWidget | Nearly everything in the UI System is a Widget. There are certain properties that all object classes require, and these are part of Widget |
CWidgetPtrHash | |
CWindow | The Window Widget is like any other UI Window. It can be moved and resized, minimized and closed. Windows also have Titlebars and borders |
CCamera | |
CCameraDirection | |
CCelestialBody | |
CCelestialObject | |
CCircularGrid | |
CCube | |
CElementAmounts | |
CGameObject | |
CGrid | |
CIcosphere | |
CInputManager | |
CLight | |
CLightAttenuation | |
►CMesh | |
CData | |
CMoon | |
COrbit | |
►CPostProcessingEffect | A PostProcessingEffect contains everything needed to chain post processing effects together |
CParamValue | |
CPostProcessingEffectChain | |
CQuad | |
CSDLGLHandler | |
CShader | |
CShaderManager | |
►CShaderProgramHandle | |
CData | |
CShaderStage | |
CShadowCubeFrameBuffer | |
►CShadowMapFrameBuffer | |
CData | |
CSpaceEngine | |
CStarSystem | |
CSun | |
CSunCelestial | |
CTerrestrialPlanet | |
►CTexture | |
CData | |
►CTextureRenderer | |
CData | |
CUniverseFactory | |
CUniverseScale | |
CUVSphere | |
CVertexData | |
►Nstd | STL namespace |
Chash< SDL_EventType > | |
►Nutils | |
►Ncolor | |
CGradient | |
►Nrandom | |
CRand | This class is used to seed and generate random numbers |
►Ntime | |
CStopwatch | Simple profiling class functioning as a stop watch. The stop watch begins counting from 0 when constructed or when Reset() is called. Elapsed time can be returned in any std::chrono time period |
CTimer | |
COwnType | Used as a placeholder when a template type needs to refer to itself |
CRect | A rectangle... not hard |
CRecursiveWrapper | Wrapper type to allow a Variant type within a class to hold types of that class |
CSubstitute | Substitute is used to derive the correct Tag type |
CSubstitute< A, A, B > | |
CSubstitute< R(Xs...), A, B > | |
CSubstitute< X &&, A, B > | |
CSubstitute< X &, A, B > | |
CSubstitute< X const volatile, A, B > | |
CSubstitute< X const, A, B > | |
CSubstitute< X volatile, A, B > | |
CSubstitute< Z< X, n >, A, B > | |
CSubstitute< Z< Xs... >, A, B > | |
CTag | Standard tag type |
CVariant | Variant type that can hold any value, including itself. Values are stored on the stack, not the heap, so this should be relatively efficient |
CVariantHelper | Internal class used to iterate through a Variants possible types until a match is found, and then execute the desired function |
CVariantHelper< T0 > | Catchall specialization to allow for void type |
CVariantHelper< T0, F, Ts... > | Specialization that allows for the substitution of F with T0 if F is the type of the invoking Variant |
CAdditionNode | |
CAnt | |
CAntGame | |
CApplication | |
CBlendNode | |
CCanvas | |
CDesignArea | |
CEF | |
CEFBase | |
CfBmDialog | |
CfBmNode | |
CFrame | |
CFunctions | |
CGame | |
CHull | |
CMaxNode | |
CMinNode | |
CNode | |
CNodeManager | |
CNodePoint | |
CNodePointInput | |
CNodePointOutput | |
CNoiseNode | |
COutputArea | |
CPerlinNode | |
CPlayer | |
CPlayerTech | |
CPowerplant | |
CPropulsionComponent | |
CScrolledDesignWindow | |
CScrolledOutputWindow | |
CSeedDialog | |
CSelectDialog | |
CSelectNode | |
CShip | |
CShipComponent | |
CShipComponentManager | |
CSpecificGame | |
CTechArea | |
CTechLevel | |
CTechNode | |
CTechnology | The TechNode creates it's own TechLevels based upon the increaseFunction, therefore the description probably won't ever be populated |
CTechTree | |
CTerrestrialPlanetGroundTextures | |
CwxApp | |
CwxDialog | |
CwxFrame | |
CwxScrolled | |
CwxWindow | |