Giter VIP home page Giter VIP logo

orange-panda / rewired-glyphs Goto Github PK

View Code? Open in Web Editor NEW
23.0 1.0 5.0 3.01 MB

An expansion for Guavaman's Rewired Unity Asset that provides a simple to use API for showing input icons to the player at runtime based on their input method and bindings.

Home Page: https://orange-panda.github.io/Rewired-Glyphs/

License: MIT License

C# 82.12% CSS 11.00% JavaScript 6.88%
extension glyphicons glyphs icons input rewired ui unity unity3d-package unitypackage

rewired-glyphs's Issues

[BUG] -

Bug Description
A clear and concise description of what the bug is.

Reproduction Steps
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected Behavior
A clear and concise description of what you expected to happen.

Example
If possible, add screenshots or a video to help explain your problem.

Technical Information(please complete the following information):

  • Operating System and Version: [e.g. Windows 11 22H2, macOS 13.3.1]
  • Unity Version: [e.g 2020.3.42f1]

Additional Information
Add any other context about the problem here.

[BUG] Many errors in project after importing package

Bug Description
After importing the Rewired Glyphs package, I get 26 errors in the console. Unity will not enter play mode, prompting me to fix all compiler errors first. But the errors do not show up in Visual Studio, only in the Unity Console. This first happened in a project I was working on. Tested it in empty project and it happened there as well.

Reproduction Steps
Steps to reproduce the behavior:

  1. Create new project in Unity 2020.3.25f1
  2. Import Rewired (1.1.55.0)
  3. Import TMP Essentials
  4. Import Rewired Glyphs using Package manager -> Add Package from Git URL -> https://github.com/Orange-Panda/Rewired-Glyphs.git

Expected Behavior
Successful import. No errors in console.

Example
Screenshot of errors:
Screenshot 2024-06-24 225531

Text examples of errors:

Library\PackageCache\com.lmirman.rewiredglyphs@8507d6c\Runtime\Components\GlyphRichTextFormatter.cs(200,65): error CS1026: ) expected
Library\PackageCache\com.lmirman.rewiredglyphs@8507d6c\Runtime\Components\GlyphDisplay.cs(170,58): error CS1026: ) expected
Library\PackageCache\com.lmirman.rewiredglyphs@8507d6c\Runtime\API\RewiredGlyphManager.cs(93,57): error CS1003: Syntax error, ',' expected
Library\PackageCache\com.lmirman.rewiredglyphs@8507d6c\Runtime\Components\GlyphRichTextFormatter.cs(203,6): error CS8641: 'else' cannot start a statement.

Technical Information:

  • Operating System and Version: Windows 11
  • Unity Version: 2020.3.25f1

Additional Information
I think these errors are so strange. They don't seem like "real" errors. so I suspect it can have something to do with the dev environment, some hidden settings in unity about namespaces or some other oddball technicality, but right now I am at a loss.

[BUG] - Crashes completely when adding Image Output with Rewired Input Manager in Prefab Mode

Rewired: You are attemping to access an object that was created by a previous session or different instance of Rewired and is no longer valid. When Rewired is reset or the Rewired Input Manager is disabled or destroyed, all old object references become invalid and can no longer be used. If you deinitialize Rewired, you cannot use locally stored Rewired objects obtained prior to deinitialization and you must get new objects from the Rewired API.
------- Rewired System Info -------
Unity version: 2022.3.5f1
Rewired version: 1.1.45.0.U2022
Platform: Windows
Editor Platform: Windows
Using Unity input: False
Primary input source: RawInput
Use XInput: True
Native mouse handling: True
Enhanced device support: True

UnityEngine.Logger:LogError (string,object)
Rewired.Logger:LogErrorNow (object,bool)
Rewired.Logger:LogError (object,bool)
Rewired.Logger:LogError (object)
Rewired.ReInput:CheckInitialized (int)
Rewired.Player/ControllerHelper:GetLastActiveController ()
LMirman.RewiredGlyphs.InputGlyphs:GetCurrentGlyph (Rewired.Player,int,Rewired.Pole,Rewired.AxisRange&) (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/API/InputGlyphs.cs:128)
LMirman.RewiredGlyphs.InputGlyphs:GetCurrentGlyph (int,Rewired.Pole,Rewired.AxisRange&,int) (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/API/InputGlyphs.cs:120)
LMirman.RewiredGlyphs.Components.GlyphDisplay:UpdateGlyph () (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/Components/GlyphDisplay.cs:60)
LMirman.RewiredGlyphs.Components.GlyphDisplay:InputGlyphsOnRebuildGlyphs () (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/Components/GlyphDisplay.cs:54)
LMirman.RewiredGlyphs.InputGlyphs:InvokeRebuild (bool) (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/API/InputGlyphs.cs:329)
LMirman.RewiredGlyphs.RewiredGlyphManager:Update () (at ./Library/PackageCache/com.lmirman.rewiredglyphs@2676334172/Runtime/API/RewiredGlyphManager.cs:58)

[REQUEST] - Add possiblity to separate between mouse glyphs and keyboard glyphs

Is your feature request related to a problem? Please describe.
I want to use glyphs in the context of keybindings remapping and the lack of distinction between mouse and keyboard glyphs is a problem.

Describe the solution you'd like
I think adding methods GetMouseGlyph and GetKeyboardGlyph in addition to the existing options would make InputGlyphs API much more flexible in terms of further extension.

Edit:
I think this could be also solved by exposing InputGlyphs.GetGlyphFromHardwareMap to the public API.

[BUG] - GlyphRichTextFormatter not updating glyphs when inactive

Bug Description
GlyphRichTextFormatter is not updated if set to inactive in the same frame the input type changes

Reproduction Steps

  1. Have a Rewired action (e.g. Cancel) mapping to "B" for xbox controller or "ESC" for keyboard
  2. Have a window with a button with a GlyphRichTextFormatter label for that action (<glyph "Cancel">Cancel)
  3. Use the gamepad input so the button updates the glyph accordingly.
  4. Press ESC to close the window and then open again via keyboard input.
  5. The GlyphRichTextFormatter will show the glyph for gamepad input.

Expected Behavior
At step 5, the text should show the glyph for keyboard.

Technical Information(please complete the following information):

  • Unity Version: 2022.3.12f1

Possible Solution
Update the glyphs on the GlyphRichTextFormatter 's OnEnable method.
This bug may also happen in the other glyph displaying components.

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.