Conversation
Builds against 26.3 / NeoForge 26.3.0.7-beta. 271 compile errors, mostly mechanical; the notes below cover the parts that are not. Build: - minecraft_version 26.1.2 -> 26.3, neoforge_version -> 26.3.0.7-beta - ModDevGradle 2.0.134 -> 2.0.147. 2.0.134 cannot recompile the patched 26.3 sources; it fails inside HolderSet before touching our code - compileOnly lwjgl-tinyfd, which is no longer on Minecraft's compile classpath but is still present at runtime Rendering: - com.mojang.blaze3d GPU classes moved to com.mojang.renderpearl.api (RenderPipeline, VertexFormat, GpuTexture, CommandEncoder, buffers) - 26.3 uses a reversed-Z depth buffer: depth clears to 0.0 and DepthStencilState.DEFAULT is GREATER_THAN_OR_EQUAL, so explicit CompareOps are flipped - MultiBufferSource is gone. The guidebook scene renderer now submits through SubmitNodeCollector, and PictureInPictureRenderer#prepare runs the render pass itself, so scene state is installed across prepare() rather than around renderToTexture - Sheets.cutoutBlockSheet/translucentBlockSheet -> *BlockItemSheet Input, screens, misc: - GLFW is gone (SDL3): Blaze3D.getTime, InputConstants.isKeyDown(int), Type.KEYSYM -> Type.KEYBOARD, Blaze3D.openUri - Minecraft.screen/setScreen/getOverlay moved onto Minecraft.gui - FuelValues and PotionBrewing were removed upstream - accesstransformer: Minecraft.mainRenderTarget moved to GameRenderer; LayerRenderState.quads exposed in place of the removed prepareQuadList Known regression: exporting 3D scenes to the static website is disabled. See SceneExporter#renderToMeshes and MeshBuildingBufferSource for why and for the three possible approaches. The in-game guidebook is unaffected.
Member
|
Hi, since this isn't based on the 26.2 branch this isn't really all that useful to me, sorry. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ports GuideME to Minecraft 26.3 / NeoForge 26.3.0.7-beta. There's no 26.3 branch upstream yet, so
this is aimed at
main(26.1.2) — happy to retarget if you'd rather it sat on its own branch.271 compile errors, most of them mechanical. The parts that weren't:
Build
all: it fails inside
HolderSetbefore reaching GuideME's code, so 26.3 can't even start buildingwithout this.
compileOnlyonlwjgl-tinyfd. It's no longer on Minecraft's compile classpath but is stillpresent at runtime, so
StructureCommands' file dialogs keep working.Rendering
com.mojang.renderpearl.api.*(RenderPipeline,VertexFormat,GpuTexture,CommandEncoder, buffers). A lot of the error count was just this.DepthStencilState.DEFAULTis nowGREATER_THAN_OR_EQUALand depth clears to0.0. ExplicitCompareOps are flipped accordingly.Worth knowing because it compiles fine either way and silently inverts depth tests.
MultiBufferSourceis gone. The scene renderer submits throughSubmitNodeCollectornow. Thestructural bit:
PictureInPictureRenderer#preparecallsrenderToTexture(submit only) and thenruns
prepareFrame+renderAllFeaturesitself, so projection/lightmap/fake-player state has tostay installed across the whole of
prepare()instead of just around the draw.VertexFormatElementis a record keyed by semantic name now, soMesh/SceneExporterlookelements up via
DefaultVertexFormat.UV0_SEMANTIC_NAMEand readoffset()off the element.Input and screens
Blaze3D.getTime(),InputConstants.isKeyDown(int),Type.KEYSYM->Type.KEYBOARD,Blaze3D.openUri. Note the key values are SDL scancodes now, soexisting keybind configs for the guide hotkey will be reinterpreted.
Minecraft.screen/setScreen/getOverlaymoved ontoMinecraft.gui.FuelValuesandPotionBrewingwere removed upstream, so theGuidebookLeveloverrides andPlatform.fuelValues()went with them.Minecraft.mainRenderTargetnow lives onGameRenderer, andLayerRenderState.quadsis exposed in place of the removedprepareQuadList().One regression you should decide on
Exporting 3D scenes to the static website is disabled.
SceneExporter#renderToMeshesthrowswith an explanation instead of silently producing empty scenes.
There's no interception point left:
MultiBufferSourceis gone,FeatureRenderDispatchertakes nobuffer source, vertex data goes into
RenderBuffers#stagedVertexBuffer()which uploads and frees theCPU staging slices during
prepareFrame, and the Draw -> RenderType mapping only exists inside theprivate
RenderTypeFeatureRenderer.Group— so even reading the staging memory loses the materialinfo
Meshneeds.MeshBuildingBufferSourcehas a javadoc listing the three approaches I could see(capture
submitCustomGeometryonly; record the render pass and read buffers back viaCommandEncoder#readBuffer; or AT the dispatcher internals). I didn't pick one — that's your call.The in-game guidebook is unaffected; this only touches the website export.
Testing
Built and running in a ~70 mod NeoForge 26.3.0.7-beta pack alongside AE2 (which I also ported
locally, since it depends on this).