I’m trying to work on this animation engine, but I’m getting pretty burnt out, between competitions, school, and other creative projects of mine. If anyone has the knowhow or knowledge of how to do this, please help. I can technically do it all on my own, but I would like help. To explain what each button, at the end, should do: On the right-hand side of the stage is a menu for assets. The top-left button is the “props”, or visual assets button, and the top-right button is the sound effects/background music button, or the auditorial assets. The button on the bottom of the menu is for sections, a means of which to organize assets for easy use. You click it to toggle between ‘sets’ (depending on whether props or sfx is selected) which will show different assets in the middle of the menu, or the asset bank. The asset bank will, for props, show the costumes visually, and for the sound effects, use an audio placeholder with a preview option. The props in the asset bank will be the costumes of a new sprite, the props sprite, which will have its costumes be props, named such that a system in place in the code will split them up into different sections. To use a prop, the user will drag it from the asset bank onto the viewport directly, and to use a sfx, the user will drag it onto the timeline. The timeline is at the bottom of the stage. Above it, centered, is the play button, which will begin a preview of the animation, frame-by-frame, showing how the props move over time. However, the viewport will not move along with the camera unless the user toggles camera view with the 0 key (like in blender), which will automatically center the viewport and zoom/rotate it to match that of the camera. Directly beside the play button on either side are the forward and backwards buttons, which will scroll the timeline accordingly, allowing users to place keyframes potentially infinitely onward. The buttons on either side of those buttons jump ahead between keyframes, which can be useful for longer animations. The buttons above the timeline on the left-hand side of the screen, from left to right, are as follows: add keyframe, add in-between frame, add scene change. When a keyframe is added, that is, when the user clicks the green diamond or presses the k key on their keyboard, the scene as it is, along with all the assets in the scene, their positions, rotations, scales, and costumes, will be saved and, when the animation is previewed or played, when the timeline reaches that keyframe, each asset will return to the saved state. The button after that one, the yellow in-between button, does the same thing. The only differences are that it shows up differently on the timeline and gets skipped past when the next/previous keyframe buttons are used. The final button on the left-hand side of the screen for the timeline, the orange flag, is a change-scene button. It’s placed on the timeline, over wherever the playhead is at currently, like the keyframes, but when the playhead passes over it in preview/play mode, it changes the scene to whatever scene was active when the user added the mark in. More on scenes later. The menu on the left-hand side of the stage is a menu for scenes and layers. You can toggle between which to view and edit via the buttons on the top, the one on the left being for layers and the one on the right being for scenes. On the lower/main portion of the menu, depending on what tab the user is on (layers or scenes), it will show layers or scenes. Layers are simple groupings for assets on the viewport, to make it easier to edit things. When a layer is selected, only props on that layer can be manipulated in the viewport. Layers can be hidden from viewport and/or render (like in blender), to allow for ease of editing. Layers can be re-organized, added, and deleted, adapting to different user’s workflows. The other tab, scenes, is for scenes. Scenes are a means of further organization. Imagine different settings in a 2d movie or show– they’re entirely different locations, with different backgrounds. When the camera angle changes, some users might just want to change the background prop, but for more complex manipulation, scenes can come in handy. It can be hard on scratch to render two separate areas at once (ie, a subway and a forest), and it can be time consuming for users to manually swap out assets or move between backgrounds, so that’s where scenes come in handy. All you do is select a different scene, and it loads in that scene. The scenes can be added, removed, or re-arranged, and whatever scene is at the top of the list is the one that shows up at the beginning of the timeline. The bars by the menus on the sides of the stage are for scrolling through icons on each individual menu. Depending on the number of icons (props, sfx, layers, scenes), and the amount of run-off, different icons are hidden and scrolled through using the scrollbars. Imagine, for the scrollbars, scrollbars like in older versions of
…Minecraft. Notice how the scroll-bars there automatically snap at intervals such that the top of the list is shown at the top of the screen when the scrollbar’s at the top, whereas the bottom of the list is at the bottom of the screen when the scroll-bars are at the bottom? Something similar will apply in this engine, adaptive, so that users who want further customization (custom assets (It’ll come up later)) can easily achieve it with minimum coding necessary. At the top of the stage are three buttons: settings, import, and export. The settings button opens a settings menu (will come up later), the import button allows users to paste save codes to load previously made projects, and the export button allows users to copy save codes for projects. The settings menu has two tabs, one for project settings and one for animation settings. The animation settings apply to both the workflow and the end result, whereas the project settings only apply to the workflow. Look at the costumes provided to know the settings available. In the middle of the screen is the viewport. This is where users can edit their animations. They can drag props and sound effects from the asset bank onto the viewport directly (into whatever layer is active). Users can click to select different props and move them, scale them uniformly (to avoid complexity), rotate them, and switch out their costumes (to a prop in the same section). Users can use wasd to move around the screen and qe to zoom in/out. H key temporarily hides the GUI, showing users only the viewport, until the H key is pressed again. When a user clicks a prop on the screen (in the active layer, of course), a movement gizmo, a rotation gizmo, and a scaling gizmo will show up, as well as a gizmo for “go forward 1 layer” and “go backward 1 layer” and “front layer” and “back layer”. Layers, in this sense, only apply within the boundaries of the layers from the menu. The right-hand menu will automatically open up to props category, in the section for the prop selected, so that when players click an icon there, the prop they’ve selected switches to that costume. This is for easy animation (picture lip sync). When the flag is clicked it opens up a brief screen showing the following options: Demo, Create, Load. Demo loads a demo scene. Create makes a brand-new project. Load allows users to paste save codes. When users remix the project, they can add in whatever assets they want to the asset sprite, but they have to name it properly for categorization. After that, there should be a simple piece of code in a sprite that enables auto-play of user’s pasted save codes for their films when attached to when-green-flag-clicked, so users, after finishing their animations, can paste their save codes in their, attach the script, and delete the editor/GUI sprite, so that the animation plays whenever they click the green flag and they can share it that way, without the confusion of an editor. This engine will be a lot more efficient, creation-wise as well as memory-wise, for longer animations than the method of copy-paste frames. If anyone could help me finish this in any way, that would be a lot of help. Thank you!