Commit Graph

322 Commits

Author SHA1 Message Date
Jonas Herzig
eb1fbed0d8 Fix compilation of 1.15.1 2020-03-30 01:05:26 +02:00
Jonas Herzig
5c13995e59 Fix compilation of 1.14.4 2020-03-30 01:03:46 +02:00
Jonas Herzig
af8803d6b5 WIP 1.15 and ReplayStudio v2 update 2020-03-13 14:18:19 +01:00
Jonas Herzig
8bc0b0a4df Update preprocessor and replace 1.13.2 subproject with 1.14.4-forge
The new preprocessor version brings first-party support for fabric, in
particular for automatically fetching mappings loom and for
automatically remapping between MC versions via intermediary mappings.
This will come in handy when updating to 1.15.

It also supports automatic remapping between fabric and forge on the
same MC version (by going mcp<->srg<->mojang<->intermediary<->yarn).
Therefore this commit replaces the previous 1.13.2 (forge) subproject
with a 1.14.4-forge one. Instead of manually providing full mappings for
1.14.4-fabric to 1.13.2-forge and partial (classes) for 1.13.2-forge to
1.12.2-forge, we now only need partial (classes) for 1.12.2-forge to
1.14.4-forge and preprocessor will take care of the forge to fabric
step (in fact, our mapping file for that is currently completely empty).

In an attempt to write an IDE (IntelliJ) plugin for quicker and easier
working with the preprocessor (e.g. immediately mapping single files
from within the IDE, jumping between different versions for the same
file), the preprocessor gradle plugin declaration now requires you to
explicitly specify variables in the common.gradle and the overall
relationship between projects in the build.gradle (latter is required
anyway, so the plugin can know where it should map between forge and
fabric and which subprojects are which versions).
Since that necessitated some changes to the build.gradle file, I took
the opportunity to convert it to Kotlin. As such we now also use
Gradle's newer plugin-block with the pluginManagement-block instead of
manually declaring buildScript (not for the common.gradle though), which
imo is nicer anyway and comes with various advantages (see gradle docs).

There were also some remapping bugs fixed and some new ones
introduced (e.g. manually declared inner class mappings seem to no
longer function properly under certain conditions).
There's also support for remapping Kotlin now. Just saying.
2020-01-12 23:34:10 +01:00
Jonas Herzig
1245f38267 Fix 360 camera stabilization on 1.13+ 2019-07-19 21:49:10 +02:00
Jonas Herzig
67d7af2dc3 Update to MC 1.14.4 2019-07-19 14:25:42 +02:00
Jonas Herzig
45ef15359e Fix replay not properly starting during rendering on 1.7.10 2019-07-08 11:30:15 +02:00
Jonas Herzig
7eecb2664d Fix rendering of sky (or anything with textures disabled) during ODS 2019-06-30 20:32:54 +02:00
Jonas Herzig
7241036e61 AWT is forbidden on 1.13+ (this includes BufferedImage)
Instead use NativeImage on 1.13+ via newly introduced Image class.
See Image docs for details.

