-
-
Notifications
You must be signed in to change notification settings - Fork 611
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PBR #1401
Conversation
- Add iris.pbr.debug property to control dumping of PBR atlases
- Combine all texture tracking into a single TextureTracker - Split atlas size calculation into AtlasInfoGatherer - Tweak PBR code to match these changes - Organize classes and packages
- PBR textures will automatically be bound if the texture implements PBRTextureHolder.Provider - Bound PBR textures are now reset to default if the last bound texture isn't a PBRTextureHolder.Provider - Remove PBR fields from ShadowRenderer - Rename some classes
- Scale sprites if their width does not match the parent sprite's width - Simplify PBR sprite loading - Fix saving of non-zero mip level textures - Rename TextureSaveUtil -> TextureSavingUtil
Conflicts: src/main/java/net/coderbot/iris/mixin/vertices/MixinBufferBuilder.java src/main/java/net/coderbot/iris/mixin/vertices/MixinVertexBuffer.java src/main/java/net/coderbot/iris/mixin/vertices/MixinVertexFormat.java src/main/java/net/coderbot/iris/samplers/IrisSamplers.java src/main/java/net/coderbot/iris/uniforms/CommonUniforms.java
- Reset atlas info on atlas texture load instead of old logic in TextureTracker
Conflicts: src/main/java/net/coderbot/iris/Iris.java src/main/java/net/coderbot/iris/pipeline/DeferredWorldRenderingPipeline.java src/main/java/net/coderbot/iris/pipeline/FixedFunctionWorldRenderingPipeline.java src/main/java/net/coderbot/iris/pipeline/WorldRenderingPipeline.java src/main/java/net/coderbot/iris/samplers/IrisSamplers.java src/main/java/net/coderbot/iris/uniforms/CommonUniforms.java
Conflicts: src/main/java/net/coderbot/iris/Iris.java src/main/java/net/coderbot/iris/gl/shader/GlShader.java src/main/java/net/coderbot/iris/gl/shader/StandardMacros.java src/main/java/net/coderbot/iris/shaderpack/ShaderPack.java
Conflicts: src/main/java/net/coderbot/iris/Iris.java src/main/java/net/coderbot/iris/mixin/GlStateManagerAccessor.java src/main/java/net/coderbot/iris/mixin/MixinRenderTarget.java src/main/java/net/coderbot/iris/mixin/texture/MixinAbstractTexture.java src/main/java/net/coderbot/iris/mixin/texture/MixinGlStateManager.java src/main/java/net/coderbot/iris/pipeline/DeferredWorldRenderingPipeline.java src/main/java/net/coderbot/iris/pipeline/FixedFunctionWorldRenderingPipeline.java src/main/java/net/coderbot/iris/pipeline/ShadowRenderer.java src/main/java/net/coderbot/iris/pipeline/WorldRenderingPipeline.java src/main/java/net/coderbot/iris/samplers/IrisSamplers.java src/main/java/net/coderbot/iris/texture/TextureTracker.java src/main/java/net/coderbot/iris/texunits/TextureUnit.java src/main/resources/mixins.iris.json src/sodiumCompatibility/java/net/coderbot/iris/compat/sodium/impl/vertex_format/terrain_xhfp/XHFPModelVertexBufferWriterNio.java src/sodiumCompatibility/java/net/coderbot/iris/compat/sodium/impl/vertex_format/terrain_xhfp/XHFPModelVertexBufferWriterUnsafe.java
What is the status of this PR? There are a number of issue reports in the #pbr-issue-report channel on GitHub that don't appear to have any follow up or explicit resolution. I'm not fully comfortable reviewing this PR and moving forward with the process of getting it into a release until we can get a list of outstanding issues on the PR & confirmation that the other reported issues are fixed. |
# Conflicts: # src/main/java/net/coderbot/iris/mixin/bettermipmaps/MixinTextureAtlasSprite.java
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me, although blocking on #1599. Can't mark as approved since I made this.
Allow broken paths
- Move PBR texture parameter setup from loaders to after binding - Remove texture parameter locking - Ensure PBRTextureManager#loadHolder does not change GL state - Change PBRTextureConsumer argument contracts from Nullable to NotNull - Move PBR texture change listeners from CustomTextureManager to PBRTextureManager - Use try-with-resources in AtlasPBRLoader - Remove AtlasPBRLoader#uploadAtlas and add PBRAtlasTexture#tryUpload
yeef
made this to draft
Almost all code is by @PepperCode1