CrushedPixel
d057553223
Added "inclusive" parameter to getPreviousKeyframe() and getNextKeyframe() in KeyframeList to define whether the next/previous keyframe may have the same timestamp as the realTime parameter
...
Fixed a bug in KeyframeList#getPositionOnPath where a non-inclusive getPreviousKeyframe call resulted in an incorrect position value
2015-07-14 13:48:48 +02:00
CrushedPixel
3e77e72f5a
Sleepy me forgot to disable Path Previews while in Path
2015-07-14 12:08:23 +02:00
CrushedPixel
af305b4063
Play Camera Path button graphically didn't turn into pause button while playing
2015-07-14 12:08:07 +02:00
CrushedPixel
9953bdf357
Added support for legacy Spectator Keyframes in LegacyKeyframeSetAdapter
2015-07-14 12:07:35 +02:00
CrushedPixel
25f7b8dd0c
Access Vector3d's fields directly instead of using getter which for some reason fails the gradle build task
2015-07-14 04:31:32 +02:00
CrushedPixel
eb4f0fcc20
Added Preview for Camera's Position and look direction in Path Previews
...
Added getDestination() method to AdvancedPosition to calculate the destination based on a step size and the position's pitch/yaw
2015-07-14 04:25:19 +02:00
CrushedPixel
0ff40cc0f5
Fixed Custom Image Objects being rendered through blocks
2015-07-14 02:21:51 +02:00
CrushedPixel
534007b9c8
Executes JFileChooser activities in Swing Thread
...
If Minecraft is fullscreen, exit fullscreen when using GuiFileChooser
2015-07-14 02:07:24 +02:00
CrushedPixel
654c2200d5
Replaced AWT FileDialog with Swing JFileChooser in GuiFileChooser
2015-07-14 01:36:00 +02:00
CrushedPixel
0d7065d45d
Disabled remove button in GuiAssetManager if no element is selected in List
2015-07-14 01:01:35 +02:00
CrushedPixel
9cf3f426aa
Renamed setEnabled() method in GuiElementInterface to setElementEnabled() to workaround this Forge Bug: http://www.minecraftforge.net/forum/index.php/topic,32063
2015-07-14 00:25:17 +02:00
CrushedPixel
a58e06703c
Using the DELETE Key, selected Keyframes can now be removed
...
Added StaticKeybindings to provide non-changeable KeyBindings
2015-07-13 22:27:14 +02:00
CrushedPixel
0f024a9de9
Cleaned up ReplayHandler by unifying selectedKeyframe and selectedMarkerKeyframe into selectedKeyframe, thus only being able to select one Keyframe at once
2015-07-13 22:08:41 +02:00
CrushedPixel
a7590ce384
Rendering: Deletes destination File if it already exists to prevent ffmpeg from crashing | https://trello.com/c/Ozlp5Sts/
2015-07-13 21:07:29 +02:00
CrushedPixel
2297808e9d
In MinecraftTicker, only handle Key Input if no GUI is open as the GUI will invoke the same dispatchKeypresses() method itself
2015-07-13 16:08:21 +02:00
CrushedPixel
3f12019288
Created CameraPathValidator to validate Camera Paths before playing them and uses its static validateCameraPath() method whenever a Camera Path is to be started
...
Camera Paths can't start if negative movement through time would be required
2015-07-13 15:47:57 +02:00
CrushedPixel
9d2c371398
GuiKeyframeTimeline now draws a red stroke between two time Keyframes if the second has a smaller timestamp value than the first | https://trello.com/c/a4xZs085/
2015-07-13 15:26:20 +02:00
CrushedPixel
3eca70fea4
Fixed blue stroke on GuiKeyframeTimeline possibly exceeding the Timeline's bounds | https://trello.com/c/IfTtmwso/
2015-07-13 15:18:32 +02:00
CrushedPixel
ff5481822a
Added support for Time Keyframes in GuiEditKeyframe | https://trello.com/c/h33v5cSQ/
2015-07-13 15:11:13 +02:00
johni0702
dccbc99d86
Add option for whether to draw a shadow of string to GuiRenderer
2015-07-13 14:09:35 +02:00
CrushedPixel
be3afc9e0e
Created LegacyKeyframeSetAdapter to properly deserialize old, non-generic PositionKeyframes and TimeKeyframes for Path Presets
2015-07-13 13:34:50 +02:00
johni0702
81c4659b93
Fix time freezes during rendering not working
2015-07-13 12:49:25 +02:00
johni0702
d29cc85dc8
Fix NPE when loading a replay without marker keyframes
2015-07-13 12:21:18 +02:00
johni0702
a9ded2bc1d
Clickable and Draggable now also return booleans for whether they handled the event
2015-07-13 09:42:06 +02:00
johni0702
bd21ed16ae
Fix generics in most of the Gui interfaces
2015-07-13 09:42:06 +02:00
johni0702
4476993ca6
Add GridLayout which orders elements in a grid with cells of equal size
2015-07-13 09:35:40 +02:00
johni0702
5c05cd62ce
Add GuiTextArea
2015-07-13 09:35:32 +02:00
johni0702
35bc9f7fae
Remove preferred size and default button size
...
Replace alignment data in horizontal and vertical layout with double value
Add convenient size(GuiElement, ReadableDimension) method to custom layout
2015-07-13 08:11:15 +02:00
johni0702
219277f623
Add layers to Gui API so specific elements can be drawn on top of others and react to mouse clicks first
2015-07-13 08:11:15 +02:00
CrushedPixel
39558701bf
Reworked GuiEditKeyframe to use ComposedElements
...
Made GuiArrowButton a subclass of GuiAdvancedButton
Added consistency to ReplayHandler by renaming getMarkers() to getMarkerKeyframes() and removing redundant methods which can be accessed via KeyframeList class
2015-07-13 02:03:19 +02:00
CrushedPixel
66c595eb04
Marker Keyframes are now being saved in a KeyframeList in the ReplayHandler
...
Made MarkerKeyframes names editable in GuiEditKeyframe
Shows "Unnamed Marker" if Marker name is empty
2015-07-13 01:21:48 +02:00
CrushedPixel
f55f169d01
Removed MarkerKeyframe and replaced it with generic type of Keyframe using the new Marker POJO
2015-07-13 00:17:29 +02:00
CrushedPixel
bb05e3648d
Cleaned up OpenGL calls in CustomObjectRenderer and PathPreviewRenderer and properly displays CustomImageObjects behind Path Preview Markers | https://trello.com/c/FaiMoTDK/
2015-07-12 23:33:11 +02:00
CrushedPixel
b4e72af48f
Prevented NPEs if Asset linked to CustomImageObject is null
2015-07-12 23:32:04 +02:00
CrushedPixel
b0429fcf44
Fixed NPE in GuiFileChooser if selected file is null
2015-07-12 22:23:33 +02:00
CrushedPixel
ac3474f2bc
The output file can now be specified in GuiRenderSettings
2015-07-12 22:13:18 +02:00
CrushedPixel
ac79eef077
Added support for Save File Dialogs to GuiFileChooser
2015-07-12 22:12:51 +02:00
CrushedPixel
34e3e3c407
Sets a new CustomImageObject's default position to the player's position
2015-07-12 21:08:06 +02:00
CrushedPixel
75e1c17f1f
Added constructor to Position which takes a BlockPos
2015-07-12 21:06:54 +02:00
CrushedPixel
e9a73cb028
use List interface instead of ArrayList implementation in several places
2015-07-12 20:55:13 +02:00
CrushedPixel
06686d20a6
Added static reference to current VideoRenderer instance to allow CustomObjectRenderer to correctly interpolate Object Transformations while rendering
2015-07-12 18:59:19 +02:00
CrushedPixel
cb912d7e54
Pass correct arguments to BoundingUtils.fitIntoBounds call in FrameRenderer to fix distorted preview
2015-07-12 18:58:43 +02:00
CrushedPixel
45f64faa77
Created CustomObjectRepository which can be serialized by Gson, storing all CustomImageObjects created
...
CustomObjectRepository is now being saved to and loaded from the ReplayFile
The CustomObjectRenderer uses the GuiObjectManager's timeline cursor position as interpolation timestamp for the CustomImageObjects which are drawn if a GuiObjectManager is open (instant preview)
KeyframeList's add() method now removes Keyframes with the same timestamp before adding the new Keyframe
Transformations class now holds default values to prevent NullPointerExceptions in methods calling getTransformationForTimestamp()
Added Javadoc to Transformation POJO
Created NumberValueChangeListener which can be applied to GuiNumberInput objects
Made step size customizable in GuiDraggingNumberInput
Changing a ReplayImageAssets image now notifies the CustomImageObjects linked to that asset
Modified RoundUtils to provide a round() method which uses the DecimalFormat class instead of Math.round which is unstable
2015-07-12 16:21:11 +02:00
CrushedPixel
6a6873c3d7
Added ReflectionUtils helper class to find Fields with @Interpolate annotation in superclasses (Interpolators didn't account for Fields in AdvancedPosition inherited by Position)
2015-07-12 03:33:15 +02:00
johni0702
824c80d0d2
GuiLabel now auto-breaks when text is longer than canvas
2015-07-11 15:56:31 +02:00
johni0702
117f383ec0
Add Layout to CrashReport when drawing GUI
2015-07-11 15:53:04 +02:00
johni0702
d8a9b8fd2f
Fix point conversion for stacked GuiContainers
2015-07-11 15:53:04 +02:00
johni0702
a61c0eb4e5
Add GuiImage
2015-07-11 15:32:36 +02:00
johni0702
843328658a
Add text color and setI18nText to GuiTextField
2015-07-11 15:32:36 +02:00
CrushedPixel
28f7d77800
GuiObjectManager now allows users to set Keyframes for Transformations
...
Fixed a bug in KeyframeList#getClosestKeyframeForTimestamp that made it only work with AdvancedPosition Keyframes
2015-07-11 14:26:43 +02:00