# Assert failed at animation state transition blueprint

**URL:** <https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518>\
**Category:** Character & Animation\
**Tags:** assertion-failed, unreal-engine, transition, question\
**Created:** [April 9, 2016, 9:50am UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518 "2016-04-09T09:50:46Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 9, 2016, 9:50am UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/1 "2016-04-09T09:50:46Z")

</div>

Hi. I have an assertion failed issue **ReferenceController-\>SharedReferenceCount \> 0** at animation state transition blueprint (Debug Editor, source build 4.11.0). I have added **Get** references to boolean variables of the animation blueprint multiple times (my own vars). This issue is from 4.10 too. I did a simple manipulation of variables, such as logical operators AND, OR and remove them all after.

```
 	UE4Editor-SlateCore-Win64-Debug.dll!TSharedPtr<IToolTip,0>::~TSharedPtr<IToolTip,0>()	C++
 	UE4Editor-SlateCore-Win64-Debug.dll!SWidget::~SWidget() Line 60	C++
 	[External Code]	
 	UE4Editor-GraphEditor-Win64-Debug.dll!SharedPointerInternals::TReferenceControllerWithDeleter<SGraphNodeK2Sequence,SharedPointerInternals::DefaultDeleter<SGraphNodeK2Sequence> >::DestroyObject() Line 104	C++
 	[External Code]	
 	UE4Editor-SlateCore-Win64-Debug.dll!FDelegateBase::Unbind() Line 139	C++
 	UE4Editor-SlateCore-Win64-Debug.dll!SWidget::~SWidget() Line 60	C++
 	[External Code]	
 	UE4Editor-GraphEditor-Win64-Debug.dll!SharedPointerInternals::TReferenceControllerWithDeleter<SToolTip,SharedPointerInternals::DefaultDeleter<SToolTip> >::DestroyObject() Line 104	C++
 	UE4Editor-SlateCore-Win64-Debug.dll!SharedPointerInternals::FSharedReferencer<0>::operator=(const SharedPointerInternals::FSharedReferencer<0> & InSharedReference) Line 410	C++
 	UE4Editor-SlateCore-Win64-Debug.dll!SWidget::SetToolTip(const TSharedPtr<IToolTip,0> & InToolTip) Line 597	C++
>	UE4Editor-GraphEditor-Win64-Debug.dll!SGraphNode::OnToolTipClosing() Line 411	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::CloseToolTip() Line 3066	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::UpdateToolTip(bool AllowSpawningOfNewToolTips) Line 3250	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::ProcessMouseMoveEvent(FPointerEvent & MouseEvent, bool bIsSynthetic) Line 5103	C++
 	UE4Editor-Slate-Win64-Debug.dll!FSlateApplication::OnMouseMove() Line 5060	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::ProcessDeferredMessage(const FDeferredWindowsMessage & DeferredMessage) Line 1462	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,0> & NativeWindow, HWND __* InHWnd, unsigned int InMessage, unsigned__ int64 InWParam, __int64 InLParam, int MouseX, int MouseY, unsigned int RawInputFlags) Line 1732	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::ProcessMessage(HWND __* hwnd, unsigned int msg, unsigned__ int64 wParam, __int64 lParam) Line 754	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsApplication::AppWndProc(HWND __* hwnd, unsigned int msg, unsigned__ int64 wParam, __int64 lParam) Line 618	C++
 	[External Code]	
 	UE4Editor-Core-Win64-Debug.dll!WinPumpMessages() Line 862	C++
 	UE4Editor-Core-Win64-Debug.dll!FWindowsPlatformMisc::PumpMessages(bool bFromMainLoop) Line 887	C++
 	UE4Editor-Win64-Debug.exe!FEngineLoop::Tick() Line 2610	C++
 	UE4Editor-Win64-Debug.exe!EngineTick() Line 52	C++
 	UE4Editor-Win64-Debug.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE __* hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 145	C++
 	UE4Editor-Win64-Debug.exe!WinMain(HINSTANCE __* hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 189	C++

```

> Assertion failed:  
> ReferenceController-\>SharedReferenceCount \> 0 [File:d:\myprojects\unrealengine4\unrealengine4\unrealengine\engine\source\runtime\core\public\templates\SharedPointerInternals.h]  
> [Line: 290]
> 
> UE4Editor-Win64-Debug.exe has  
> triggered a breakpoint.

where ReferenceController-\>WeakReferenceCount == 2

![86040-bug.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/8/2/1/8218dee900b564d8f302827f1609d1d0a4ccd949.png)

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_280dd372](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_280dd372](https://forums.unrealengine.com/u/anonymous_user_280dd372)\
**Post date:** [April 11, 2016, 4:38pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/2 "2016-04-11T16:38:12Z")

</div>

Hey vs,

I’m having trouble reproducing this on my end. Is this only occurring in debug editor for you? Could you provide some more info to help reproduce this or possibly an example project?

If you want to send an example project privately, you can PM me on the forums. Please include a link to this Answerhub page in your message.

-.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 11, 2016, 8:23pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/3 "2016-04-11T20:23:39Z")

</div>

I can not persistently reproduce the problem, I will try to understand what exactly is going in my project. I’m trying to reproduce it in a standard third person example project but unsuccessfully.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 11, 2016, 8:26pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/4 "2016-04-11T20:26:26Z")

</div>

