|
IVSmoke 1.0
|
#include <IVSmokeSettings.h>


Public Member Functions | |
| virtual FName | GetCategoryName () const override |
| virtual FName | GetSectionName () const override |
| UIVSmokeVisualMaterialPreset * | GetVisualMaterialPreset () const |
| virtual void | PostInitProperties () override |
| void | SetVisualMaterialPreset (FSoftObjectPath VisualMaterialPresetPath) |
| int32 | GetEffectiveMaxSteps () const |
| float | GetEffectiveMinStepSize () const |
| bool | IsSelfShadowingEnabled () const |
| int32 | GetEffectiveLightMarchingSteps () const |
| bool | IsExternalShadowingEnabled () const |
| int32 | GetEffectiveNumCascades () const |
| int32 | GetEffectiveCascadeResolution () const |
| float | GetEffectiveShadowMaxDistance () const |
Static Public Member Functions | |
| static const UIVSmokeSettings * | Get () |
Public Attributes | |
| bool | bEnableSmokeRendering = true |
| bool | bShowAdvancedOptions = false |
| EIVSmokeGlobalQuality | GlobalQuality = EIVSmokeGlobalQuality::Medium |
| EIVSmokeRayMarchQuality | RayMarchQuality = EIVSmokeRayMarchQuality::Medium |
| int32 | CustomMaxSteps = 256 |
| float | CustomMinStepSize = 25.0f |
| EIVSmokeSelfShadowQuality | SelfShadowQuality = EIVSmokeSelfShadowQuality::Medium |
| int32 | CustomLightMarchingSteps = 6 |
| EIVSmokeExternalShadowQuality | ExternalShadowQuality = EIVSmokeExternalShadowQuality::Medium |
| int32 | CustomNumCascades = 4 |
| int32 | CustomCascadeResolution = 512 |
| float | CustomShadowMaxDistance = 50000.0f |
| float | SmokeDensityFalloff = 0.2f |
| float | SmokeSize = 256.0f |
| FVector | WindDirection = FVector(0.00f, 0.00f, 0.1f) |
| float | VolumeRangeOffset = 0.1 |
| float | VolumeEdgeNoiseFadeOffset = 0.1f |
| float | VolumeEdgeFadeSharpness = 3.0f |
| bool | bEnableScattering = true |
| float | ScatterScale = 0.5f |
| float | ScatteringAnisotropy = 0.5f |
| bool | bOverrideLightDirection = false |
| FVector | LightDirectionOverride = FVector(0.0f, 0.0f, 1.0f) |
| bool | bOverrideLightColor = false |
| FLinearColor | LightColorOverride = FLinearColor::White |
| float | ShadowAmbient = 0.2f |
| float | LightMarchingDistance = 0.0f |
| float | LightMarchingExpFactor = 2.0f |
| float | ExternalShadowAmbient = 0.3f |
| bool | bEnableVSM = true |
| int32 | VSMBlurRadius = 2 |
| float | ShadowDepthBias = 1.0f |
| bool | bCaptureSkeletalMeshes = false |
| float | CascadeLogLinearBlend = 0.85f |
| float | CascadeBlendRange = 0.1f |
| float | VSMMinVariance = 1.0f |
| float | VSMLightBleedingReduction = 0.2f |
| bool | bEnablePriorityUpdate = false |
| int32 | NearCascadeUpdateInterval = 1 |
| int32 | FarCascadeUpdateInterval = 4 |
| float | FXAASpanMax = 4.0f |
| float | FXAARange = 1.2f |
| float | FXAASharpness = 1.7f |
| FSoftObjectPath | SmokeVisualMaterialPreset |
| bool | bEnableDepthWrite = true |
| float | DepthWriteBias = 50.0f |
| float | DepthWriteAlphaThreshold = 0.99f |
| bool | bShowDebugVolumes = false |
Global settings for IVSmoke plugin. Accessible via Project Settings > Plugins > IVSmoke.
These settings affect ALL smoke volumes globally. For per-volume appearance (color, density), use UIVSmokeSmokePreset.
Definition at line 104 of file IVSmokeSettings.h.
| UIVSmokeSettings::UIVSmokeSettings | ( | ) |
Definition at line 10 of file IVSmokeSettings.cpp.
|
static |
Get the singleton settings instance.
Definition at line 15 of file IVSmokeSettings.cpp.
|
inlineoverridevirtual |
Definition at line 117 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::GetEffectiveCascadeResolution | ( | ) | const |
Get effective cascade resolution based on quality settings.
Definition at line 125 of file IVSmokeSettings.cpp.
| int32 UIVSmokeSettings::GetEffectiveLightMarchingSteps | ( | ) | const |
Get effective light marching steps based on quality settings.
Definition at line 84 of file IVSmokeSettings.cpp.
| int32 UIVSmokeSettings::GetEffectiveMaxSteps | ( | ) | const |
Get effective MaxSteps based on quality settings.
Definition at line 45 of file IVSmokeSettings.cpp.
| float UIVSmokeSettings::GetEffectiveMinStepSize | ( | ) | const |
Get effective MinStepSize based on quality settings.
Definition at line 58 of file IVSmokeSettings.cpp.
| int32 UIVSmokeSettings::GetEffectiveNumCascades | ( | ) | const |
Get effective number of shadow cascades based on quality settings.
Definition at line 111 of file IVSmokeSettings.cpp.
| float UIVSmokeSettings::GetEffectiveShadowMaxDistance | ( | ) | const |
Get effective shadow max distance based on quality settings.
Definition at line 139 of file IVSmokeSettings.cpp.
|
inlineoverridevirtual |
Definition at line 118 of file IVSmokeSettings.h.
| UIVSmokeVisualMaterialPreset * UIVSmokeSettings::GetVisualMaterialPreset | ( | ) | const |
Definition at line 152 of file IVSmokeSettings.cpp.
| bool UIVSmokeSettings::IsExternalShadowingEnabled | ( | ) | const |
Check if external shadowing is enabled based on quality settings.
Definition at line 101 of file IVSmokeSettings.cpp.
| bool UIVSmokeSettings::IsSelfShadowingEnabled | ( | ) | const |
Check if self-shadowing is enabled based on quality settings.
Definition at line 74 of file IVSmokeSettings.cpp.
|
overridevirtual |
Definition at line 177 of file IVSmokeSettings.cpp.
| void UIVSmokeSettings::SetVisualMaterialPreset | ( | FSoftObjectPath | VisualMaterialPresetPath | ) |
Change visual material preset data asset.
Definition at line 160 of file IVSmokeSettings.cpp.
| bool UIVSmokeSettings::bCaptureSkeletalMeshes = false |
Include skeletal meshes (characters) in shadow capture.
Definition at line 327 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bEnableDepthWrite = true |
Write smoke depth to scene depth buffer for correct translucent sorting. When enabled, particles behind opaque smoke regions are correctly occluded.
Definition at line 384 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bEnablePriorityUpdate = false |
Definition at line 350 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bEnableScattering = true |
Enable Rayleigh scattering for atmospheric light effects.
Definition at line 264 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bEnableSmokeRendering = true |
Enable smoke rendering globally.
Definition at line 138 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bEnableVSM = true |
Enable Variance Shadow Maps for soft shadows.
Definition at line 315 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bOverrideLightColor = false |
Override light color instead of using scene directional light.
Definition at line 285 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bOverrideLightDirection = false |
Override light direction instead of using scene directional light.
Definition at line 277 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bShowAdvancedOptions = false |
Show advanced options in all categories.
Definition at line 142 of file IVSmokeSettings.h.
| bool UIVSmokeSettings::bShowDebugVolumes = false |
Show debug visualization for smoke volumes.
Definition at line 402 of file IVSmokeSettings.h.
| float UIVSmokeSettings::CascadeBlendRange = 0.1f |
Blend region at cascade boundaries (0-0.3).
Definition at line 335 of file IVSmokeSettings.h.
| float UIVSmokeSettings::CascadeLogLinearBlend = 0.85f |
Log/Linear cascade split blend (0=linear, 1=logarithmic).
Definition at line 331 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::CustomCascadeResolution = 512 |
Custom: Shadow map resolution per cascade (256-2048).
Definition at line 196 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::CustomLightMarchingSteps = 6 |
Custom: Number of light marching steps (1-16).
Definition at line 177 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::CustomMaxSteps = 256 |
Custom: Maximum ray marching steps (32-1024).
Definition at line 158 of file IVSmokeSettings.h.
| float UIVSmokeSettings::CustomMinStepSize = 25.0f |
Custom: Minimum step size in world units (5-100).
Definition at line 165 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::CustomNumCascades = 4 |
Custom: Number of shadow cascades (1-6).
Definition at line 189 of file IVSmokeSettings.h.
| float UIVSmokeSettings::CustomShadowMaxDistance = 50000.0f |
Custom: Maximum shadow distance in centimeters (1000-100000).
Definition at line 203 of file IVSmokeSettings.h.
| float UIVSmokeSettings::DepthWriteAlphaThreshold = 0.99f |
Alpha threshold for depth write. Only pixels with alpha >= this value write to depth buffer. Lower values include more semi-transparent areas, higher values only include nearly opaque areas.
Definition at line 395 of file IVSmokeSettings.h.
| float UIVSmokeSettings::DepthWriteBias = 50.0f |
Depth bias in centimeters. Positive values push depth further from camera.
Definition at line 389 of file IVSmokeSettings.h.
| float UIVSmokeSettings::ExternalShadowAmbient = 0.3f |
Minimum brightness in externally shadowed areas (0=dark, 1=no shadow).
Definition at line 311 of file IVSmokeSettings.h.
| EIVSmokeExternalShadowQuality UIVSmokeSettings::ExternalShadowQuality = EIVSmokeExternalShadowQuality::Medium |
External shadow quality level.
Definition at line 182 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::FarCascadeUpdateInterval = 4 |
Definition at line 356 of file IVSmokeSettings.h.
| float UIVSmokeSettings::FXAARange = 1.2f |
FXAA edge detection threshold range.
Definition at line 367 of file IVSmokeSettings.h.
| float UIVSmokeSettings::FXAASharpness = 1.7f |
FXAA sharpness factor.
Definition at line 371 of file IVSmokeSettings.h.
| float UIVSmokeSettings::FXAASpanMax = 4.0f |
FXAA maximum edge search distance.
Definition at line 363 of file IVSmokeSettings.h.
| EIVSmokeGlobalQuality UIVSmokeSettings::GlobalQuality = EIVSmokeGlobalQuality::Medium |
Global quality preset. Sets all section quality levels at once.
Definition at line 146 of file IVSmokeSettings.h.
| FLinearColor UIVSmokeSettings::LightColorOverride = FLinearColor::White |
Custom light color. Used when bOverrideLightColor is true.
Definition at line 289 of file IVSmokeSettings.h.
| FVector UIVSmokeSettings::LightDirectionOverride = FVector(0.0f, 0.0f, 1.0f) |
Custom light direction (normalized). Used when bOverrideLightDirection is true.
Definition at line 281 of file IVSmokeSettings.h.
| float UIVSmokeSettings::LightMarchingDistance = 0.0f |
Maximum distance to march toward light (0=no limit).
Definition at line 300 of file IVSmokeSettings.h.
| float UIVSmokeSettings::LightMarchingExpFactor = 2.0f |
Exponential distribution factor for light marching steps (1=uniform, 2-3=recommended).
Definition at line 304 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::NearCascadeUpdateInterval = 1 |
Definition at line 353 of file IVSmokeSettings.h.
| EIVSmokeRayMarchQuality UIVSmokeSettings::RayMarchQuality = EIVSmokeRayMarchQuality::Medium |
Ray marching quality level.
Definition at line 151 of file IVSmokeSettings.h.
| float UIVSmokeSettings::ScatteringAnisotropy = 0.5f |
Anisotropy parameter for Henyey-Greenstein phase function. 0 = isotropic, positive = forward scattering, negative = backward scattering
Definition at line 273 of file IVSmokeSettings.h.
| float UIVSmokeSettings::ScatterScale = 0.5f |
Scattering intensity multiplier. Higher = more light scattered through smoke.
Definition at line 268 of file IVSmokeSettings.h.
| EIVSmokeSelfShadowQuality UIVSmokeSettings::SelfShadowQuality = EIVSmokeSelfShadowQuality::Medium |
Self-shadow quality level.
Definition at line 170 of file IVSmokeSettings.h.
| float UIVSmokeSettings::ShadowAmbient = 0.2f |
Minimum brightness in fully shadowed areas (0=dark, 1=no shadow).
Definition at line 296 of file IVSmokeSettings.h.
| float UIVSmokeSettings::ShadowDepthBias = 1.0f |
Shadow depth bias to prevent shadow acne.
Definition at line 323 of file IVSmokeSettings.h.
| float UIVSmokeSettings::SmokeDensityFalloff = 0.2f |
Controls edge softness. Lower = softer edges.
Definition at line 237 of file IVSmokeSettings.h.
| float UIVSmokeSettings::SmokeSize = 256.0f |
Scale for noise sampling. Affects smoke detail size.
Definition at line 241 of file IVSmokeSettings.h.
| FSoftObjectPath UIVSmokeSettings::SmokeVisualMaterialPreset |
Smoke visual material data asset.
Definition at line 378 of file IVSmokeSettings.h.
| float UIVSmokeSettings::VolumeEdgeFadeSharpness = 3.0f |
Edge fade sharpness factor.
Definition at line 257 of file IVSmokeSettings.h.
| float UIVSmokeSettings::VolumeEdgeNoiseFadeOffset = 0.1f |
Noise-based edge fade offset.
Definition at line 253 of file IVSmokeSettings.h.
| float UIVSmokeSettings::VolumeRangeOffset = 0.1 |
Volume edge range offset for density falloff.
Definition at line 249 of file IVSmokeSettings.h.
| int32 UIVSmokeSettings::VSMBlurRadius = 2 |
VSM blur kernel radius (0=no blur). Higher = softer shadows.
Definition at line 319 of file IVSmokeSettings.h.
| float UIVSmokeSettings::VSMLightBleedingReduction = 0.2f |
VSM light bleeding reduction (0=none).
Definition at line 343 of file IVSmokeSettings.h.
| float UIVSmokeSettings::VSMMinVariance = 1.0f |
Minimum variance for VSM to prevent artifacts.
Definition at line 339 of file IVSmokeSettings.h.
| FVector UIVSmokeSettings::WindDirection = FVector(0.00f, 0.00f, 0.1f) |
Wind direction and speed for smoke animation.
Definition at line 245 of file IVSmokeSettings.h.