Giter VIP home page Giter VIP logo

unitygui's Introduction

Gameframe.GUI ๐Ÿ‘‹

Version Twitter: coryleach

This is a library of GUI helpers for UGUI
Includes a panel system that implements a navigation stack.
Includes a scene transition system.
Includes a SRP shader for blurring the background of UI panels.

Quick Package Install

Using UnityPackageManager (for Unity 2019.3 or later)

Open the package manager window (menu: Window > Package Manager)
Select "Add package from git URL...", fill in the pop-up with the following link:
https://github.com/coryleach/UnityGUI.git#3.0.12

Using UnityPackageManager (for Unity 2019.1 or later)

Find the manifest.json file in the Packages folder of your project and edit it to look like this:

{
  "dependencies": {
    "com.gameframe.gui": "https://github.com/coryleach/UnityGUI.git#3.0.12",
    ...
  },
}

Usage

After importing this package via the PackageManager import the Demo/Demo.unitypackage file from the Assets->Import Package option in the menu.

PanelView

PanelView which provides Show & Hide behavior which can be instant or async and awaitable.

AnimatedPanelView

References one or more IPanelAnimator components to control animate the Show & Hide of a panel. If you await the Show & Hide async methods

PanelViewController

Controller for the display of a PanelView.

PanelViewControllerBehaviour

A version of PanelViewController that is also a MonoBehaviour component that can be added to a game object. Often you may want to set up & configure PanelViewControllers with data other than the panel type and using this class will allow you to do that in editor.

PanelStackSystem

A scriptable object representation of a panel stack. Main purpose is in maintaining the navigation history of a menu. Push and Pop panel controllers onto this stack. If any PanelViewStackController component that subscribes to the PanelStackSystem will respond to the push and show/hide the corresponding panels. Generally the top PanelViewController on the stack is always visible.

PanelViewStackController

A MonoBehaviour that references a PanelStackSystem. It responds to changes in the panel stack by getting the current showing and hiding controllers. It will then perform the necessary transitions.

PanelViewControllerProvider

A scriptable object which services is a collection of PanelViewControllers. Generally you register PanelViewControllerBehaviour with a provider so that you can push them using the PanelPusher component. It also controls the location that views are parented to in the hierarchy.

PanelViewControllerRegisterer

Add this component to a PanelViewControllerBehaviour to register the controller with a PanelViewControllerProvider instance.

PanelType

Contains information about a panel and is used by the PanelViewController to locate the prefab and instantiate the PanelView.

Author

๐Ÿ‘ค Cory Leach

Show your support

Give a โญ๏ธ if this project helped you!


This README was generated with โค๏ธ by Gameframe.Packages

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.