Search Unity

Rewired - Advanced Input for Unity

Discussion in 'Assets and Asset Store' started by guavaman, Sep 25, 2014.

  1. stalhandske

    stalhandske

    Joined:
    Mar 17, 2014
    Posts:
    24
    Hi

    Does anyone know if
    ReInput.mapping.GetActionElementMap(id)
    is working correctly?
    I am getting null back for IDs that were just obtained from aem.id. My IDs are numbers like 388, 410, 400, etc.

    I'm on 1.1.36.0.U2019

    Cheers
     
  2. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    You can't show the actual number of elements on an Unknown Controller. The information is not available in the high-level Rewired API. As far as Rewired's Controller system is concerned, it has 32 axes and 256 buttons. Rewired's examples (Control Mapper) that allow calibration of axes simply show a long list in a scroll box of all axes.

    I don't understand why having this count is necessary. Rewired 4 different remapping systems/examples and none of them rely on element counts and the user can still remap all buttons and axes.

    No there isn't. The Joystick Element Identifier (not the Unity Joystick Element Identifier, because the Unity version uses UnityEngine.Input and Unity does not give element counts) is low-level and is showing you the lowest-level device using the current input source. That's the purpose of the tool. To show you information that is not available through the high-level Rewired system.
     
  3. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    It does work correctly. You are misunderstanding what the value is. You cannot get this information from the Rewired Input Manager. The ActionElementMap.id is a unique runtime id which is an increment of all ActionElementMaps instantiated. This information is not fixed and cannot be obtained from the pre-defined data in the Rewired Input Manager. You can only get this value from ActionElementMap.id.
     
  4. CurryKitten

    CurryKitten

    Joined:
    Dec 22, 2016
    Posts:
    36
    Yes, but you have to accept that there are different approaches to accomplishing the same thing. What I want to see is a visualization of my axis and buttons so I can see what sticks/switches do what (RC radios all have a completely different order of things) and then I can simply assign what functions I need via a simple drop down.

    Screenshot 2020-12-03 at 21.39.57.jpg
     
  5. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Well, there is no way to do it the way you want to do it. I would have to redesign the Unknown Controller the system to make it possible. Even clunky workarounds like exposing the low-level button and axis counts through the Joystick class require changes to the system to do. There's no way to can do it with the current release.
     
  6. CurryKitten

    CurryKitten

    Joined:
    Dec 22, 2016
    Posts:
    36
    I get why the unknown controller is designed like that, and I would never expect that to change. But access to the real data, if possible, in a future release would be very much appreciated. I am already implementing clunky workarounds at the moment - by using my own number of axis/buttons available where I know it and then limiting to a max of 32 where I don't.

    I would make my own controller template, but even within radios using a very popular open source firmware (where everything would report to be the same joystick) there are loads of different number of possible layouts... and it's possible for each control to represent itself as an axis or a button depending on the RC channel that's used
     
  7. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,838
    Hello.
    For this type of controller here:

    controller.png
    It is a
    Logitech Cordless Action Wireless Sony Playstation 2 PS2 Controller!

    What would the GUID be reported for a controller such as this? Would it have a dedicated Logitech GUID or a Sony GUID (i.e. a Sony DualShock) found in the RewiredControllerElementIdentifiers listing?
    Thanks

    One more question:
    If a controller is connected which is not listed under the supported controllers here: https://guavaman.com/projects/rewired/docs/SupportedControllers.html, will the GUID always be the unknown controller GUID (
    00000000-0000-0000-0000-000000000000
    )?

    .
     
    Last edited: Dec 4, 2020
  8. stalhandske

    stalhandske

    Joined:
    Mar 17, 2014
    Posts:
    24
    Thanks for the quick reply :)

    Just to be clear, I have not been getting IDs from the Rewired Input Manager, but maybe I'm doing something else wrong. Here is a screenshot from the debugger. This is from ControlMapper.cs line 2333 where the id is obtained. Is this the wrong id? If so, is there a way to get the ActionElementMap based on this id? Or, if this is the wrong id, how do I get the correct one to use with
    ReInput.mapping.GetActionElementMap(id)
    ?

    upload_2020-12-4_9-0-4.png

    Edit:
    I made a simple example to test the above.

    Code (CSharp):
    1.  
    2. Player p = ReInput.players.GetPlayer(0);
    3.  
    4. foreach (ControllerMap map in p.controllers.maps.GetAllMaps())
    5. {
    6.     foreach (ActionElementMap aem in map.AllMaps)
    7.     {
    8.         Debug.Log(aem);
    9.         ActionElementMap aemSame = ReInput.mapping.GetActionElementMap(aem.id);
    10.         Debug.Log(aemSame);
    11.  
    12.     }
    13. }
    14.  
    This gives me the output
    Code (CSharp):
    1. Id = 12
    2. Null
    3. Id = 10
    4. Null
    5. Id = 11
    6. Null
     
    Last edited: Dec 4, 2020
  9. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    >> Would it have a dedicated Logitech GUID or a Sony GUID (i.e. a Sony DualShock) found in the RewiredControllerElementIdentifiers listing?

    No. GUID's are defined in the Controller definition and are created by me. They do not come from the controller. No controller that has no definition will have a GUID.

    https://guavaman.com/projects/rewired/docs/SupportedControllers.html

    All other controllers not listed above
    Any controller which does not have a hardware definition will be usable only through user mapping or by mapping actions to numbered axes and buttons in the Unknown Controller map. These unrecognized controllers can only be supported if you provide your users a way to remap their controls, such as by using the included Control Mapper or by creating a custom control remapping screen. If you do not provide users with a way to map their controls, only the above listed recognized controllers will be usable. If you do provide your users a way to map their controls, virtually any controller will be usable. ...

    Identifying recognized Joysticks:
    https://guavaman.com/projects/rewired/docs/HowTos.html#identifying-recognized-controllers
    ...
    If a Joystick is not a recognized controller, it will always return Guid.Empty (all zeros).
     
    ArachnidAnimal likes this.
  10. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    I am much more inclined to look into redesigning the Unknown Controller system that exposing low-level element counts (a hack... I hate codifying hacks). Every platform and input source is different and there is no guarantee element counts are even available. There's also the problem of hats which relatively few platforms even have. Whatever I do about this problem, it's not going to come any time soon because I have many very high priority tasks to add platform support for GameCore, PS5 (maybe), iOS/tvOS 14 (native), and MacOS GCController. I get asked about these almost every day and without support for these, many customers are blocked from publishing on certain platforms.
     
    Ultroman likes this.
  11. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Thanks for clarifying. I misread your post. You are right. It's broken.
     
  12. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    @stalhandske Replace it with this:

    Code (csharp):
    1.  
    2. public ActionElementMap GetActionElementMap(int id) {
    3.                 if(!ReInput.CheckInitialized()) return null;
    4.                 var allPlayers = ReInput.players.AllPlayers;
    5.                 for(int i = 0; i < allPlayers.Count; i++) {
    6.                     foreach(var map in allPlayers[i].controllers.maps.GetAllMaps()) {
    7.                         if(map == null) continue;
    8.                         ActionElementMap aem = map.GetElementMap(id);
    9.                         if(aem != null) return aem;
    10.                     }
    11.                 }
    12.                 return null;
    13.             }
     
  13. ArachnidAnimal

    ArachnidAnimal

    Joined:
    Mar 3, 2015
    Posts:
    1,838
    I have downloaded the latest RewiredControllerElementIdentifiers spreadsheet. I do not see the Xbox One S controller listed in the file. Is this considered to be the same as the XBox One controller? Thanks.
     
  14. csofranz

    csofranz

    Joined:
    Apr 29, 2017
    Posts:
    1,556
    Is there an easy way to change the raw button id that is attached to an action for a controller? We have a 100 (physical) button (literally!) board here (for testing purposes) and while the actual product is being built, the 5 (we really only need five of them) button IDs that are assigned to the functions that trigger actions in the app get constantly switched around. I have of course built a custom joystick map for the board (it's the only map rewired loads) and it works, but rewriting and re-building the app each time they switch the button ids is a hassle.

    Is there a simple way to change the (Windows) button IDs assigned to a particular action via script (I'd then read the newest ids from a config text file and assign them during start-up)? Thanks for any pointers.
     
  15. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Yes.
     
  16. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Simple is relative. This is control remapping. There's an entire API for this. See the documentation on making a control remapping screen:
    https://guavaman.com/projects/rewired/docs/HowTos.html#controller-mapping-screen

    None of this API is individually documented. It's only documented as part of making a remapping system. It's a very large and complex API and only for experts.

    Since you are trying to directly change the bindings and not poll for user input to change them, you can't use Input Mapper like most of the examples use. Control Mapper's code does not use Input Mapper uses the API directly to manipulate the bindings. You will have to do it like this.

    You have to understand the structure of Rewired's Controller Maps to understand it. Look at the pictures as the end.
    https://guavaman.com/projects/rewired/docs/ControllerMaps.html

    The easiest thing to do would probably be to start with a blank Controller Map and just generate the bindings at runtime instead of trying to change them after the fact. All of the functions to manipulate bindings are in the Controller Map:
    https://guavaman.com/projects/rewired/docs/api-reference/html/T_Rewired_ControllerMap.htm
     
  17. stalhandske

    stalhandske

    Joined:
    Mar 17, 2014
    Posts:
    24
    Thanks that worked :)
     
  18. cursedtoast

    cursedtoast

    Joined:
    Apr 27, 2018
    Posts:
    62
    Hi there,
    First off, I wanted to thank you for all the work on Rewired. It's absolutely changed my life and I can't believe I bought it 7 months ago and just recently started integrating it in projects.

    I did have a question on a matter of opinion. I see that it's possible to use event based input, rather than polling. This definitely cleans up code, but I'm curious on if there's any "snags" or "gotchas" I should be aware of before I start using it.

    Is events or polling suggested more than the other?
     
  19. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    It is purely a matter of preference. Using the event API shifts the burden of polling onto Rewired. The Unity Profiler will report all code you execute in Rewired's callbacks as part of Rewired's CPU usage which is misleading.
     
    cursedtoast likes this.
  20. LaytonDrake

    LaytonDrake

    Joined:
    May 11, 2016
    Posts:
    10
    Hi

    I recently started adding the controller mapper to my game and I was wondering if there is anyway to skip some popup windows. For example, instead of coming up with the options to replace, remove, or cancel key changing, I'd like it to automatically go straight to the replace option, same with the swap key/button option if there's a conflict (I'd like them to swap automatically without asking). Any help you could give would be great.

    Edit: Also, is there anyway I could change text color instead of the button's color when it is selected?

    Thanks :)
     
    Last edited: Dec 12, 2020
  21. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    All options in Control Mapper are shown in the inspector. If it's not in the inspector, it's not an option. All inspector options are shown in the documentation:
    https://guavaman.com/projects/rewired/docs/ControlMapper.html#inspector-options

    No, there is no option to change the text when the button is selected.
     
  22. ZSX01

    ZSX01

    Joined:
    May 31, 2018
    Posts:
    8
    Hi

    I create a mobile wheel, its just a touch joystick with only "horizontal" axis. All working good, but how i can correct rotate this image and return back after touch is over?


    Thanks for this asset =)
     

    Attached Files:

  23. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    You have access to all kinds of data from the Touch Joystick. Use the information it provides to do whatever you want. There is no built-in feature to do this for you. Look at the inspector of the Touch Joystick and at the scripting reference for the component:

    https://guavaman.com/projects/rewir...T_Rewired_ComponentControls_TouchJoystick.htm

    The most obvious would be to use the value changed event.
     
    ZSX01 likes this.
  24. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    I got the evaluation version. Will this let me test out the switch pro controller ?
     
  25. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    On desktops, yes. The trial has no support for the Switch platform.

    See the important notes on the controller on desktops. I get this "bug" reported to me too often:
    https://guavaman.com/projects/rewired/docs/SupportedControllers.html#clarifications-24

    24 The Nintendo Switch Pro Controller does not produce any input when connected via USB. This is not a limitation of Rewired. It is a limitation of the hardware and/or HID driver.
     
  26. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    I want to test it on my DESKTOP. Not the switch itself.(not yet anyways :p )
    The only other controller I have Is an Apple/iOS only, Steel series nimbus and I don’t think I can connect that to the pc.

    Anyways, to extend what I wrote above,
    I just want to test my game within unity on the desktop using a switch controller. Via Bluetooth/wired (which is best?) If yes, will it also support rumble or do I need the Nintendo’s dev kit for that part?

    I’ve read about the the pro controller being finicky to use. But it’s all I have now.
    atleast until I get an Xbox one controller which I’ve read is more accepting and universal. Do you recommend I use an Xbox controller instead?

    Speaking of which, will you be adding support for ps5 and series X/S? Also I’m using playmaker, rewired has actions for this? I see your description says it supports playmaker. But how so?

     
    Last edited: Dec 14, 2020
  27. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    As I said in my response above, yes, the Pro Controller works on desktop platforms. I also linked the note from the documentation that explains you cannot use it via USB because it simply will not work. You must use it via Bluetooth.

    No it will not. Special drivers have to be written in order to support features like that on desktops. The controllers support vibration on the Switch platform.

    Xbox controllers are more universal and work using XInput and support vibration. It depends on what you want to do.

    Xbox One GameCore support will be coming, but PS5 support is not currently planned due to not having access to development tools from Sony and very slow/no responsiveness in dealing with them on the issue. It took me months and months to get access to a GameCore dev kit from Microsoft.

    Any platform can be supported using the Custom Controller system regardless of whether Rewired has native support for that platform or not.

    The trial includes all the same PlayMaker functionality as the full version. See the documentation:
    https://guavaman.com/projects/rewired/docs/Integration.html#PlayMaker

    PlayMaker supports a limited subset of the Rewired API. It does not include any support for controller remapping or some more complex functionality.
     
  28. mdsitton

    mdsitton

    Joined:
    Jan 27, 2018
    Posts:
    66
    Whats the status on mac arm64 support since unity 2020.2 has just come out of beta? Sorry if this has been asked, have looked over changelogs and searched the forums with no hits. We're hoping to get native support in our game implemented soon.
     
  29. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    I am not currently working on Apple Silicon support. I do not have any immediate plans to do so. I am currently working on GameCore Xbox One and Xbox Series X support, then probably on either PS5 (if Sony ever gets back to me on getting access) or x86 Mac GCController support. Any potential native Apple Silicon support is very long off.

    Edit: Rewired on MacOS does not include any compiled native libraries. All it's native code is done through P/Invoke commands from within managed code to MacOS core libraries like I/O kit. That would mean it should just automatically work.
     
    Last edited: Dec 16, 2020
  30. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    Awesome. Thanks man. I’ll be trying this out soon.

    As for the switch, The vibration will reflect on the switch console (not on desktop) and I get that, but will I be able to set it up in unity with rewired? Like for when I want it vibrate or not? I am assuming so.

    is this the same case for Xbox controllers? Or doe Xbox controllers actually due vibrate within the editor?

    As far as I can tell rewired seems to be one (if not the only) asset to support rumble feedback for console controllers. Is that correct ?

     
  31. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Let me clarify something. Rewired on Mac has no native libraries whatsoever. Its native implementation is entirely P/Invoke commands from managed code. As long as Apple Silicon still has the same I/O kit and other core MacOS libraries it uses, it should just automatically work.
     
  32. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    See the documentation on vibration:
    https://guavaman.com/projects/rewired/docs/HowTos.html#Vibration-Rumble

    Xbox controllers support vibration on Windows, OSX, and Linux:
    https://guavaman.com/projects/rewired/docs/FAQ.html#force-feedback

    Switch has more vibration options but I cannot cover them here because it's covered by NDA.

    I don't know anything about the specific console features of other input managers.
     
  33. phdhamster

    phdhamster

    Joined:
    Jun 16, 2020
    Posts:
    12
    Hi there, is there an easy way to make the stock runtime rebinding utility, ControlMapper, less verbose? In other words, if I am re-assigning a key that is already bound, I would like to bring up the "Press a key to bind this action" prompt right away, without selecting "replace." Then if the new key is already assigned to something else, it would be great if a player could automatically replace or swap it without being asked to confim. I was looking through the Control Mapper script to find a workaround on my own but it's a fairly complex document.

    Thanks for making this utility, it is a lifesaver.

    Edit: After looking some more I see that there are some simpler examples of rebinding. I think I will start from there.
     
    Last edited: Dec 16, 2020
  34. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    All options like that are shown in the inspector:
    https://guavaman.com/projects/rewired/docs/ControlMapper.html#inspector-options

    There is no options to selectively skip various dialogs.
     
  35. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    Sounds good.
    Im now wondering if the Xbox series x controller itself will work with rewire on pc (using the Xbox series x controller for computer gaming, not console, cause I know you are still working on series x console support).

    Would it? (Wired and wireless?) I don’t have an Xbox one controller. Only a series x controller. I wanna test this on pc with rewired. The controllers are backwards compatible with Xbox one and windows and even Mac OS. So I’m assuming it should work with rewired but I’m not 100%.

    Also is there a timeline or hopeful release date for the series x console support ?
     
    Last edited: Dec 16, 2020
  36. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    All Xbox controllers are XInput compatible and will always work on Windows when using XInput. That's what XInput was designed for -- universal support of XInput compatible controllers.

    It may not "work" on Mac OS or Linux in the sense that it will be automatically recognized and mapped. If not, it will appear as an Unknown Controller on those platforms because they do not have XInput and I have not updated the controller definitions to include support for this controller's identifying information (assuming it's different than any other Xbox One controller). If you disable XInput on Windows, it may also not be recognized. Unrecognized controllers must be mapped by the user at runtime.

    (Edit: Well, it is recognized on Windows without XInput because it uses the same identifier as the normal Xbox One controller, at least on Windows. It's likely it will work on Mac and Linux then because I use multiple different criteria to try to match these controllers including HID vendor/product ids and regex patterns on the product names. FYI this is the first time testing the controller because of your question.)

    Every single recognized controller is listed on this page. The version of Rewired that supports these controllers is listed at the top of the page.

    If you want to test something, download the trial. It has 100% of the features of the full version:
    https://guavaman.com/rewired/trial

    There is no ETA on support for any new platforms. When I get it done, it will be announced here.
     
    Last edited: Dec 17, 2020
  37. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    I see. Thank your for the fully detailed reply. Learning new things here.

    I have the trial version already imported to my project. Just haven’t messed with it yet but I will soon. I’ll load up your videos on youtube and follow instructions. I’ll let you
    Know on the results. Thank you.

     
  38. Nwy140

    Nwy140

    Joined:
    Jul 15, 2017
    Posts:
    5
    Is there a going to be a sale for rewired soon?
    There's a discount for InControl in the New Year Sale but not for rewired?
     
  39. flashframe

    flashframe

    Joined:
    Feb 10, 2015
    Posts:
    798
    It’s honestly great value for money.
     
    guavaman likes this.
  40. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Rewired is not going to be on sale again. It's already priced well below what I consider fair for the amount of time I have to spend maintaining, supporting, and improving it.

    In my opinion, having fire sales doesn't make any sense for a product like this that comes with free support, especially when it's a complex product that has a high support to user rate.
     
    Last edited: Dec 19, 2020
    ratking likes this.
  41. phdhamster

    phdhamster

    Joined:
    Jun 16, 2020
    Posts:
    12
    When InputMapper is polling for button presses, is there a way to disable negative inputs from triggers on the PS4 controller? have Activate Action Buttons on Negative Value disabled, and I've been assigning gamepad binds to the Gamepad Template, which treats the R2/L2 as buttons, but it looks like the DS4 template treats R2/L2 as an axis. Is there some setting I can configure to treat the DS4's triggers as buttons? Essentially I don't want players to release R2 when binding a button and accidentally bind something to R2-.
     
  42. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    No there isn't. That's one reason Control Mapper has those dialogs that tell the user to center their buttons before they begin polling, otherwise it detects the release of the stick as an input. Rewired is written to support polling from any device of any type regardless of the format its native axes return or whether the device is recognized or not. Every device is different and axes may use negative values when you think they should use positive and vice versa, be calibrated weirdly, or return a value of -1 at rest, etc. Rewired has to account for everything, so binding the negative side of a trigger is a possibility.
     
  43. Driiade

    Driiade

    Joined:
    Nov 21, 2017
    Posts:
    80
  44. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    What it supports depends on the platform. iOS and tvOS are entirely based on UnityEngine.Input and wrap their system which does use GCController. You have to jump through extra hoops to get glyphs and naming to their standards because Rewired has no glyph system and Apple's API for identifying controllers in the way they do is not available to Rewired without native code:
    https://guavaman.com/projects/rewired/docs/Troubleshooting.html#ios-xbox-ps4-controllers

    Rewired on MacOS does not support it.
     
  45. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    I hit a strange issue with rewired on 2020.2/windows. Somehow it seems like it's forcing a massive wait. It acts just like if vsync was on with framerate capped to 60. But it doesn't show directly in the profiler, instead the profiler shows the render thread waiting.
     
  46. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,551
    Absolutely!
     
  47. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    Sounds like Unity's problem to me. Almost no chance I can fix something like this. It might have something to do with a cascade of effects from native Windows API calls like this:
    https://guavaman.com/projects/rewir...#windows-editor-keyboard-keys-stuck-raw-input
     
  48. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    I'm not seeing any kind of render thread wait in 2020.2. It probably has something to do with specific settings, devices, or other variables that are in your system/project that aren't in mine.
     
  49. QbAnYtO

    QbAnYtO

    Joined:
    Dec 18, 2016
    Posts:
    223
    Ok so I'm running the trial version of rewired and I have my new Blue Shock Xbox controller paired to my windows laptop and working. I followed your guide here:

    Rewired Documentation | Quick Start (guavaman.com)

    so then when I attached the script sampled out in that ink above and i get the error:
    MissingComponentException: there is no "characterController" attached to object, but a script is trying to access it"

    I don't have a character controller but i added it anyways for the sake of trying to get this to work and what happens is this oddity:

    I can now move my character Up and down on the Y plane...which is incorrect (this is a 3d platformer, Not a top-down 2d game lol) and when I hit the action button to attack, it created a Duplicate of my main character lol! so weird.

    I'm getting somewhere but incorrectly :p
    I'll keep tinkering with it but maybe you can offer some guidance here. Do I have to add the character controller? why is the character duplication? and how can I get movement on the x/z axis instead of the y axis? And what exactly is the bullet speed and bullet prefab for?

    Btw I couldn't find the playmaker behaviors. Let me know thanks!
     
  50. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    5,633
    The things you are asking me show you have questions about how Unity and scripting work at a basic level (inspector references, object instantiation, moving an object on a 3d plane, etc.). I can only provide support on my tool, not the basics of Unity or C#. Understanding both scripting and how Unity works is prerequisite to using Rewired.

    From the quick start where you copied the code:
    "NOTE: This example is not meant for use in your project. It serves no purpose other than to teach you how to get input from a Player. You will have to write your own scripts to move your characters/objects around the scene."
     
    Last edited: Dec 24, 2020