Announcement

Collapse
No announcement yet.

Hardware Breakpoints plugin by Roboxel

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [SUBMITTED] Hardware Breakpoints plugin by Roboxel



    Click image for larger version  Name:	banner.png Views:	1 Size:	55.6 KB ID:	1540444

    Ever had a bug where a variable is changing in some undesired way and you can't seem to find the cause? Are blueprint breakpoints not helping you detect where your function is being called from?

    Hardware breakpoints can help you pinpoint the cause, whether you are familiar with debugging or not.

    We've made this plugin to help UE4 developers, from beginners to experts, to have an easier time debugging hard to find bugs.



    Click image for larger version  Name:	FEATURED-IMAGE.png Views:	1 Size:	239.0 KB ID:	1540445

    Features
    • Works with, or without an attached debugger
    • Set data breakpoints on almost any property exposed to Unreal's property system from Blueprints or C++
    • Set hardware function breakpoints on Blueprint or native functions
    • Set data breakpoints with any condition from C++
    • Set NaN detection data breakpoints on any float property from Blueprints (triggers when the float property is set to a NaN value)
    • Displays a modal popup with a detailed callstack, of where data is being modified from, or where the function is being called from. The popup gives you the chance to attach a debugger and step into the code, if you didn't have one already.
    Planned Features
    • Improve popup to allow you to manage breakpoints, to prevent users without a debugger from being stuck in an endless popup loop.
    • Add generic C++ conditions for function breakpoints
    • Add generic blueprint conditions for data and function breakpoints
    Known Limitations
    • Hardware breakpoints are platform specific. This plugin currently only supports the Windows platform.
    • There can only be a limited number of breakpoints set at any one time (4 is the usual limit on modern desktop CPUs)
    • Data breakpoints cannot currently be set on items within Dictionary properties from Blueprints. (However, it can be done in C++ by using FPlatformHardwareBreakpoints::SetDataBreakpoint with the address of the item).
    • Native function breakpoints set with the Blueprint node will only hit when the function is invoked from Blueprints or from a dynamic delegate. To debug all invocations of a native function, see the native function FPlatformHardwareBreakpoints::SetNativeFunctionBreakpoint
    Technical Details
    • Full C++ source code included
    • Precompiled binaries included for Win32 and Win64
    We've submitted this plugin to the Marketplace, but it's available for purchase now at https://roboxel.itch.io/hardware-breakpoints

    Let us know what you think of the current and planned feature set. We're anxious to hear your feedback!
    Last edited by Roboxel; 10-25-2018, 10:13 PM.

    #2
    I was looking for exactly this to save me some implementation time! Is it still available in any form?

    Comment

    Working...
    X