Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice
  4. Dismiss Notice

Debugging Games - more like hell or a walk in a park for you?

Discussion in 'Assets and Asset Store' started by KamilQ, Aug 24, 2017.

  1. KamilQ

    KamilQ

    Joined:
    Aug 23, 2017
    Posts:
    3
    Hello everyone!
    I’m new here but curiosity got better of me.
    I wanted to ask if debugging your games is more like hell for you or a walk in a park maybe?

    As a kind of unintended side effect of developing RevDeBug we have created a reverse debugger for Unity 3D. A few weeks ago we added support for Android and iPhone as a working proof of concept but it does have quite good performance on newer devices: https://unity.revdebug.com/

    Do you think such a tool would be useful in your development pipeline?

    Here is a video of the tool in action:


    PS. RevDeBug is developer's tool that allows to record what the code behind has done and replay it afterwards, which can help finding root causes of bugs.
     
    Arkade and Braineeee like this.
  2. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    653
    Hi
    Looks very nice. I would offer a couple of items of feedback.

    1. The time to load what was a relatively short bit of gameplay for a simple game was quite long. I'd fear more complex or longer recordings. A potential solution to this might be taken from DTrace...

    2. It might be an idea to implement a way to restrict the recording to reduce its size. DTrace addresses this by providing a language that specifies when to record what. It's very powerful but those that can't be bothered can merely record everything. One advantage to this is that one can specify conditions under which to stay recording including provisionally recorded data (in a circular buffer). E.g. script to detect condition A happening them B and start recording until C followed by D.

    Anyway, I've signed up for the interest list. Obviously price will be a deciding factor in your success and I predict it'll be above my limits but it's certainly very interesting. Best of luck!

    HTH!
     
  3. KamilQ

    KamilQ

    Joined:
    Aug 23, 2017
    Posts:
    3
    Thanks for your input!

    We'll look up a way to describe what to record, DSL in DTrace looks quite nice.
    Right now we do have two mechanisms to restrict the size of recording. You can exclude code from being recorded by adding a "NoTimeTravel" region around it or you can exclude whole files writing their names or regexp that will match them in .rdbignore file. You can look how we have used those to limit what is recorded with OpenRA project (it's not a unity game but a game nonetheless :))

    Right now we are working on something we all internally recpoints. To describe it best -- imagine you can enable or disable recording for particular methods on the fly without redeployment (with or without recording methods deeper in the call stack if necessery).

    Do you think something like that could work for you?
     
  4. unity_RMiJ7SENDRQxhQ

    unity_RMiJ7SENDRQxhQ

    Joined:
    Oct 5, 2018
    Posts:
    8
    So, Can we use it in unity?
    Maybe it's not a good solution for Production but for development its awesome. If possible please make a tutorial how to use it with unity.