# How to call and bind engine plugin function to bluprint?

**URL:** <https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267>\
**Category:** Programming & Scripting\
**Tags:** unreal-engine\
**Created:** [September 12, 2019, 11:46pm UTC](https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267 "2019-09-12T23:46:02Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ComradeHavoc](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@ComradeHavoc](https://forums.unrealengine.com/u/ComradeHavoc)\
**Post date:** [September 12, 2019, 11:46pm UTC](https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267/1 "2019-09-12T23:46:02Z")

</div>

In C++ how would I call a function from a module within an engine plugin, then expose it to blueprints?

I can already create functions from scratch, and expose them to blueprints, but the issue I’m running into here is exposing an existing function as a blueprint from an engine plugin. “void UnregisterActor(AActor InActor);” within “AnimationSharingManager.h\*”.

“[UAnimationSharingManager | Unreal Engine Documentation](https://docs.unrealengine.com/en-US/API/Plugins/AnimationSharing/UAnimationSharingManager/index.html)”

From what I can gather, I need to setup my project’s C# build file to be able to include a specific directive in my header, then I can inherit from the plugin’s classes?

Or if the module function is setup properly, I can use an API macro?

I’m struggling to find specific documentation for this, any and all help would be greatly appreciated, as well as documentation.

 ![287163-animationsharing.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/b/7/7b7304ba3845084fd198d8de4c600a8e9efa53ad.png)

][2]

 ![287164-animationsharing2.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/e/d/4/ed405bd25c8ff310262d0d6f8593650c7d9311b6.png)

 ![287165-animationsharing3.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/e/1/8/e1809ecacde2294938a5e48515e27d3ef2e0900f.png)

 ![287166-animationsharing4.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/0/3/4/034f8b747a3804648766c1ad088f34ced03b0f53.png)

---

<div class="post-metadata">

**Author:** ![ComradeHavoc](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@ComradeHavoc](https://forums.unrealengine.com/u/ComradeHavoc)\
**Post date:** [September 14, 2019, 2:29am UTC](https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267/2 "2019-09-14T02:29:49Z")

</div>

Well from what I can gather, I need to properly setup my CS build file for my project to add the module as a dependency, so then I can include the plugin header, which should give me access. There’s not a lot of documentation on this, but this is what I’ve found:

> **[Gameplay Modules](https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/GameplayArchitecture/Gameplay/)**
>
> Collections of gameplay classes belonging to a game project compiled into DLLs.

> **[A new, community-hosted Unreal Engine Wiki](https://forums.unrealengine.com/t/a-new-community-hosted-unreal-engine-wiki/141494)**
>
> After over a year in maintenance mode, the official Unreal Engine Wiki is now permanently offline. These resources now live on a new community-run Unreal Engine Community Wiki — ue4community.wiki! You will be able to find content from the official...

> **[A new, community-hosted Unreal Engine Wiki](https://forums.unrealengine.com/t/a-new-community-hosted-unreal-engine-wiki/141494)**
>
> After over a year in maintenance mode, the official Unreal Engine Wiki is now permanently offline. These resources now live on a new community-run Unreal Engine Community Wiki — ue4community.wiki! You will be able to find content from the official...

> **[UE4 Code Modules — kantan](http://kantandev.com/articles/ue4-code-modules)**
>
> What are UE4 code modules?

I still haven’t been able to access the [function from the animation sharing manager.](https://docs.unrealengine.com/en-US/API/Plugins/AnimationSharing/UAnimationSharingManager/index.html)

---

<div class="post-metadata">

**Author:** ![Shadowriver](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Shadowriver](https://forums.unrealengine.com/u/Shadowriver)\
**Post date:** [September 14, 2019, 6:18am UTC](https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267/3 "2019-09-14T06:18:06Z")

</div>

You cant do this direcly as pecially if function dont even yave UFUNCTION

Best work around is to make blueprint callable static function that calls that function as most blueprint function libraries does

---

<div class="post-metadata">

**Author:** ![ComradeHavoc](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@ComradeHavoc](https://forums.unrealengine.com/u/ComradeHavoc)\
**Post date:** [September 15, 2019, 10:16pm UTC](https://forums.unrealengine.com/t/how-to-call-and-bind-engine-plugin-function-to-bluprint/455267/4 "2019-09-15T22:16:07Z")

</div>

That’s the idea, I want to make a wrapper UFUNCTIOM function in my header. The issue is I don’t know how to call the actual function from the module in the plugin in cpp code. It seems that I get syntax errors for the plugin when I compile in engine, but if I compile in VS, nothing updates in UE.

> UAnimationSharingManager::GetAnimationSharingManager(this)-\>UnregisterActor(AActor\*  
> InActor);
