Visulie - Dynamic, Data-Driven Animations

Hey! I understand your concern. I am planning to make a tutorial as well as the documentation. However, I want to refine the plugin and examine the current workflow further before doing so.

3 Likes

The price is fair, nice work. I’ll give it a try.

2 Likes

Visulie Version 1.1

  • Improvements

    • Removed “Edit Defaults” option (value of the first keyframe extends to the beginning frame). The button’s functionality will be superseded by a new behavior where the first keyframe for each property determines what the value will be upon initialization
    • Changed the data format of the exported animation. Please update your Visulie player so the new format can be read correctly (future data format changes will include a converter to convert old versions to the new version)
    • Minor playback optimizations
    • Made button tooltips clearer
  • Bug fixes

    • Fixed a bug where changing the instance name would cause properties to be recorded unintentionally
    • Fixed a bug where creating animation events would not work
1 Like

This is the first time I have seen a plugin worth so much and a petty cheap guy like me saying it’s worth it. I can totally understand the efforts you put on it, great job!

4 Likes

Could you add MeshParts support?

1 Like

I’ve actually contemplated how MeshParts could be supported within this plugin. To briefly describe the issue with implementing this feature, mesh parts are very difficult to create on the fly. There is no native API that allows the configuration of MeshId’s during runtime. However, there are workarounds to create mesh parts during runtime (although slightly hacky) but, it takes a while to plan and implement it practically and efficiently.

I’ve made a topic a while back trying to address this problem:

Mesh parts are still planned. It may just take a while before a satisfactory solution is released.

3 Likes

Visulie Version 1.2

  • Bug fixes

    • Inserting initiation properties no longer causes errors
    • Fixed an error where properties with the UDim datatype errored upon playback
  • NEW supported classes

    • Seat
    • VehicleSeat

2D animation editing is now supported!

Create 2D animations by dragging the editor folder to a location where guis can be rendered:

2023-11-23 22-21-30

Thank you @Crafterr33 for bringing this up.

7 Likes

This is what I’ve always thought moon animator should be. Imagine scripting out normal rig animations the way people script vfx, what a chore. Great work.

1 Like

That looks amazing!

I can see making loading screens with this!

2 Likes

Visulie Version 1.3

  • Bug fixes

    • Renaming objects no longer stops listening to property changes to that object until it’s selected again
  • Improvements

    • Numbers and number containing datatypes datatypes (e.g., Vector3, NumberSequence) with the exception of CFrame rotation values are now clamped to three decimal places. This is done to preserve readability when making adjustments within the serialized animation
4 Likes

Visulie Version 1.4a

  • Bug fixes

    • Animations with multiple descendants now load without an error
  • Improvements

    • Time values clamped to four decimal places to increase readability
    • Internal approximation epsilon reduced from 1e-7 to 1e-4 to support the new time accuracy value and reduce the frequency of accidental keyframe inserts from inaccurate approximation
    • Color3 now serializes to Color3.fromRGB instead of Color3.new to prevent long strings of numbers

Anyway, here are some examples of this plugin being used in-game:


Most of the 3D animations seen are done using this plugin.

5 Likes

This is amazing! Question if I purchase this plugin am I allowed to make my own fork of it as long as I don’t redistribute? Thanks!

2 Likes

Yes, you can! As long as it’s not redistributed, it is okay.

3 Likes

What are all the instances that this is compatible with? This is really really cool…

Here is the current list of instances:

Highlight, SpecialMesh, CylinderHandleAdornment, Attachment, Seat, PitchShiftSoundEffect, ImageButton, Beam, Handles, Decal, WireframeHandleAdornment, ImageHandleAdornment, ParticleEmitter, Smoke, SurfaceGui, SphereHandleAdornment, UIScale, ImageLabel, UIListLayout, Trail, EqualizerSoundEffect, Model, UISizeConstraint, SurfaceSelection, CanvasGroup, VehicleSeat, SpotLight, VideoFrame, ChorusSoundEffect, SelectionSphere, ArcHandles, Texture, CompressorSoundEffect, CornerWedgePart, ReverbSoundEffect, LineHandleAdornment, UIGridLayout, Fire, DistortionSoundEffect, UIPadding, UITextSizeConstraint, UITableLayout, ConeHandleAdornment, TremoloSoundEffect, UICorner, UIPageLayout, UIGradient, TextButton, UIStroke, Sound, UIAspectRatioConstraint, FlangeSoundEffect, PointLight, EchoSoundEffect, Explosion, ViewportFrame, Sparkles, WedgePart, Part, SurfaceLight, Frame, ScreenGui, BillboardGui, TextLabel, BoxHandleAdornment, ScrollingFrame, SelectionBox

