Giter VIP home page Giter VIP logo

rapidgui's Introduction

RapidGUI

openupm

Unity IMGUI extensions for Rapid prototyping/development.

rapidgui

Installation

Install via OpenUPM

The package is available on the openupm registry. It's recommended to install it via openupm-cli.

openupm add ga.fuquna.rapidgui

Install via git URL

Add following lines to the dependencies section of the Packages/manifest.json.

"ga.fuquna.rapidgui": "https://github.com/fuqunaga/RapidGUI.git"

Install via traditional .unitypackage

Download a .unitypackage file from the Release page.

Getting Started

  • Open and checkout the RapidGUI/Example/RapidGUIExample.unity
  • see also the usage from the script below RapidGUI/Example/Scripts/

Functions

RGUI.Field()

field

value = RGUI.Field(value, label);
  • Display standard GUI according to type of value
  • Right-drag label to edit numbers
  • Color picker
  • Array/List has a right-click menu like inspector
  • Supports custom class

CustomClass

fieldCustomClass

public class CustomClass
{
    public int publicField;

    [SerializeField]
    protected int serializeField;

    [NonSerialized]
    public int nonSerializedField;

    [Range(0f, 10f)]
    public float rangeVal;

    public string longNameFieldWillBeMultiLine;
}
customClass = RGUI.Field(customClass, nameof(customClass));

RGUI.Slider()

Slider

value = RGUI.Slider(value, min, max, label);
  • Display slider GUI according to type of numbers

RGUI.MinMaxSlider()

MinMaxSlider

RGUI.MinMaxSlider(minMaxVal, minMaxRange, label);
RGUI.MinMaxSlider(ref floatMin, ref floatMax, rangeMin, rangeMax, label);
  • Display min max slider GUI according to type of numbers
  • RapidGUI defines some basic MinMax type(MinMaxInt,MinMaxFloat,MinMaxVector2...)
  • You can also create your own MinMax type by inheriting MinMax<T>

RGUI.SelectionPopup()

fold

selectionPopupIdx = RGUI.SelectionPopup(selectionPopupIdx, new[] { "One", "Two", "Three" });
selectionPopupStr = RGUI.SelectionPopup(selectionPopupStr, new[] { "One", "Two", "Three" });

RapidGUI.Fold / Folds

fold

// Initialize
fold = new Fold("Fold");
fold.Add(() => GUILayout.Label("Added function"));
fold.DoGUI();

RapidGUI.WindowLauncher / WindowLaunchers

windowLauncher

// Initialize
launcher = new WindowLauncher("WindowLauncher");
launcher.Add(() => GUILayout.Label("Added function"));
launcher.DoGUI();
  • Toggle open/close window
  • Resizable
  • Has a close button

windowLaunchers

  • WindowLaunchers automatically adjusts the layout when opening a window

And more!!!

Please check the usage from the script below RapidGUI/Example/Scripts/

Tips

A "RapidGUI" object appears in the hierarchy

RapidGUIBehaviour the object is a RapidGUI settings and update hooks. If not in the scene, it will be generated automatically.

Save/Load parameters

See PrefsGUI

Reference

rapidgui's People

Contributors

favoyang avatar fuqunaga avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rapidgui's Issues

Update docs for OpenUPM

Hi @fuqunaga,

Thanks for contributing for the OpenUPM platform. I prepared a doc update in #11, adding installation options and a badge. Please consider to merge.

IMColorPicker

The example toggle btn cannot be close it. How to use it like a pop-up window?

Window?

Hi, I went through all examples but I am still not sure how to just create a window with a Fields in it. I want the window to be just visible immediately and not launcher through WindowLauncher

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.