Ah, we love to see that people can use the toolset, especially when they come from Unity and iTween already so we don’t have to sell them on the merits of it Let us know if you have any questions about transitioning from Unity’s iTween to Unreal’s iTween. They’re different engines with different needs so things needed to be handled in a way that was familiar to Unity users but still worked within Unreal’s (blueprint) limitations and played to its strengths.
So I took some time this weekend to play around with Paper2D and I can say without a doubt that iTween does indeed work with Paper2D. It looks like Paper2D is the system by which sprite animation is created and is not a separate engine system at all, so all of the motion stuff still works exactly the same. Of course my Paper2D usage is not exhaustive nor extensive, so if there are any features in Paper2D for which iTween does not have a solution, please make it known and we’ll address it with priority. Happy tweening!
Awesome :D. That’s not something I could use myself but great work :D! Look brilliant. And nice to have a reference to get a more clear idea of how the EaseTypes work :).
Happy New Year to you too, hope it’s a successful one for you :)!
Thanks, Swift! Could I ask though, what do you mean when you say, “That’s not something I could use myself” ? Are you referring to the scripting parser?
^^.
Sorry for not being specific, yeah I meant the scripting parser, no personally good with any scripting beyond visual scripting but I can see how it’ll definitely be useful for others so it’s awesome to see all the work you’ve put into that :).
Oh, Swift, that’s not the spirit! In the coming weeks, I’ll be doing a video on the parser. I strongly encourage you to look at it. It can save you a lot of time and a lot of graph space!
Oh sweet, if you do a video on that I may just try and tackle it in the future at least to see how I go with it :), thanks for also being so diligent with your tutorials :D.
Just installed 0.8(never used previous versions). All the nodes are there but when I try to use one it crashes UE4 after exiting “Play.” It doesn’t work while playing either, so I’m sure I’ve missed a step somewhere. Any ideas?
Thanks!
Edit: I’ve deleted iTween and reinstalled and tried using different iTween nodes, same results.
Btw, you’re awesome for making this for the public.
-Which installation did you choose, Blueprint-only or C++ compiled?
-Which version of the UE4 editor are you using?
-Does this happen with a clean (new) project?
I’ll also push out a new version in a minute, you might try that too.
No other plug-ins. On a positive note, if I play it in a new window it doesn’t crash. If i play it as a standalone game, the object with the itween node don’t show up.
New situation, heh. Yep, iTween is broken in standalone now. For now play in a new editor window; on Monday I will figure out what’s preventing functionality in standalone. I would figure it out this weekend, but I forgot my laptop power brick back at home.
Really simple fix. I had the plugin marked as “Editor” instead of “Runtime.” Oversight on my part. This link will fix the problem. Download this one and it’ll work in standalone/shipping.
I found the problem. It’s a LandscapeGizmoActiveActor in my scene from by back when. If I delete it, iTween is completely happy. Luckily I don’t need it but thought you should know the source.
That’s exceptionally strange. Redsett, if you wouldn’t mind, are you using the new version I just just uploaded last thing last night? If not, what does deleting the landscape actor do? Does it allow itween to run in a standalone game? Or something else? I don’t mean to barrage you with questions, just trying to understand this weird situation!
Not a problem. Before deleting that, itween wouldn’t work and then UE4 would crash after I stopped the game. Completely happy after deleting “LandscapeGizmoActiveActor.”
Still using the last version, not using standalone game right now.
Changelog:
~New Features
-Installer now has a visible log. Click “Show Log” while using the iTween installer to see a verbose record of what the installer has done and copy the log to your clipboard with the “Copy Log” button.
-Interfaces now pass through a reference to the iTweenEvent that calls the interface message. This is labeled as “Event Operator.”
-Users can now Get iTweenEvent objects from functions GetEventByIndex, GetEventsByTweeningObjectName, GetEventsByTweenName, and GetEventsByTweeningObjectReference. The first returns a single iTween event; the rest return an array of them because it is possible to name multiple events the same thing and it is possible to have multiple events act upon a single object.
-Previously all tweens operated on a Tick event, but now tweens can operate on a fixed interval. In the Full functions, this parameter is called “Timer Interval.” By default, Timer Interval is 0. At 0, the tween will operate on the Tick function. This is the traditional way. You can force an interval by entering any other number into the field. For example, entering 0.5 will update the tween every half second. Entering 0.033 will force ~30 frames per second for the tweening operation. If too many tweens (especially UMG RT tweens on a 3D widget) are slowing down your performance, try entering a higher interval on some of them to force a lower update rate. Try not to enter an interval that will result in a higher update rate than your current frames per second - For example, if you’re running at 30fps, entering an interval lower than 0.03 is wasteful.
This option can be set when using Simple, Expert, or Minimal functions by using the “timerinterval”, “interval”, or “ti” keys on the “Parameters” input. It takes a float as a value.
Additionally this value can be set after the fact at any time by calling “SetTimerInterval” on the iTween Event object that’s operating the tween.
Again, 0 = tick function. Anything greater than zero forces updates at that interval. Negative values are converted to positive values.
~Bugfixes
-Fixed crash that occurred when interpolateToSpline was true but a spline component was not specified which was possible by enabling interpolateToSpline and running a non-spline operation.
-Flagged library with “UnsafeDuringActorConstruction” to avoid crashes when calling iTween functions from Construction Script. Attempting to compile with iTween functions on your construction script graph will result in compile warnings. This may change in the future.
-Fixed issue with not restoring actor’s original “Tick When Paused” setting after a tween’s completion. Now the actor’s setting before tweening will be set back to what it was after the tween is finished, whether it was true or false.
-Code consistency pass
Known issues:
~ActorRotateFromTo
-Constraining pitch causes rotation jumping
~ActorScaleFromTo
-No spacialization options
~ActorMoveToSplinePoint
-No handling for “out of bounds” easetypes
~ComponentMoveToSplinePoint
-No handling for “out of bounds” easetypes
~ActorRotateToSplinePoint
-No handling for “out of bounds” easetypes
-RotateToPath does not respect initial rotation; will snap rotation so that up vector of actor aligns with up vector of world
~ComponentRotateToSplinePoint
-No handling for “out of bounds” easetypes
-RotateToPath does not respect initial rotation; will snap rotation so that up vector of component aligns with up vector of world
Epic update :D! That interval especially is an honestly incredibly awesome feature addition to this and will seriously expand the potential usage situations for the iTween plugin :D!!!
Haven’t had a chance to check it in the engine but if it’s not already the case, would it be possible to change the iTween interval dynamically? Like plugin a get variable to it so you could change the interval timer during gameplay.