Commit Graph

45 Commits

Author SHA1 Message Date
CrushedPixel
dd68b1546d The GuiRenderSettings loads their initial settings from the Replay Mod config
Upon rendering, the GuiRenderSettings saves the current RenderOptions to the Replay Mod config
2015-07-28 00:00:38 +02:00
CrushedPixel
5427616ceb Reworked ReplayProcess to get rid of own Interpolation instances (as these can be handled by the KeyframeLists)
Camera Paths are now started from the current cursor position, using Ctrl-click the path always starts from the beginning
2015-07-25 14:11:06 +02:00
CrushedPixel
eb57e7be2c Since we can't determine the file extension without parsing the actual ffmpeg arguments, we don't manually delete the destination video file when rendering but instead tell FFmpeg to overwrite this file if it already exists using the -y parameter. 2015-07-23 13:09:56 +02:00
CrushedPixel
07fc3ceced Rewrote GuiRenderSettings to use the semi-new Gui System and have three instead of two pages (Video Settings, Advanced Settings, Command Line Settings) 2015-07-19 13:27:37 +02:00
CrushedPixel
8f82ca5434 Implemented NoOverlay interface for some more GUIs 2015-07-17 16:21:23 +02:00
johni0702
fdd2c7ecf7 Allow all camera rotation axis to be ignored separately during rendering 2015-07-17 12:43:46 +02:00
CrushedPixel
238acf2eca Initially validate inputs in GuiRenderSettings 2015-07-16 22:04:06 +02:00
CrushedPixel
9ba99d1794 Added restriction for Encoding Presets with the yuv420 setting (width and height have to be even numbers) 2015-07-16 21:56:29 +02:00
CrushedPixel
da82e3e1f2 Draw Elements in GuiRenderSettings in the correct order 2015-07-16 21:09:58 +02:00
CrushedPixel
531319a4d1 Added Checkbox to GuiRenderSettings to enable/disable Name Tag rendering 2015-07-16 17:28:33 +02:00
johni0702
787942aef2 Add high performance rendering mode which does not render the GUI every frame 2015-07-16 16:23:30 +02:00
CrushedPixel
7790aee3cb Replaced lossless encoding with high quality ( -qp 1 instead of -qp 0 ) because (quote ffmpeg.org): Most non-FFmpeg based players will not be able to decode lossless (but YouTube can), so if compatibility is an issue you should not use lossless. 2015-07-15 23:59:23 +02:00
CrushedPixel
936f242b4c Added Encoding Presets to GuiRenderSettings and removed Checkbox for Custom Resolution 2015-07-15 16:50:58 +02:00
johni0702
7ee5f86b4e Prevent rendering with invalid resolution 2015-07-15 15:43:01 +02:00
johni0702
7fd429e25f Rework rendering pipeline to make better use of multithreading
Move OpenGL frame to ARGB conversion to processing threads
Move video exporting to processing threads
Skip creation of BufferedImage and instead use ByteBuffer with ARGB content directly
2015-07-15 14:23:43 +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
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
ac3474f2bc The output file can now be specified in GuiRenderSettings 2015-07-12 22:13:18 +02:00
CrushedPixel
ef39c7466d Renamed the commonly used Position POJO into AdvancedPosition, as it also hold pitch, yaw and roll
Made GuiDropdown only accept instances of GuiEntryListEntry to avoid unneccessary toString() methods returning the name
Added GuiEntryListValueEntry which holds a Value and a Name to be displayed
Continued work on GuiObjectManager
2015-07-10 04:27:15 +02:00
CrushedPixel
80a47a61c8 Made GuiDropdown a subclass of GuiAdvancedTextfield, updating the Constructor and removing the now redundant GuiConstants entries 2015-07-08 15:50:12 +02:00
CrushedPixel
54f35eca03 Made GuiNumberInput a subclass of GuiAdvancedTextField and removed unneccessary IDs from Constructor and GuiConstants 2015-07-08 11:54:47 +02:00
CrushedPixel
948803571d GuiAssetAdder now allows to add/remove/edit Assets in a Replay. These Assets are not being saved yet. 2015-07-06 16:39:40 +02:00
CrushedPixel
a444d49d70 Doesn't allow rendering if Optifine is installed and shows error screen 2015-07-05 18:16:18 +02:00
CrushedPixel
6a3104c6bc Moved "Main Menu" Button in Replay Center to the right side because it annoyed Hudeler | https://trello.com/c/wUiKfybu/ 2015-07-03 00:26:26 +02:00
CrushedPixel
ff9e341c9a Added a way to customize the main Command | https://trello.com/c/PAFUGf6x/ 2015-07-03 00:08:19 +02:00
CrushedPixel
e1c19d7537 Made custom command line arguments respect placeholders like %FPS% 2015-07-02 13:25:29 +02:00
CrushedPixel
bfe721c00c Enabled Keyboard.enableRepeatEvents in GuiRenderSettings 2015-07-01 21:12:55 +02:00
CrushedPixel
a189868390 Added Support for custom ffmpeg Command Line Arguments when Rendering a Video | https://trello.com/c/69CNoWuA/ 2015-07-01 13:28:41 +02:00
CrushedPixel
9da89c4f07 Finally gave up on trying to inject YouTube 360° Metadata into Videos and removed respective Checkbox in GuiRenderSettings 2015-06-30 18:10:33 +02:00
CrushedPixel
2ae5a95c6f RenderSettings: The Render Method Dropdown Listener calls the Y Resolution Input's moveCursorBy() Method to recalculate the aspect ratio if neccessary, resolving https://trello.com/c/unn8VGbf/ 2015-06-30 15:00:06 +02:00
CrushedPixel
7f1d0f59bc Added Bitrate Input Field for GuiRenderSettings 2015-06-30 01:33:46 +02:00
johni0702
a058497727 Fix all warnings
Add and make use of Lombok
Remove Mojang API
Remove ZipFileUtils
Remove StreamTools in favor of Apache IOUtils
Keyframe should be abstract all derivatives final
Replace clone in Keyframe with copy
Move some constants from GuiReplaySetttings to GuiConstants
2015-06-29 21:45:37 +02:00
johni0702
f19fc0ab36 Use ffmpeg for video exporting (default webm)
Remove monte media lib
2015-06-29 13:02:41 +02:00
CrushedPixel
828f3c9ba0 Made Advanced Settings ToggleButtons toggleable (Path Interpolation and Force Render Chunks setting) 2015-06-16 21:41:14 +02:00
johni0702
be4ee42dcb Add GuiTextArea
Reorder and add description to GuiUpload
2015-06-14 14:13:03 +02:00
CrushedPixel
a8c5e98c29 Manually toggle GuiCheckButtons in GuiRenderSettings' actionPerformed
Properly set Selection box when modifying other number input box
2015-06-04 01:20:38 +02:00
johni0702
d171ff4346 Allow custom resolution for all video rendering modes
Remove tiled rendering
Choose different rendering strategy based on video size and framebuffer support
Make size of video writer queue configurable via system properties
2015-06-03 21:20:03 +02:00
CrushedPixel
b075314362 Notifies GUI Elements about certain events in GuiRenderSettings 2015-06-02 19:05:44 +02:00
CrushedPixel
ecb3f1bc2c Renamed Greenscreen into Chroma Keying (because some grammatically correct people told me to do so) 2015-06-02 19:05:44 +02:00
CrushedPixel
689b7c79da Prevents GuiRenderSettings from being opened if not enough keyframes present 2015-06-02 12:10:32 +02:00
CrushedPixel
53810c8ae7 Adjusted Y Position of Checkboxes in GuiRenderSettings (advanced tab) 2015-06-02 12:00:47 +02:00
CrushedPixel
2331634af9 Changed GuiRenderSettings to have "Advanced" settings
Added GuiColorPicker and implemented it for Greenscreen color choosing
2015-06-02 02:41:20 +02:00
johni0702
394165cba4 Add render option for sky color (green-screen effect) 2015-06-01 18:50:55 +02:00
CrushedPixel
565c7a0373 Centered Elements of GuiRenderSettings 2015-05-24 02:19:55 +02:00
CrushedPixel
2b3bc2787a Added GuiRenderSettings to customize rendering 2015-05-24 01:26:01 +02:00