Also fixes an issue with thumbnail taking on 1.13+: The original
ScreenshotHelper method is now async, luckily there's a sync
variant and as a bonus it directly returns a NativeImage so we can
skip having to read the screenshot from disk.
2019-06-30 12:12:13 +02:00
Jonas Herzig
801f0871d5 Fix framebuffer resizing for rendering on 1.13+ 2019-06-28 17:23:07 +02:00
Jonas Herzig
654a640a60 Fix tracking of enabled state for primary texture 2019-06-28 15:01:45 +02:00
Jonas Herzig
214da6ba59 Update to MC 1.14.3 2019-06-24 18:36:12 +02:00
Jonas Herzig
b846d5308e Fix FullBrightness having no effect during rendering 2019-06-21 22:20:45 +02:00
Jonas Herzig
b8d319eba9 Skip world during video rendering if it has not yet been loaded 2019-06-21 07:34:22 +02:00
Jonas Herzig
73723ed9e2 Guard against broken render settings file 2019-06-14 22:09:56 +02:00
Jonas Herzig
d15fa6a3f9 Fix notice screen back buttons not being hooked up 2019-06-14 22:09:56 +02:00
Jonas Herzig
d89655e69a Remove some more preprocessor statements in favor of remap 2019-05-28 11:25:46 +02:00
Jonas Herzig
8627867b62 Fix render preview (broken due to BGRA changes)
Also de-duplicates some code by combining >=1.13 and <1.13
2019-05-21 10:37:39 +02:00
Jonas Herzig
e5ee6a3d94 Update to MC 1.14.1
The ReplayStudio update also fixes an issue with reading the
PlayerListEntryPacket leading to NPEs during Quick Mode.
2019-05-20 14:59:31 +02:00
Jonas Herzig
0e086d91a6 Use own event distribution system instead abusing fabric's one 2019-05-20 14:59:13 +02:00
Jonas Herzig
7cbf7f7c94 Switch core to 1.14 (generated via ./gradlew :1.14:setCoreVersion) 2019-05-10 14:09:22 +02:00
Jonas Herzig
2463e5dbf0 Work around bug in fabric's mapping provider (or Mixin itself?)
See https://github.com/FabricMC/fabric-mixin-compile-extensions/issues/1
2019-05-07 11:21:33 +02:00
Jonas Herzig
bd91d0d3bd Get rid of all the ATs in favor of Mixins 2019-05-06 22:46:21 +02:00
Jonas Herzig
af86faeaf9 Fix webm encoding preset (caused by BGRA changes) 2019-05-04 15:27:03 +02:00
Jonas Herzig
3d009e45c7 Update to MC 1.14 / Fabric 2019-05-04 15:27:03 +02:00
Jonas Herzig
17fe5b345f Replace all ATs with Mixin on 1.13+ in preparation for Fabric 2019-04-26 12:04:33 +02:00
Jonas Herzig
2ee91515f7 Make use of the source remapping feature of The Preprocessor plugin 2019-04-24 15:38:34 +02:00
Jonas Herzig
6127e0a027 Replace dev-only reflection with access transformer entry 2019-04-24 14:03:17 +02:00
Jonas Herzig
fa8f8f52aa Stop using @SneakyThrows since it breaks the JDT used for source remap 2019-04-24 13:41:06 +02:00
Jonas Herzig
1e1104f4d3 Add blend export to GuiRenderSettings 2019-03-14 18:20:17 +01:00
Jonas Herzig
7cc62b13c1 Fix blend compilation on pre-1.13 2019-03-14 18:20:17 +01:00
Jonas Herzig
3cb1d8189b Preshadow lwjgl_util instead of copying source of specific classes 2019-03-14 18:20:17 +01:00
Jonas Herzig
dc6de5bd5f Apply rotation and scale to entity (livingbase), not its parts
Reduces amount of keyframes per entity and makes it easier to work with.
2019-03-14 11:30:40 +01:00
Jonas Herzig
cd16e014d1 Vastly improve performance of major block name generation 2019-03-13 22:03:03 +01:00
Jonas Herzig
22ab39c2db Get blend export running on 1.13 2019-03-13 19:10:44 +01:00
Jonas Herzig
106f14d8c7 Merge branch 'johni/1.13-pre' into johni/blend 2019-03-13 16:07:32 +01:00
Jonas Herzig
443c1ca2af Render to BGRA instead of RGB format for better performance on most GPUs 2019-03-13 15:27:53 +01:00
Jonas Herzig
e9ca1bb47e Fix FOV during 360 rendering 2019-03-11 15:13:31 +01:00
Jonas Herzig
5f0bd1cf5d Only update uniforms when ODS shader is bound (fixes GL errors) 2019-03-11 15:13:31 +01:00
Jonas Herzig
cdcd6f6893 Get render module mostly working 2019-03-10 16:59:59 +01:00
Jonas Herzig
8705bbad9a Re-enable and fix building for older MC versions 2019-03-09 13:08:47 +01:00
Jonas Herzig
f13f2dda1c Get extras module compiling on 1.13
Remove LocalizationExtra (too much update work for too little gain)
2019-03-02 09:59:57 +01:00
Jonas Herzig
344a550dc1 Get render module compiling on 1.13 2019-03-01 17:22:50 +01:00
Jonas Herzig
65295b311e Merge branch 'spherical-fov' into develop 2018-12-19 10:20:23 +01:00
Jonas Herzig
3bc9bb32b9 Merge branch 'fix-bitrate-label' into develop 2018-12-19 10:18:01 +01:00
CrushedPixel
2f44d5f380 GuiRenderSettings: Fix bitrate label 2018-12-06 14:47:29 +01:00
CrushedPixel
7c3fcd4e42 Adjustments for consistency 2018-12-06 14:18:55 +01:00
CrushedPixel
a7ec6524b7 Add FOV slider for spherical render methods
Before uploading to YouTube, convert all spherical non-mp4 files to mp4 to be able to inject metadata
Properly re-throw errors during the rendering pipeline
2018-12-06 01:29:31 +01:00
Jonas Herzig
a9e32a53ea Update jGui (fixes "Cannot convert pos unless rendered at least once.") 2018-08-25 13:47:31 +02:00
Jonas Herzig
c48187e784 Disable .blend export for 1.7.10 2018-06-11 00:31:50 +02:00