Commit
8b0702293020ad08d7858f1c5bc62ae79f18da7a
by CrushedPixelAdded function to detect whether karyonix' Shaders Mod is installed
|
| src/main/java/eu/crushedpixel/replaymod/ReplayMod.java |
Commit
9bf186458c394543359716b292289d38ae722569
by CrushedPixelIf the Shaders Mod is installed, call EntityRenderer#renderWorld to allow it to make some preparations
|
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/video/EntityRendererHandler.java |
Commit
1fe1fd02c4479deb536b10ae90e9611883a95c83
by CrushedPixelUse Minecraft's Framebuffer in the OpenGlFrameCapturer, and do NOT delete it after rendering
|
| src/main/java/eu/crushedpixel/replaymod/video/capturer/OpenGlFrameCapturer.java |
Commit
48905b109e67ed883c427b6d0bf4af519146341b
by CrushedPixelThe Window resizing is now handled by the FrameCapturers instead of the WorldRenderer, as resizing the Framebuffer, which is necessary when rendering with Shaders installed, clears all of its data. By outsourcing the size reset, the framebuffer can be read before it's lost.
|
| src/main/resources/META-INF/replaymod_at.cfg |
| src/main/java/eu/crushedpixel/replaymod/video/EntityRendererHandler.java |
| src/main/java/eu/crushedpixel/replaymod/video/capturer/WorldRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/video/capturer/OpenGlFrameCapturer.java |
| src/main/java/eu/crushedpixel/replaymod/video/capturer/ODSFrameCapturer.java |
Commit
3fb92c82aaee604744b517b212b1c2cd5cc18b1c
by CrushedPixelUse while loop to iterate over buffer contents in GuiVideoRenderer's Video preview to prevent the buffer from underflowing
|
| src/main/java/eu/crushedpixel/replaymod/gui/GuiVideoRenderer.java |
Commit
7567370a97044994db3b24bb57cf06520c0b03bd
by CrushedPixelShows error screen when trying to render ODS videos with Shaders Mod
|
| src/main/java/eu/crushedpixel/replaymod/gui/GuiRenderSettings.java |
| src/main/resources/assets/replaymod/lang/en_US.lang |
Commit
68416378a9382a3b4af9a6754f7e08889ec536d2
by CrushedPixelUse ASM to replace Frustum's ClippingHelper with NoCullingClippingHelper
|
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinEntityRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/LoadingPlugin.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/EntityRendererCT.java |
Commit
45cd643e39cd51cc533110a45dbc6e84b9c01a14
by CrushedPixelCleaned up EntityRendererCT
|
| src/main/java/eu/crushedpixel/replaymod/coremod/EntityRendererCT.java |
Commit
ae766afec4d2ce49bede5c5ea3493e78398e5965
by CrushedPixelCreated ShaderFrameTimeCounter to control Shader Mod's Shader.frameTimeCounter variable to synchronize leaves/grass waving with Replay Speed
|
| src/main/java/eu/crushedpixel/replaymod/timer/ShaderFrameTimeCounter.java |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinEntityRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/replay/ReplayProcess.java |
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
Commit
77fc6341419ff1cd0c66d1f65a841031f44659d4
by CrushedPixelDisable PBO Pipelines when rendering with Shaders Mod installed because of an incompatibility
|
| src/main/java/eu/crushedpixel/replaymod/video/rendering/Pipelines.java |
Commit
41dbe67c156840680cd50b3c608f90d38e6df4d6
by CrushedPixelOnly replace frustum's CullingHelper in EntityRenderer if rendering a video
|
| src/main/java/eu/crushedpixel/replaymod/coremod/EntityRendererCT.java |
Commit
4aefaf62708d4f48bf95b8e0f0f3d6fd786b7ac1
by CrushedPixelPrint stacktrace if frameTimeCounter was not found in Shaders class (for future version easier debugging)
|
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinEntityRenderer.java |
Commit
bf3146352807e2d0b37112f396812ba379bea5b2
by CrushedPixelCreated ClassTransformer for Shader Mod's ClippingHelperShadow to make isBoxInFrustum always return true if rendering a video (force render chunks)
|
| src/main/java/eu/crushedpixel/replaymod/coremod/LoadingPlugin.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/ClippingHelperShadowCT.java |
Commit
0d0dedf5b6ac656197c13a9176de8f72d2da390d
by CrushedPixelTemporarily disabled forced chunk calculation when running ShadersMod, as displayListEntitiesDirty never became false when rendering
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
f4d6ca9fd04ead7bfe87aac7575cde09407b9f8c
by CrushedPixelSimplify GuiReplaySpeedSlider's code by removing obsolete drawButton Method which was the same as the parent's method Fixed OpenGL errors when dragging the Speed Slider with Shaders Mod installed
|
| src/main/java/eu/crushedpixel/replaymod/gui/GuiReplaySpeedSlider.java |
Commit
d3b61c6fa816d9d05d7311db09789bdd7609915c
by CrushedPixelPossibly found a solution to force load all chunks with Shaders installed. To be verified
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
59fb5a3e3cd6a9489ff58a5fe4c2ce041a274de9
by CrushedPixelRemoved EntityRendererCT for launch compatibility with Optifine and instead applied the former ClippingHelperShadowCT to Minecraft's default ClippingHelper as well, thus removing the need for our NoCullingClippingHelper.
|
| src/main/java/eu/crushedpixel/replaymod/coremod/ClippingHelperShadowCT.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/LoadingPlugin.java |
| src/main/java/eu/crushedpixel/replaymod/video/EntityRendererHandler.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/EntityRendererCT.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/ClippingHelperCT.java |
Commit
490bbab454ec4ea5dd525034ad2a2e83db052d68
by CrushedPixelMoved initial reflection calls in MixinEntityRenderer to a separate method, as it would crash with a ClassNotFoundException despite the try/catch block around the method. Weird.
|
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinEntityRenderer.java |
Commit
21996df69dd09aeb9550ce0478d2d0a5ba39392d
by CrushedPixelBecause we're now always using the Minecraft framebuffer, we also need to call Minecraft#resize when rendering without the Shaders Mod installed
|
| src/main/java/eu/crushedpixel/replaymod/video/capturer/OpenGlFrameCapturer.java |
Commit
8768f6e6414eb3b9cdaec51a329ed63828604f79
by CrushedPixelDetermine whether all chunks are loaded by RenderChunk.renderChunksUpdated being 0 Disable modifications to renderDispatcher's queueChunkUpdates if Shaders Mod is installed, as it caused MC to crash or deadlock Removed some warnings caused by suboptimal catch clauses
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
468ca8c9138ef4433cfd61ec01528ed02c07892d
by CrushedPixelThe xRes and yRes input fields in GuiRenderSettings now update each other for an 1:1 aspect ratio when using ODS rendering
|
| src/main/java/eu/crushedpixel/replaymod/gui/GuiRenderSettings.java |
Commit
8be4faf90d2922e362f3390f3d6c9437024ca2f3
by CrushedPixelGuiNumberInput's value Getters now always return a value between the minimum and maximum (if defined)
|
| src/main/java/eu/crushedpixel/replaymod/gui/elements/GuiNumberInput.java |
Commit
63a9c868ddef460fadc5342f32c46e50e15f3a02
by CrushedPixelReplaced old JailingQueue system with a new way to stop chunk compilations while rendering
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
| src/main/resources/mixins.replaymod.json |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderWorker.java |
Commit
af61f60681dee38c06f7f45e88efc605b3bb53e7
by CrushedPixelReplace poor lock system with ReadWriteLock system
|
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderWorker.java |
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
d7dcefe836d9b251dc5f2cd1a566c3aabc2e3497
by CrushedPixelCreated ChunkRenderDispatcherCT to make queueChunkUpdates field volatile
|
| src/main/java/eu/crushedpixel/replaymod/coremod/LoadingPlugin.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/ChunkRenderDispatcherCT.java |
Commit
4bb5923d2a84b4cad7af96a199a5fa263a3c9d26
by CrushedPixelRemoving some CT debug output
|
| src/main/java/eu/crushedpixel/replaymod/coremod/ClippingHelperCT.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/ChunkRenderDispatcherCT.java |
Commit
0bfd5f424449ea30a44ba33243e532d798e6e4c4
by CrushedPixelModify the ChunkRenderWorker to feed itself with an empty, finished ChunkCompileTaskGenerator while recording if no future TaskGenerator is in the queueChunkUpdates, to prevent deadlock state when the processTask method's internal lock indirectly kept the ChunkLoadingRenderGlobal.lock locked
|
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderWorker.java |
Commit
8421136295d06112ec86c21b7d7690c8e597eecb
by CrushedPixelThe Shaders Mod seemed to like keeping us in an eternal do/while loop
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
648f75b60811d710a20a71650b45ff76fcf5c082
by CrushedPixelUse a custom LockingChunkCompileTaskGenerator to lock the ChunkRenderWorkers while rendering videos. These Generators are inserted into the renderDispatcher's queueChunkUpdates, therefore assuring that the ChunkRenderWorkers release the ChunkLoadingRenderGlobal's ReadLocks after finishing Minecraft's final chunk compilation/upload process.
|
| src/main/resources/mixins.replaymod.json |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderDispatcher.java |
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderWorker.java |
Commit
73a29f816a1362ef126fd3c187a506d3e7a17275
by CrushedPixelRemoved now obsolete MixinChunkRenderDispatcher
|
| src/main/resources/mixins.replaymod.json |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderDispatcher.java |
Commit
61c1eeee20c139c88e17680bf150cf7e41a454da
by CrushedPixelMade ChunkLoadingRenderGlobal's ReadWriteLock non-static
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/mixin/MixinChunkRenderWorker.java |
Commit
7e5c83005ae4801b2f15f2b0132581f501aabcb7
by CrushedPixelDraw the Rendering GUI on our own Framebuffer instead of the Minecraft framebuffer. This way we don't have to recreate (because of resizing) Minecraft's framebuffer every frame (once to render the video with custom resolution, once to render the GUI with window resolution)
|
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/utils/MouseUtils.java |
| src/main/java/eu/crushedpixel/replaymod/video/capturer/ODSFrameCapturer.java |
| src/main/java/eu/crushedpixel/replaymod/gui/GuiVideoRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/video/capturer/OpenGlFrameCapturer.java |
Commit
7542d9caf994152d025281098620700cf1f8ae5b
by CrushedPixelCompare our framebuffer's size to the Display's size BEFORE rendering to properly update the gui size Restore mc.displayWidth and Height after calling gui.handleInput in VideoRenderer so we don't have to recalculate the mouse positions in GuiVideoRenderer's onClick method
|
| src/main/java/eu/crushedpixel/replaymod/gui/GuiVideoRenderer.java |
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
Commit
e6a7c796d622408132eaac6a03f2d599d613b141
by CrushedPixelWe don't need that weird chunk loading difference check anymore
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
9fbf8a8b4b61620f6c507bab56a5e03afeafc3a7
by CrushedPixelGracefully offer the queueChunkUpdates the LockingChunkCompileTasks, but be persistent until they accept our gift.
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
a7ac6328835cda0085b0e9816bd9fe9fe9da67ee
by CrushedPixelTake the "up to one second" in Johni's comment a bit more literally
|
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
Commit
70f4e9c570bd3244bea4c06501cdf551e8fca8fb
by CrushedPixelJohni says I may not ignore this exception.
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
aa307706655960f6a0bee3a3c70b131c7de2508c
by CrushedPixelThe ChunkRenderDispatcher#queueChunkUpdates does not need to be non-final and therefore does not have to be volatile -> removed ChunkRenderDispatcherCT
|
| src/main/resources/META-INF/replaymod_at.cfg |
| src/main/java/eu/crushedpixel/replaymod/coremod/LoadingPlugin.java |
| src/main/java/eu/crushedpixel/replaymod/coremod/ChunkRenderDispatcherCT.java |
Commit
d97b15d103d4e7e01089b163a4522cec2bae7d6d
by CrushedPixelMove Shaders Mod detection from postInit() to a static block
|
| src/main/java/eu/crushedpixel/replaymod/ReplayMod.java |
Commit
be68318813e2b83479703f72e82fc2714c0422d5
by CrushedPixelRe-enabled rendering with PBOs enabled
|
| src/main/java/eu/crushedpixel/replaymod/video/rendering/Pipelines.java |
Commit
8131639dba8780fef3823b7311fb9266da96efd2
by CrushedPixelHave a maximum of 10 timeouts when offering LockingChunkCompileTasks to queueChunkUpdates
|
| src/main/java/eu/crushedpixel/replaymod/renderer/ChunkLoadingRenderGlobal.java |
Commit
465541ff7456896da1163cf36da26606144cec78
by CrushedPixelRender the guiFramebuffer with correct width/height arguments
|
| src/main/java/eu/crushedpixel/replaymod/video/VideoRenderer.java |
Commit
67037e844ea136e1db80e28dd0354e40445d46d9
by CrushedPixel1.0.7
|
| build.gradle |