G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
FMeshApproximationSettings Struct Reference

Public Member Functions

Functions
FMeshApproximationSettings & opAssign (FMeshApproximationSettings Other)

Public Attributes

DebugSettings
bool bPrintDebugMessages
 If true, print out debugging messages.
bool bEmitFullDebugMesh
 If true, write the full mesh triangle set (ie flattened, non-instanced) used for mesh generation. Warning: this asset may be extremely large!!
MaterialSettings
float32 CaptureFieldOfView
FMaterialProxySettings MaterialSettings
 Material generation settings.
int RenderCaptureResolution
 If Value is zero, use MaterialSettings resolution, otherwise override the render capture resolution.
float32 NearPlaneDist
int MultiSamplingAA
 If Value is > 1, Multisample output baked textures by this amount in each direction (eg 4 == 16x supersampling).
MeshSettings
bool bSupportRayTracing
 Whether ray tracing will be supported on this mesh. Disable this to save memory if the generated mesh will only be rendered in the distance.
float32 NaniteFallbackRelativeError
 Reduce Nanite fallback mesh until at least this amount of error is reached relative to size of the mesh.
float32 NaniteFallbackPercentTriangles
 Percentage of triangles to keep from source Nanite mesh for fallback. 1.0 = no reduction, 0.0 = no triangles.
ENaniteFallbackTarget NaniteFallbackTarget
 Which heuristic to use when generating the Nanite fallback mesh.
bool bGenerateNaniteEnabledMesh
 Whether to generate a nanite-enabled mesh.
bool bAllowDistanceField
 Whether to allow distance field to be computed for this mesh. Disable this to save memory if the generated mesh will only be rendered in the distance.
NormalsSettings
float32 HardNormalAngle
bool bEstimateHardNormals
 If true, normal angle will be used to estimate hard normals.
PerformanceSettings
bool bUseRenderLODMeshes
 If true, LOD0 Render Meshes (or Nanite Fallback meshes) are used instead of Source Mesh data. This can significantly reduce computation time and memory usage, but potentially at the cost of lower quality output.
bool bEnableSimplifyPrePass
 If true, a faster mesh simplfication strategy will be used. This can significantly reduce computation time and memory usage, but potentially at the cost of lower quality output.
bool bEnableParallelBaking
 If false, texture capture and baking will be done serially after mesh generation, rather than in parallel when possible. This will reduce the maximum memory requirements of the process.
ShapeSettings
int ClampVoxelDimension
 Maximum allowable voxel count along main directions. This is a limit on ApproximationAccuracy. Max of 1290 (1290^3 is the last integer < 2^31, using a bigger number results in failures in TArray code & probably elsewhere).
float32 WindingThreshold
 Winding Threshold controls hole filling at open mesh borders. Smaller value means "more/rounder" filling.
float32 TargetMinThicknessMultiplier
 Multiplier on Approximation Accuracy used for auto-thickening.
EMeshApproximationBaseCappingType BaseCapping
 Optional methods to attempt to close off the bottom of open meshes.
bool bIgnoreTinyParts
 If enabled, tiny parts will be excluded from the mesh merging, which can improve performance.
EMeshApproximationType OutputType
 Type of output from mesh approximation process.
bool bAttemptAutoThickening
 if enabled, we will attempt to auto-thicken thin parts or flat sheets
float32 TinyPartSizeMultiplier
 Multiplier on Approximation Accuracy used to define tiny-part threshold, using maximum bounding-box dimension.
float32 ApproximationAccuracy
 Approximation Accuracy in Meters, will determine (eg) voxel resolution.
float32 GapDistance
 Distance in Meters to expand/contract to fill gaps.
bool bFillGaps
 If true, topological expand/contract is used to try to fill small gaps between objects.
SimplifySettings
float32 GeometricDeviation
 Allowable Geometric Deviation in Meters when SimplifyMethod incorporates a Geometric Tolerance.
float32 TrianglesPerM
 Approximate Number of triangles per Square Meter, for SimplifyMethods that use such a constraint.
float32 GroundClippingZHeight
 Z-Height for the ground clipping plane, if enabled.
EMeshApproximationSimplificationPolicy SimplifyMethod
 Mesh Simplification criteria.
EMeshApproximationGroundPlaneClippingPolicy GroundClipping
 Configure how the final mesh should be clipped with a ground plane, if desired.
int TargetTriCount
 Target triangle count for Mesh Simplification, for SimplifyMethods that use a Count.
bool bOccludeFromBottom
 If true, then the OcclusionMethod computation is configured to try to consider downward-facing "bottom" geometry as occluded.
EOccludedGeometryFilteringPolicy OcclusionMethod
 Type of hidden geometry removal to apply.
UVSettings
float32 MergingThreshold
 Distortion/Stretching Threshold for island merging - larger values increase the allowable UV stretching.
float32 CurvatureAlignment
 This parameter controls alignment of the initial patches to creases in the mesh.
int InitialPatchCount
 Number of initial patches mesh will be split into before computing island merging.
float32 MaxAngleDeviation
 UV islands will not be merged if their average face normals deviate by larger than this amount.
EMeshApproximationUVGenerationPolicy UVGenerationMethod
 Mesh UV Generation Settings.

Member Function Documentation

◆ opAssign()

Member Data Documentation

◆ ApproximationAccuracy

float32 ApproximationAccuracy

Approximation Accuracy in Meters, will determine (eg) voxel resolution.

◆ bAllowDistanceField

bool bAllowDistanceField

Whether to allow distance field to be computed for this mesh. Disable this to save memory if the generated mesh will only be rendered in the distance.

