NEWS #
Touch Interface (Runtime) #
- New types of debugging have been added : You can now see the index finger, the press duration time, and the lines between the fingers.
Layout Component #
- Recentering Mode : It is now possible to choose between three recentering modes
- Fixed : do nothing. Keep it’s location.
- Dynamic : recenters to the finger’s location if it is within the hitbox.
- Following : It recenters to the finger’s position if it’s within the hitbox, then follows the finger if it reaches the edge of the component. This allows the user to keep the component always under their finger.
Layout Component Logic #
Shared
- Haptic : Haptic effects have been extended to all logic levels. A new effect has been added that triggers a vibration based on finger movement or a special event. For example, the joystick can trigger a vibration when the thumbstick moves a certain amount. This improves user feedback and compensates for the lack of tactile information and movement in a physical joystick. The effect is particularly useful on a knob in selector mode.
Advanced Joystick
- Sprint Layer : The sprint layer display is now independent of the trigger value used to initiate the sprint. There are now three modes for displaying the layer.
- On Press : Displays the sprint layer when user’s finger touch the component.
- Trigger : Displays the sprint layer when the display sprint layer trigger is reached.
- Always : Always display the sprint layer.
- Variable Reorganization : The variables have been slightly reorganized to improve consistency.
Drawing Logic
A new logic based on Free Touch Logic has been added to support shape detection. In future updates, this logic will be improved to support true drawing with all the expected and necessary features.
Layout Component Decorator #
- Widget Layer Sends Inputs : The Widget Layer can now send inputs to the Widget Blueprint. The Widget Blueprint must implement the ILayoutToWidget interface.
- Size Animator : The animator has been completely revised to offer animation presets and make the animations more consistent.
- Rotation Animator : The same operation was performed for the rotation animator.
Touch Interface Listener #
- Touch Event Listener : A simple listener to capture touch events from the touch interface. Previously, the Gesture Recognizer was required.
- Gesture Recognizer : The gesture recognizer code has been partially revised to improve organization and readability. Also, to improve gesture detection, the code for detecting each gesture has been partitioned into a UObject. This feature is still experimental. If you choose this new system, you must select each gesture that the recognizer should detect from an array. This new system brings significant improvements and new features. For example, you can see the number of fingers used for a tap and how many times the user has performed this gesture. There is no longer a limit like in the previous system. Gestures like three-finger taps and zooms are now possible. For simple gestures, it is possible to use an Input Action to receive input via the Enhanced Input system.
Touch Interface Library #
- Print Function : On smartphones, the “PrintString” or “PrintText” function can be difficult to read because the text size is too small. Touch Interface Designer allows you to print text in a larger size. You can define the text size in the plugin settings.
Layout Editor #
- Widget Handle Space : The pivot system in Touch Interface Designer now supports component angle. You can switch between Layout and Component space using the viewport toolbar.
IMPROVEMENTS #
- Improved Widget Structure : The component size is now the size of the hitbox. Another widget has been added to hold the decorators. This widget is recentered when necessary. There is a new property on the layout component to define the overall size of the decorators relative to the component’s geometry. This change was necessary to simplify layout calculations, especially for the new recentering functionality.
- Improved Recentering Behavior : In connection with the improvement of the widget structure and the addition of new functionality, the recentering is now more consistent, predictable and reliable.
- Touch Interface Listener : The code has been slightly modified to better support local multiplayer. The component can now automatically register with the subsystem, but you must disable this feature for local multiplayer games. You must then manually register the listener by retrieving the subsystem.
- Size Animator for decorator : Code simplications and optimizations.
- Engine Compatibility : Unreal Engine 5.8 preview support.
DEPRECATED OR REMOVED #
- Remove everything related to the old VCS (virtual control setup) system. To continue using Touch Interface Designer, you need to convert a VCS to a Touch Interface Layout. How do I convert it?
- Shape Recognition on the touch interface has been removed as it was neither implemented nor useful. You should use a layout component with drawing logic.
BUG FIXES #
- Crash when gamepad is connected after launch.
- [Editor] When in portrait mode, selecting another device preview returns to landscape.
- [Editor] Incorrect pivot position in portrait mode.
- [Editor] Incorrect pivot location when orientation change.
- [Editor] Incorrect pivot porision with parent that has an angle != 0.
- Drag end called by another finger.
- Knob Logic crash is Input Action not set
KNOW BUG #
- Error on end play with Widget Layer.
- Anchor Handle incorrect location with angle != 0.
