RosettaUI
Code-based UI library for development menus for Unity
Unity Project
Built with Unity 6000.0.60f1 ยท download the source from GitHub
Dependencies (38)
README
RosettaUI
Code-based UI library for development menu for Unity
|
|
โจ Features
- Undo/Redo surpport (runtime only)
- Inspector-like visual editor for Gradient and AnimationCurve at runtime
|
|
|
Inspector-compatible Copy and Paste
๐ Ver1 โ Ver2 Migration
Please remove the RosettaUI.UIToolkit package from the Package Manager.
In Ver2, the RosettaUI.UIToolkit package is now included in the RosettaUI package.
Keyboard.current.onTextInput
If you are using Keyboard.current.onTextInput, be aware that it now also fires during UI operations..
Consider using KeyControl (e.g., Keyboard.current[Key.A].wasPressedThisFrame) as an alternative.
โฌ๏ธ Installation
This package uses the scoped registry feature to resolve package dependencies.
Edit > ProjectSettings... > Package Manager > Scoped Registries
Enter the following and click the Save button.
"name": "fuqunaga",
"url": "https://registry.npmjs.com",
"scopes": [ "ga.fuquna" ]
Window > Package Manager
Select MyRegistries> fuqunaga > RosettaUI and click the Install button
Input System (optional)
RosettaUI recommends using Input System.
See Tips.
Install according to the official documentation.
https://docs.unity3d.com/Packages/com.unity.inputsystem@1.5/manual/Installation.html
๐How to use
- Add
Packages/RosettaUI/UIToolkit/Runtime/RosettaUIRootUIToolkit.prefabto the Hierarchy. - Write code to generate an
Elementinstance. - Call
RosettaUIRoot.Build(Element)to generate the actual UI (see ExampleSimple).
๐ Examples are available in this repository.
We recommend downloading and checking it out.
๐ป Environment
| Platform | Support |
|---|---|
| Windows | โ |
| Mac | Maybe (not tested) |
| Linux | Maybe (not tested) |
| IL2CPP | Not supported |
๐ก๏ธ Tips
Disable input when UI focused
During UI operations, input to the application is suppressed by replacing the keyboard, pointer, and mouse devices with dummies.
// false while RosettaUI focused
if ( Keyboard.current[Key.A].wasPressedThisFrame )
{
// do something
}
[!WARNING] the
Keyboard.current.onTextInputevent will still be called.
For LegacyInputSystem, refer to RosettaUIRoot.IsFocused().
if ( !RosettaUIRoot.IsFocused() && Input.GetKeyDown(KeyCode.A) )
{
// do something
}
Custom Undo/Redo
Users can register custom Undo/Redo actions.
For details, try running ExampleUndo.
๐ Related Libraries
PrefsGUI - Accessors and GUIs for persistent preference values using a JSON file
Comments
No comments yet. Be the first!
Sign in to join the conversation
Sign In