Each instance also has supported properties that can be animated. For example, you can animate the CFrame property of a part, but not the Name or Parent property.

You can find the supported instances in the dump file in the plugin:

--[[
	[className]: {supported properties}
]]

return table.freeze({

	BoxHandleAdornment = {
		"Size",
		"AdornCullingMode",
		"AlwaysOnTop",
		"CFrame",
		"SizeRelativeOffset",
		"ZIndex",
		"Adornee",
		"Color3",
		"Transparency",
		"Visible"
	},
	CanvasGroup = {
		"GroupColor3",
		"GroupTransparency",
		"Active",
		"AnchorPoint",
		"AutomaticSize",
		"BackgroundColor3",
		"BackgroundTransparency",
		"BorderColor3",
		"BorderMode",
		"BorderSizePixel",
		"ClipsDescendants",
		"LayoutOrder",
		"Position",
		"Rotation",
		"Size",
		"SizeConstraint",
		"Visible",
		"ZIndex",
	},

	--> etc.

}:: {[string]: {string}})
1 Like

Wow! This plugin is really cool. Does it work well with animating entire models? For example, a door? Some of my doors have a lot of parts, and physically rotating the model is easy using pivots, but I wonder if this plugin supports that? It would definitely allow for the easy creation of some really cool things!

1 Like

As of now, it would be better to script the model door instead of using this plugin as Visulie is better used to instantiate animations on the fly rather than animate existing models (animating existing models is a planned feature). Though the Model class is supported with the plugin, models are a little quirky when it comes to how they’re transformed in the world. There isn’t a scriptable property to determine their physical location in the world, thus, it’s difficult to have it do anything during runtime (I’m currently figuring this one out).

1 Like

Visulie Version 1.4b

  • Bug fixes
    • Different types of instance values that previously errored (such as Part1 and Part0) no longer errors
1 Like

Does this means with this plugin we can make in game fully animated cutscenes, I want to add cutscenes to my game but there are no good ways of doing it on roblox, most of the ways involve manually scripting loads of things, or just these basic ugly camera angle “cutscenes”

But if I am not incorrect with this plugin we can fully animate cutscenes and actually play them in game.

Positive Comment & Thank You!

I hope this comment isn’t too long, and it isn’t spam or anything like that. I apologize if it’s too lengthy for everyone’s comfort, but I wanted to be as descriptive as possible and share my appreciation of this plugin, resource, and the creator.

This plugin is exceptional. As I’ve constantly checked the dev forum daily for useful resources, amongst all of the many helpful ones, this one is definitely the favorite of mine; well worth the price too. It’s absolutely amazing! Thank you for your hard work and constantly updating it!

For anyone else wondering if they should buy the plugin:

  • It is absolutely worth the price, it’s very resourceful and makes visual effects and animations turn out precisely the way you want it, frame by frame.
  • It’s still getting updates such as bug fixes, the developer is very helpful, descriptive and hard-working.
  • It solves every problem with making effects the old fashioned way through only scripts.
  • You can specifically convert your animations directly into your programming and scripts to be displayed in-game or during run-time.
  • It even animates UI, Particle Emitters, Sounds & Sound Effects, Highlights, Beams, Textures, Trails, ArcHandles, Point Light Entities, Selections, HandleAdornments, Fire, Explosions, Smoke, and even Decals!! (There’s a lot more that it animates too such as parts and meshes obviously, but these particular instances stand out significantly; due to how they’re mostly not prevalent in other animation plugins or resources)

This is by far the best and most dynamic animator I’ve ever seen. Again, thank you very much!

Whenever I make animations and effects using it (or an experience displaying them), I’m definitely going to credit you and your plugin so other Developers can purchase it, support you, and improve visual effect design as a whole on Roblox!

The use cases are nearly infinite. It’s insane.

I adore this community and all of you amazing developers, and VegetationBush (Plugin Creator of Visulie), I wish you luck with your future projects, including any experience you decide to make using your amazing plugin. I’m totally going to play it to support you, especially if you made a plugin this good.

(I bolded your username instead of mentioning you, because I didn’t want to disturb or notify you; but I’m referring to the plugin creator! ^_^)

(Again, sorry for the lengthy comment everyone, I am very descriptive, and I usually don’t comment on the forums since I’m shy, but this plugin has helped me extraordinarily so I wanted to give the plugin creator extremely positive feedback and to be friendly! :pray:)

4 Likes