Skip to content

Conversation

@screret
Copy link
Contributor

@screret screret commented Dec 6, 2025

What

No more LDLib renderers. anywhere.

Implementation Details

a system similar to the machine models but much simpler.

Outcome

maybe more fps?
less reliance on ldlib

Additional Information

I also made lamps not use ldlib renderers while at it
untested because this laptop cant launch the game well enough I hope it works

Potential Compatibility Issues

anyone with custom pipe implementations will have to tweak their code very slightly (see example below)

-public final PipeModel model = new PipeModel(pipeType.getThickness(), () -> [side texture], () -> [end texture], null, null); 
-@Getter
-private final PipeBlockRenderer renderer = new PipeBlockRenderer(model);
 
 ...
 
 @Override
-public PipeModel getPipeModel() {
-    return model;
+public PipeModel createPipeModel() {
+    return PipeModel.create(this, pipeType.getThickness(), [side texture], [end texture], null, null);
 }

@screret screret requested a review from a team as a code owner December 6, 2025 21:01
@github-actions github-actions bot added the 1.20.1 label Dec 6, 2025
@gustovafing gustovafing added type: refactor Suggestion to refactor a section of code Release: Major - 0.X.0 Releases focused on Content, changes to gameplay; While maintaining mostly API stability. labels Dec 6, 2025
screret and others added 21 commits December 7, 2025 11:54
* Add RegisterDynamicResourcesEvent

* move dynamic asset init to event listener

* remove unused imports

* Move pipe model reinit to an event listener

* add event listeners

* change variable name in example

* Copy the workflow into here

* Add setup build step

* Apply spotless formatting

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
also add a way to create pipe models with datagen for blocks that aren't generated at runtime (I misclicked this into this commit, was supposed to be separate, oops)
… (so PipeModelBuilder can create the restrictor models by itself)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.20.1 Release: Major - 0.X.0 Releases focused on Content, changes to gameplay; While maintaining mostly API stability. type: refactor Suggestion to refactor a section of code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants