NVIDIA DeepLearning Dataset Synthesizer (NDDS)
 All Classes Namespaces Functions Variables Typedefs Pages
RandomLightComponent.h
1 /*
2 * Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
3 *
4 * NVIDIA CORPORATION and its licensors retain all intellectual property
5 * and proprietary rights in and to this software, related documentation
6 * and any modifications thereto. Any use, reproduction, disclosure or
7 * distribution of this software and related documentation without an express
8 * license agreement from NVIDIA CORPORATION is strictly prohibited.
9 */
10 
11 #pragma once
12 
13 #include "DomainRandomizationDNNPCH.h"
14 #include "RandomComponentBase.h"
15 #include "DRUtils.h"
16 #include "RandomLightComponent.generated.h"
17 
18 /**
19 * Randomize the properties of the owner actor's light components
20 * NOTE: This is not a LightComponent, it modify other light components
21 */
22 /// @cond DOXYGEN_SUPPRESSED_CODE
23 UCLASS(Blueprintable, ClassGroup = (NVIDIA), meta = (BlueprintSpawnableComponent))
24 /// @endcond DOXYGEN_SUPPRESSED_CODE
25 class DOMAINRANDOMIZATIONDNN_API URandomLightComponent : public URandomComponentBase
26 {
27  GENERATED_BODY()
28 
29 public:
31 
32 protected: // Editor properties
33  UPROPERTY(EditAnywhere, Category = "Randomization", meta = (InlineEditConditionToggle))
34  bool bShouldModifyIntensity;
35 
36  UPROPERTY(EditAnywhere, Category = "Randomization", meta = (EditCondition = "bShouldModifyIntensity"))
37  FFloatInterval IntensityRange;
38 
39  UPROPERTY(EditAnywhere, Category = "Randomization", meta = (InlineEditConditionToggle))
40  bool bShouldModifyColor;
41 
42  UPROPERTY(EditAnywhere, Category = "Randomization", meta = (EditCondition = "bShouldModifyColor"))
43  FRandomColorData ColorData;
44 
45 protected:
46 #if WITH_EDITORONLY_DATA
47  virtual void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent) override;
48 #endif //WITH_EDITORONLY_DATA
49 
50  void OnRandomization_Implementation() override;
51 };