# Niagara user parameter is not visible in BluePrint -\> UE5.2 & C++

**URL:** <https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343>\
**Category:** C++\
**Tags:** unreal-engine, Blueprint, question, CPP\
**Created:** [May 26, 2023, 2:15pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343 "2023-05-26T14:15:39Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ivan3z](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Ivan3z](https://forums.unrealengine.com/u/Ivan3z)\
**Post date:** [May 26, 2023, 2:15pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/1 "2023-05-26T14:15:39Z")

</div>

Niagara user parameter not visible in blueprint when using C++.

Everything is correct in a pure blueprint.

![10](https://d3kjluh73b9h9o.cloudfront.net/original/4X/e/8/e/e8eb8fe4a4510e7b59407ca2b51315cae8207777.png)

![11](https://d3kjluh73b9h9o.cloudfront.net/original/4X/1/3/8/13847bb18570e1c0460fe0c39c5fb7b4d5c318de.png)

Niagara User Parameters does not appear if instantiated from C++.

 ![13](https://d3kjluh73b9h9o.cloudfront.net/original/4X/d/9/1/d9179824df88e050ae29a5dfa51374dbdbaf24d9.png)

![12](https://d3kjluh73b9h9o.cloudfront.net/original/4X/9/b/f/9bfc78046f2c464a54b875b04528edb90af86cdc.png)

Declaration:

![14](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/4/4/744a17e33c7d018bda52bc98c2c5f0b718270d7d.png)

implementation:

 ![16](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/5/c/75c4f76fdb6ebd684001bbcaab8cf2685975cb95.png)

I can access it using C++ like this, and it works.

 ![15](https://d3kjluh73b9h9o.cloudfront.net/original/4X/3/b/e/3be20119369b5919cbdc311bda3413500b17bc9c.png)

But from the blueprint I can’t edit it.

I am doing something wrong?  
Is it something normal?  
Or is it a bug?

Thank you so much!!

---

<div class="post-metadata">

**Author:** ![rndSocrates](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@rndSocrates](https://forums.unrealengine.com/u/rndSocrates)\
**Post date:** [July 20, 2023, 5:48pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/2 "2023-07-20T17:48:10Z")

</div>

I have the same problem and there is no info about it. Looks like it’s a UE5.2 bug or something like that.  
C++ component:  
 ![image1](https://d3kjluh73b9h9o.cloudfront.net/original/4X/5/4/9/54907727e6073df5e495ef52d97f6786cdfd544e.png)

BP component:

 ![image2](https://d3kjluh73b9h9o.cloudfront.net/original/4X/9/1/6/91653259e9ca4754347fac884bf8815b8b93e462.png)

---

<div class="post-metadata">

**Author:** ![Ivan3z](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Ivan3z](https://forums.unrealengine.com/u/Ivan3z)\
**Post date:** [July 20, 2023, 7:52pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/3 "2023-07-20T19:52:01Z")

</div>

> [@rndSocrates](#):
>
> Looks like it’s a UE5.2 bug or something like that.

i think it is a bug too… work in C++… definily is better

---

<div class="post-metadata">

**Author:** ![squanchydragon](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@squanchydragon](https://forums.unrealengine.com/u/squanchydragon)\
**Post date:** [September 4, 2024, 7:34pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/4 "2024-09-04T19:34:11Z")

</div>

Still occurring in UE5.4.2

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/8/e/1/8e123484907b31bda6539e26510ec51222930716.png)

---

<div class="post-metadata">

**Author:** ![Fedotich](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Fedotich](https://forums.unrealengine.com/u/Fedotich)\
**Post date:** [November 16, 2024, 11:06am UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/5 "2024-11-16T11:06:45Z")

</div>

UE 5.4.4 have the same problem

---

<div class="post-metadata">

**Author:** ![OptimisticMonkey](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/optimisticmonkey/32/906571_2.png) [@OptimisticMonkey](https://forums.unrealengine.com/u/OptimisticMonkey)\
**Post date:** [December 12, 2024, 10:49pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/6 "2024-12-12T22:49:02Z")

</div>

Have the same problem. UE 5.4.4

---

<div class="post-metadata">

**Author:** ![3dRaven](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/3draven/32/906552_2.png) [@3dRaven](https://forums.unrealengine.com/u/3dRaven)\
**Post date:** [December 12, 2024, 11:19pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/8 "2024-12-12T23:19:25Z")

</div>

You need to use `SetVariableFloat` for 5.3 and above

```auto
NiagaraComponentComponent->SetVariableFloat(“WidthScale”, 5.0f);

```

---

<div class="post-metadata">

**Author:** ![3dRaven](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/3draven/32/906552_2.png) [@3dRaven](https://forums.unrealengine.com/u/3dRaven)\
**Post date:** [December 12, 2024, 11:34pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/9 "2024-12-12T23:34:53Z")

</div>

@Ivan3z

Give the niagara component the following uproperty and it should work

```auto
UPROPERTY(VisibleAnywhere, meta = (AllowPrivateAccess = true))
class UNiagaraComponent* NiagaraComponent;

```

Here it is in a custom c++ class 🙂

 ![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/d/a/e/daece0ddcd0892c98845dc4e303fd586ec88e890.png)

Definition in c++ class header

 ![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/b/8/0/b8044dac620b142e31b5787a6adcca0591d47a3c.png)

And the custom user params in the particle system

 ![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/3/e/c/3ec9206b0779c82d851f162306086f7beb3ff2dd.jpeg)

And if I remove the float override I set in c++ then yes it does show the original 800 value bp =\> c++ class

 ![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/f/3/d/f3d04513bd62018a9d9b1f4c612e8fd9696fed51.png)

---

<div class="post-metadata">

**Author:** ![Ivan3z](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Ivan3z](https://forums.unrealengine.com/u/Ivan3z)\
**Post date:** [December 13, 2024, 12:35am UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/10 "2024-12-13T00:35:40Z")

</div>

Thank you so much @3dRaven❤

---

<div class="post-metadata">

**Author:** ![OptimisticMonkey](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/optimisticmonkey/32/906571_2.png) [@OptimisticMonkey](https://forums.unrealengine.com/u/OptimisticMonkey)\
**Post date:** [December 13, 2024, 3:15am UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/11 "2024-12-13T03:15:58Z")

</div>

Doesnt work for me ☹

I have the header defined:

```auto
UPROPERTY(VisibleAnywhere, meta = (AllowPrivateAccess = true))
class UNiagaraComponent* NiagaraComponent;

```

In cpp constructor I create with:

```auto
NiagaraComponent = CreateDefaultSubobject<UNiagaraComponent>(TEXT("MyNiagaraComponent"));
NiagaraComponent->SetupAttachment(RootComponent);

```

User Parameters doesnt expand:

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/3/4/234ee6f7ea8881fccc7e57db8d0e24a438bb2331.png)

For reference, the same system with a component declared in bp is:

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/a/8/5/a85cd65ea49be3ee98c491a87caea4ea6e10f982.png)

@3dRaven What does your cpp look like in constructor

---

<div class="post-metadata">

**Author:** ![3dRaven](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/3draven/32/906552_2.png) [@3dRaven](https://forums.unrealengine.com/u/3dRaven)\
**Post date:** [December 13, 2024, 9:42am UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/12 "2024-12-13T09:42:00Z")

</div>

![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/9/1/3/91356fa554ebb2755b047f159af9fdeaba9ab20f.jpeg)  
Here is a version with a linear color user param exposed

As you can see it’s working in 5.4

only thing in cpp instantiating the niagara comp is this

```auto
AGameCharacter::AGameCharacter()
{ 	
	PrimaryActorTick.bCanEverTick = true;
	// Create components
	Camera = CreateDefaultSubobject<UCameraComponent>(TEXT("Camera"));
	NComponent = CreateDefaultSubobject<UNiagaraComponent>(TEXT("NComp"));
	SphereComponent = CreateDefaultSubobject<USphereComponent>(TEXT("SC"));	 
	NComponent->AttachToComponent(SphereComponent, FAttachmentTransformRules::KeepRelativeTransform, FName("NiagaraComponent"));
}

```

The character test files that use the niagara component (just change the api)  
[GameCharacter.h](https://forums.unrealengine.com/uploads/short-url/7iPOE8mVDdVXuh2lSB5RtdfwEDj.h) (1.0 KB)  
[GameCharacter.cpp](https://forums.unrealengine.com/uploads/short-url/vX4vJ56su1VhdCbLCpJ2DaeDSTc.cpp) (1.3 KB)

---

<div class="post-metadata">

**Author:** ![OptimisticMonkey](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/optimisticmonkey/32/906571_2.png) [@OptimisticMonkey](https://forums.unrealengine.com/u/OptimisticMonkey)\
**Post date:** [December 13, 2024, 3:50pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/13 "2024-12-13T15:50:34Z")

</div>

Thanks @3dRaven - It is getting weirder… your GameCharacter doesnt work for me if I edit the default blueprint from the content browser… but it DOES work if I drag an instance of the blueprint into the scene!!! My other actor also works if dragged into the scene.

So the issue is you cant edit the User Parameter on a Niagara System Component created in c++ on the Blueprint class.

But you can edit edit the User Parameter on a Niagara System Component created in BP on the Blueprint class !

And you can edit the User Parameter on a Niagara System Component created in c++ on the Blueprint in the scene!

@3dRaven If possible, can you verify editing the component defaults in the blueprint class from the Content Browser doesnt work for you?

[edit] Even weirder, I can right-click copy the broken User Parameters and they are there. It looks like the drop-down arrow must be broken somehow when editing the class default version.

---

<div class="post-metadata">

**Author:** ![3dRaven](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/3draven/32/906552_2.png) [@3dRaven](https://forums.unrealengine.com/u/3dRaven)\
**Post date:** [December 13, 2024, 4:15pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/14 "2024-12-13T16:15:28Z")

</div>

It works with no blueprint in the scene, it’s enough to create a bp based on the c++ class with the niagara component.

 ![obraz](https://d3kjluh73b9h9o.cloudfront.net/original/4X/b/9/6/b96913951a00cd30eddb823fb4300b21e3f7d1da.png)

As you can see the class defaults pick up the custom niagara component’s parameters and can even be edited and remembered. (overwrote the yellow with a new color to test it, if I revert to default it returns to the particle’s yellow color)

Maybe some stale data cache is causing some problems? Try deleting the temp dirs and recompiling.

---

<div class="post-metadata">

**Author:** ![OptimisticMonkey](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/optimisticmonkey/32/906571_2.png) [@OptimisticMonkey](https://forums.unrealengine.com/u/OptimisticMonkey)\
**Post date:** [December 13, 2024, 4:58pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/15 "2024-12-13T16:58:29Z")

</div>

Its very strange - tried it in 5.4.4 and 5.5.1… Another developer discovered the issue on a different machine.

As a work around we can just use the c++ variable to point to the blueprint defined property.

☹

---

<div class="post-metadata">

**Author:** ![system](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/1/3/713c9d3f58553f0de89543d76a8a3a2779dc9fa4.png) [@system](https://forums.unrealengine.com/u/system)\
**Post date:** [January 12, 2025, 4:58pm UTC](https://forums.unrealengine.com/t/niagara-user-parameter-is-not-visible-in-blueprint-ue5-2-c/1179343/16 "2025-01-12T16:58:47Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