◆ BaseCapping

Optional methods to attempt to close off the bottom of open meshes.

◆ bAttemptAutoThickening

bool bAttemptAutoThickening

if enabled, we will attempt to auto-thicken thin parts or flat sheets

◆ bEmitFullDebugMesh

bool bEmitFullDebugMesh

If true, write the full mesh triangle set (ie flattened, non-instanced) used for mesh generation. Warning: this asset may be extremely large!!

◆ bEnableParallelBaking

bool bEnableParallelBaking

If false, texture capture and baking will be done serially after mesh generation, rather than in parallel when possible. This will reduce the maximum memory requirements of the process.

◆ bEnableSimplifyPrePass

bool bEnableSimplifyPrePass

If true, a faster mesh simplfication strategy will be used. This can significantly reduce computation time and memory usage, but potentially at the cost of lower quality output.

◆ bEstimateHardNormals

bool bEstimateHardNormals

If true, normal angle will be used to estimate hard normals.

◆ bFillGaps

bool bFillGaps

If true, topological expand/contract is used to try to fill small gaps between objects.

◆ bGenerateNaniteEnabledMesh

bool bGenerateNaniteEnabledMesh

Whether to generate a nanite-enabled mesh.

◆ bIgnoreTinyParts

bool bIgnoreTinyParts

If enabled, tiny parts will be excluded from the mesh merging, which can improve performance.

◆ bOccludeFromBottom

bool bOccludeFromBottom

If true, then the OcclusionMethod computation is configured to try to consider downward-facing "bottom" geometry as occluded.

◆ bPrintDebugMessages

bool bPrintDebugMessages

If true, print out debugging messages.

◆ bSupportRayTracing

bool bSupportRayTracing

Whether ray tracing will be supported on this mesh. Disable this to save memory if the generated mesh will only be rendered in the distance.

◆ bUseRenderLODMeshes

bool bUseRenderLODMeshes

If true, LOD0 Render Meshes (or Nanite Fallback meshes) are used instead of Source Mesh data. This can significantly reduce computation time and memory usage, but potentially at the cost of lower quality output.

◆ CaptureFieldOfView

float32 CaptureFieldOfView

◆ ClampVoxelDimension

int ClampVoxelDimension

Maximum allowable voxel count along main directions. This is a limit on ApproximationAccuracy. Max of 1290 (1290^3 is the last integer < 2^31, using a bigger number results in failures in TArray code & probably elsewhere).

◆ CurvatureAlignment

float32 CurvatureAlignment

This parameter controls alignment of the initial patches to creases in the mesh.

◆ GapDistance

float32 GapDistance

Distance in Meters to expand/contract to fill gaps.

◆ GeometricDeviation

float32 GeometricDeviation

Allowable Geometric Deviation in Meters when SimplifyMethod incorporates a Geometric Tolerance.

◆ GroundClipping

Configure how the final mesh should be clipped with a ground plane, if desired.

◆ GroundClippingZHeight

float32 GroundClippingZHeight

Z-Height for the ground clipping plane, if enabled.

◆ HardNormalAngle

float32 HardNormalAngle

◆ InitialPatchCount

int InitialPatchCount

Number of initial patches mesh will be split into before computing island merging.

◆ MaterialSettings

FMaterialProxySettings MaterialSettings

Material generation settings.

◆ MaxAngleDeviation

float32 MaxAngleDeviation

UV islands will not be merged if their average face normals deviate by larger than this amount.

◆ MergingThreshold

float32 MergingThreshold

Distortion/Stretching Threshold for island merging - larger values increase the allowable UV stretching.

◆ MultiSamplingAA

int MultiSamplingAA

If Value is > 1, Multisample output baked textures by this amount in each direction (eg 4 == 16x supersampling).

◆ NaniteFallbackPercentTriangles

float32 NaniteFallbackPercentTriangles

Percentage of triangles to keep from source Nanite mesh for fallback. 1.0 = no reduction, 0.0 = no triangles.

◆ NaniteFallbackRelativeError

float32 NaniteFallbackRelativeError

Reduce Nanite fallback mesh until at least this amount of error is reached relative to size of the mesh.

◆ NaniteFallbackTarget

ENaniteFallbackTarget NaniteFallbackTarget

Which heuristic to use when generating the Nanite fallback mesh.

◆ NearPlaneDist

float32 NearPlaneDist

◆ OcclusionMethod

Type of hidden geometry removal to apply.

◆ OutputType

Type of output from mesh approximation process.

◆ RenderCaptureResolution

int RenderCaptureResolution

If Value is zero, use MaterialSettings resolution, otherwise override the render capture resolution.

◆ SimplifyMethod

Mesh Simplification criteria.

◆ TargetMinThicknessMultiplier

float32 TargetMinThicknessMultiplier

Multiplier on Approximation Accuracy used for auto-thickening.

◆ TargetTriCount

int TargetTriCount

Target triangle count for Mesh Simplification, for SimplifyMethods that use a Count.

◆ TinyPartSizeMultiplier

float32 TinyPartSizeMultiplier

Multiplier on Approximation Accuracy used to define tiny-part threshold, using maximum bounding-box dimension.

◆ TrianglesPerM

float32 TrianglesPerM

Approximate Number of triangles per Square Meter, for SimplifyMethods that use such a constraint.

◆ UVGenerationMethod

Mesh UV Generation Settings.

◆ WindingThreshold

float32 WindingThreshold

Winding Threshold controls hole filling at open mesh borders. Smaller value means "more/rounder" filling.