GithubHelp home page GithubHelp logo

jbrettob / lucy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from helical-games/lucy

0.0 0.0 0.0 85.38 MB

Get informed about updates:

Home Page: https://twitter.com/kjustynski

License: Creative Commons Attribution Share Alike 4.0 International

C# 11.53% C++ 88.03% C 0.44%

lucy's Introduction

Lucy is lightweight UI & Input framework for projects created in Unreal Engine 4.

  • Based on UMG, written mostly in blueprints. It's free to use, even commercially.
  • It allows for compositing UI from fully reusable widgets (I call it composites). Define widget style and logic once, use it hundred times! Or define logic once and set different appearance for every widget instance.
  • In clean UMG (without any own scripts) you have to script every element (like button, text or slider) individually. It means lots of copy-pasting scripts responsible for input, localization, styling, setting and restoring state. Everything. Of course many developers close part of those scripts in reusable functions and apply them at every element. My approach is to close entire functionality of element or element group in separate widget file, then simply put this widget in UI panel and fill up parameters. Element added in UMG's Designer tab works out of the box. There's no need to script anything except your custom game logic.
  • Appearances of widgets placed in panels refresh automatically after change - which isn't possible in pure UMG.
  • And I'm adding a lot of common functions for managing UI panels and input (not only UI related).

Take a look!

This is entire script for Pause Menu, as simple as it always should be.

Alt

You don't need to produce spaghetti blueprint for every UI element. Prepare it quickly by setting params.

ALT

What's inside?

  • Typical UI composites like Text Button, Interaction Hint, Labeled Slider, etc. Every composite automatically updates its default state based on instance values.
  • Scripts called UI Manager and Panel take care of creating and switching panels, opening panels in hierarchy, handling input, basic navigation, activating chosen widget in panel, receiving input from active widget. So you don't have to script basic widget actions in your panels. Focus on designing it and scripting custom and advanced functions.
  • Samples of Main/Options menus simplifies creating your own menus, i.e. Video Menu allows you to set common graphics options. Just customize it to your needs. Or just download it, don't change a thing and enjoy basic menus working in your cooked build.
  • Input Manager provides basic functionalities: setting various inputs for single action, activating interactions, detecting input device and automatically updating displayed icon and key of interaction.
  • You don't have to reinvent the wheel when you're starting work on UI. I already did it. Partially ;)

All the links

Donate if you like it :)

Donate

Third-party

lucy's People

Contributors

mothdoctor avatar

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.