Giter Club home page Giter Club logo

vex-unity-simulator's People

Contributors

baconomist avatar

Watchers

 avatar  avatar

vex-unity-simulator's Issues

Robot Debugger

Create a robot debugger(robot editor script) in which the robot is set to a DEBUG state where it waits for a message to tell it to execute a thread update(manually set the bool _canRobotThreadUpdate) on each click of a button. This way you can see exactly what is happening at any given point in time.

... Or just use Debug.Break() to pause Unity

Field randomization

Create a script that randomly generates a vex field within tolerances.

(Since in the real world, your robot needs to be able to handle such tolerances as laid out by Vex themselves)

Be prepared for minor field variance.Field Element tolerances may vary from nominal by ±1.0”. Cube tolerances may vary from nominal by ±0.10”. Cube placement at the beginning of Matches may vary from nominal by ±1.5”. Te a m s are encouraged to design their Robots accordingly. Please make sure to check Appendix A for more specific nominal dimension and tolerances. Note: The field perimeter should always be resting upon the Field Perimeter Rubber Feet, regard-less of whether or not the tabs have been cut from the foam field tiles.

Accurate Physics

Take some time to make sure that the simulator correlates with the real world.

Test using the real robot and tune the physics system to get similar results.

Stuff to consider:

  • Wheel colliders vs. rotating bodies, can rotating bodies work?
  • Create a standard in Unity for correlating Unity's coordinates to physics units.
    IE: (0, 1, 0) = 1 meter up
    Best way to do this is to maybe have a Physics class
    and methods like Unit.convertTo(UnityType unitType)
    Unit being a unit class that is used for calculations rather than simply native number types
  • Increased Physics time step?

c++ DLL Management Script

Create a c++ script that reloads and copies Unity Simulator build DLL using a Unity COM implementation of said script.

As of now, the unity implementation works just fine...

Create Inventor OBJ Exporter Script To Name OBJ Objects

Currently, when exporting .obj files from inventor, the object names depend on their index in the editor. If that index changes due to moved parts or deleted parts, the link between Unity and Inventor parts will break and the parts referenced in unity will no longer be the same as they were.

Instead make an addon that assigns each object a persistent uid or custom name the user provides and then exports the .obj file with those names.

Could just use blender instead of cad though... It keeps references to named objects w/ .fbx export. However, it's not as easy to use for CADDING...

c++/unmanaged native dll debugger for robot code

Allow the user to add breakpoints into their c++ code which they can capture within Rider or unity in General.

One idea is to make a unity callback for coded-in breakpoints to pause the game, but that isn't as good as a full-on Jetbrains-style debugger.

Currently, if Unity crashes, Visual Studio is a viable debugger.
However, adding breakpoints into c++ code and them exporting them to be debugged in Rider or Visual Studio would be optimal.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.