It is for Debug Editor build only

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 11, 2016, 8:37pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/5 "2016-04-11T20:37:44Z")

</div>

The causer is the SGraphNode, Get boolean variable value node’s tooltip.

 ![86391-2.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/1/3/8/138e02926f466943c00a33c66871dfb0dee65444.png)

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 12, 2016, 2:04pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/6 "2016-04-12T14:04:44Z")

</div>

There is a copy of PM to .Williams

1. Open ThirdPerson\_AnimBP
2. Open animation Graph editor
3. Go to New State Machine
4. Go to State to State1 transition blueprint
5. 

Remove getter node for any boolean (I test boolean). For example New Var 1. Remove node then Undo (Ctrl+Z) and drag selection frame from right to left. Do it multiple times. Remove - undo - drag from right to left.

Example project:

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_280dd372](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_280dd372](https://forums.unrealengine.com/u/anonymous_user_280dd372)\
**Post date:** [April 14, 2016, 3:59pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/7 "2016-04-14T15:59:08Z")

</div>

Hey v.s.,

A couple of us have been trying for a while and absolutely cannot reproduce this crash. Are you trying to do your development in Debug Editor?

-.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 14, 2016, 4:40pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/8 "2016-04-14T16:40:15Z")

</div>

I am working in Debug Editor from time to time because I am programmer. This assertion failure is for Debug Editor ONLY (no assertions in Development build) but it presents in Development too but without assertion. This problem is the lack of release of shared pointer to complex tooltip of the SGraphNode (+ mouse move event).

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_41845f4a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_41845f4a](https://forums.unrealengine.com/u/anonymous_user_41845f4a)\
**Post date:** [April 14, 2016, 8:35pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/9 "2016-04-14T20:35:48Z")

</div>

Hello v.s.,

I’ve attempting reproducing this issue in Debug while built for Debug Editor but haven’t had much success. Just to ensure that I’m doing it correctly, I decided to record the process:

![86913-animation.gif](https://d3kjluh73b9h9o.cloudfront.net/original/4X/5/6/2/5629f4aaf0874fc4e2072f4a266ee232c8d37402.gif)

Does this match up with what you’re doing? If not, is there a part that I’m missing?

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 14, 2016, 8:46pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/10 "2016-04-14T20:46:53Z")

</div>

I do several operations of selection and deletion of the node but the exception does not always work in 1 or 2 cases. Sometimes it is necessary to do this 5-6 times or more.  
Try to experiment with code:

```
void SWidget::SetToolTip( const TSharedPtr & InToolTip )
{
	if (!InToolTip.IsValid())
		ToolTip.Reset(); // no assertion
	else
		ToolTip = InToolTip; // assertion
}

```

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_41845f4a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_41845f4a](https://forums.unrealengine.com/u/anonymous_user_41845f4a)\
**Post date:** [April 15, 2016, 2:52pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/11 "2016-04-15T14:52:36Z")

</div>

While the gif is quite repetitive, that is a gif of me attempting the reproduction 6 times before it loops. When you say experiment with code, do you mean editing the source code? Does this assertion require editing source code to occur?

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 15, 2016, 3:03pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/12 "2016-04-15T15:03:56Z")

</div>

This assertion does not require editing of source code. Bug is unstable. I’m doing the following steps, their order does not always lead to the reproduction of the error, the exact amount of action is unknown to me. Select multiple nodes or one and remove them then Undo. Do a combinations of these actions multiple times. Do selections of empty space.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_357b6e5a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_357b6e5a](https://forums.unrealengine.com/u/anonymous_user_357b6e5a)\
**Post date:** [April 15, 2016, 3:11pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/13 "2016-04-15T15:11:28Z")

</div>

I guess I will have to record a video

[https://drive.google.com/file/d/0B6VhapqQv3c4NjhvSHQycmJvOFk/view?usp=sharing](https://drive.google.com/file/d/0B6VhapqQv3c4NjhvSHQycmJvOFk/view?usp=sharing)

[https://drive.google.com/open?id=0B6VhapqQv3c4UWhhUmRNT05kMmM](https://drive.google.com/open?id=0B6VhapqQv3c4UWhhUmRNT05kMmM)

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_41845f4a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_41845f4a](https://forums.unrealengine.com/u/anonymous_user_41845f4a)\
**Post date:** [April 19, 2016, 5:37pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/14 "2016-04-19T17:37:54Z")

</div>

Thank you for that information. It seems like the repro requires being quite a bit more erratic than I expected. I’ve reproduced the problem in the project you provided and am currently in the process of trying to reproduce it in a fresh project based off the Third Person template, to make sure the problem isn’t project specific. If I can do that, I’ll be putting a bug report in for the problem so it can get on the track to be fixed.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_41845f4a](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_41845f4a](https://forums.unrealengine.com/u/anonymous_user_41845f4a)\
**Post date:** [April 20, 2016, 3:36pm UTC](https://forums.unrealengine.com/t/assert-failed-at-animation-state-transition-blueprint/353518/15 "2016-04-20T15:36:14Z")

</div>

I was able to get the crash to happen in a blank project with just an animation blueprint, so at this point it is fairly easy to reproduce. Thank you for working with me on getting the reproduction case down. I’ve placed a bug in for the issue under the number UE-29695. I’ll be sure to update you here whenever a fix goes in.

Have a nice day!
