Giter VIP home page Giter VIP logo

gdvecrig's Introduction

GDVecRig

GDVecRig is a Godot 4 plugin that provides vector graphics with one specific goal: ability to perform skeletal animation with Bezier control points rather than with rasterized vector graphics.

To accomplish this goal, GDVecRig consists of a vector graphics editing tool built-in to Godot, along with the required architecture to enable rigging vector graphics to skeletons.

Unfortunately, existing vector formats are generally unsuited to game vector graphics. In particular, vector graphics editors generally do not support very nice masking operations or useful models for strokes / lines in drawings.

However, Godot already has a lot of useful operations built in for compositing graphics, including a hierarchical scene tree, and, in Godot 4, masking operations!

This means that the only thing really missing from Godot is a way to represent individual vector graphics objects in a way that can be easily rigged to 2D skeletons. That is what this plugin intends to provide.

Currently, the plugin is in a work-in-progress state; vector editing works to some degree, as well as rigging, but it needs more work to be fully usable.

gdvecrig's People

Contributors

honeypony avatar

Watchers

 avatar

gdvecrig's Issues

Fix Skeleton pose computation.

Right now, in Test.tscn, the way that the "Nose" bone affects the waypoints is clearly not working the same way as how the "Face" bone affects its associated waypoints. There is still something wrong with the pose computation, either causing the waypoints to not rotate around the correct pivot point (which is what the rest of the problems so far have been), or perhaps something else.

Weight painting should optionally let you select bones in the Scene panel rather than the Vector Editing panel.

While weight painting, especially with the buggy transform implementation, it is very natural to try to click on bones in the Scene tree to rotate them, and then to go right back and try to paint on some waypoints (especially with the "Always Show Points" option selected).

As such, this should simply be an option. Basically, the vector editing panel should just keep track of the last selected VecDrawing object, and whenever a bone is selected in the Scene panel, it should try to switch to that bone.

Moreover, whenever the Vector Editing panel is open, the editing mode for the vector object should simply be enabled. I don't think there's much reason to have the Vector Editing panel open when not editing an object, and if there eventually is a reason, it could be disabled with a flag.

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.