GithubHelp home page GithubHelp logo

caffeinemc / sodium-fabric Goto Github PK

View Code? Open in Web Editor NEW
4.5K 82.0 740.0 6.3 MB

A Fabric mod designed to improve frame rates and reduce micro-stutter

License: Other

Java 99.45% GLSL 0.55%
minecraft fabric azdo opengl

sodium-fabric's Introduction

Sodium (for Fabric)

Sodium is a powerful rendering engine and optimization mod for the Minecraft client which improves frame rates and reduces micro-stutter, while fixing many graphical issues in Minecraft.

πŸ“₯ Installation

The latest releases of Sodium are published to our official Modrinth and GitHub release pages. These releases are considered by our team to be suitable for general use, but they are not guaranteed to be free of bugs and other issues.

For more information about downloading and installing the mod, you can read our installation guide on Modrinth. It also contains information about any currently known compatibility issues, which are often useful to read.

πŸ› Reporting Issues

You can report bugs and crashes by opening an issue on our issue tracker. Before opening a new issue, use the search tool to make sure that your issue has not already been reported and ensure that you have completely filled out the issue template. Issues that are duplicates or do not contain the necessary information to triage and debug may be closed.

Please note that while the issue tracker is open to feature requests, development is primarily focused on improving hardware compatibility, performance, and finishing any unimplemented features necessary for parity with the vanilla renderer.

πŸ’¬ Join the Community

We have an official Discord community for all of our projects. By joining, you can:

  • Get installation help and technical support for all of our mods
  • Get the latest updates about development and community events
  • Talk with and collaborate with the rest of our team
  • ... and just hang out with the rest of our community.

βœ… Hardware Compatibility

We only provide support for graphics cards which have up-to-date drivers for OpenGL 4.6. Most graphics cards which have been released since year 2010 are supported, such as the...

  • AMD Radeon HD 7000 Series (GCN 1) or newer
  • NVIDIA GeForce 400 Series (Fermi) or newer
  • Intel HD Graphics 500 Series (Skylake) or newer

In some cases, older graphics cards may also work (so long as they have up-to-date drivers which have support for OpenGL 3.3), but they are not officially supported, and may not be compatible with future versions of Sodium.

OpenGL Compatibility Layers

Devices which need to use OpenGL translation layers (such as GL4ES, ANGLE, etc) are not supported and will very likely not work with Sodium. These translation layers do not implement required functionality and they suffer from underlying driver bugs which cannot be worked around.

πŸ› οΈ Developer Guide

Building from sources

Sodium uses a typical Gradle project structure and can be compiled by simply running the default build task. The build artifacts (typical mod binaries, and their sources) can be found in the build/libs directory.

Requirements

We recommend using a package manager (such as SDKMAN) to manage toolchain dependencies and keep them up to date. For many Linux distributions, these dependencies will be standard packages in your software repositories.

  • OpenJDK 17
    • We recommend using the Eclipse Temurin distribution, as it's known to be high quality and to work without issues.
  • Gradle 8.2.1 (optional)
    • The Gradle wrapper is provided in this repository can be used instead of installing a suitable version of Gradle yourself. However, if you are building many projects, you may prefer to install it yourself through a suitable package manager as to save disk space and to avoid many different Gradle daemons sitting around in memory.
    • Typically, newer versions of Gradle will work without issues, but the build script is only tested against the version specified by the wrapper script.

πŸ“œ License

Except where otherwise stated, the content of this repository is provided under the Polyform Shield 1.0.0 license by JellySquid.

sodium-fabric's People

Contributors

0-x-2-2 avatar altirix avatar altrisi avatar amnotbananaama avatar bytzo avatar coderbot16 avatar comp500 avatar douira avatar embeddedt avatar flashyreese avatar grayray75 avatar haykam821 avatar ims212 avatar jellysquid3 avatar johni0702 avatar kroppeb avatar leo40git avatar lucilletea avatar madis0 avatar mcrcortex avatar moulberry avatar mrmangohands avatar noryea avatar pajicadvance avatar peppercode1 avatar raptag avatar razboy20 avatar silversquirl avatar soldev69 avatar twistedzero avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sodium-fabric's Issues

Names with black shade [1.16.1]

Expected Behavior

Nicknames and names of armorstands must have their own natural colors

Actual Behavior

Nicknames and names of armorstands have black shade

Reproduction Steps

  1. Summon armorstand with colored name or go to MP and see to any players

Attachments

image

System Information

  • Java Version: Java 8-251 [64bit]
  • CPU: AMD Ryzen 7 3750H
  • GPU: NVidia RTX2060M

Adding Dynamic Lights

Is your feature request related to a problem? Please describe.
No, it's just a nice and sometimes time-saving feature.

Describe the solution you'd like
Be able to, with a torch or any similar item, emit light without placing the torch or the similar item.

Describe alternatives you've considered
OptiFine, it's the only project that has this feature.

Additional context
None.

Missing vanilla graphics settings

Expected Behavior

Expected all vanilla graphics settings to be available in Sodium.

Actual Behavior

The following graphics settings are missing:

  • Fullscreen Resolution
  • Distortion Effects
  • FOV Effects
  • Entity Shadows
  • Entity Distance

Reproduction Steps

  1. Open Minecraft with Sodium, Settings > Video Settings...
  2. Open vanilla Minecraft, Settings > Video Settings...
  3. Compare the settings

Attachments

N/A

System Information

  • Java Version: 14.0.1 64bit
  • CPU: i7-1065G7
  • GPU: Mesa Iris Plus Graphics

When breaking a block while looking straight down, breaking animation doesn't show.

Expected Behavior

Block breaking animation should show.

Actual Behavior

Replace this text with what actually happened.
Block breaking animation does not show.

Reproduction Steps

  1. Be using the 0.1.0 snapshot version of Sodium for 1.15.2
  2. Look straight down at a block (second look coord at 90)
  3. Observe that the block breaking animation does not play.

Attachments

VLC was being sucky and I couldn't convert the video to something I could put on here.
Screenshot here is the best I can do.
2020-06-26_14 27 30

System Information

  • Java Version: [fill me in]
  • CPU: i7 9700
  • GPU: Nvidia GTX 1660 ti

Localization/translation

Is your feature request related to a problem? Please describe.
I would like to translate Sodium to my language.

Describe the solution you'd like
Please add the language phrases to en_US.lang, it is currently empty. Also would be nice if existing phrases could be taken from Minecraft resources directly (so - everything but explanations perhaps?).

Describe alternatives you've considered
Crowdin, Transifex, Weblate...

Additional context
N/A


jellysquid3:

Sodium now has support for localization and will make use of existing translations in Minecraft where possible. If you would like to contribute translations, please see the new translation center on OneSky.

Edit 2: the OneSky link is now broken and any language PRs have not yet been accepted Β―\_(ツ)_/Β―


Edit 3: There is now a sustainable unofficial translation project, managed by myself and FlashyReese (Sodium Extra dev). If there is any interest in upstreaming it, we'll gladly transfer the project to Sodium developers.

Translate on Crowdin

Download

GitHub

Armour stands with the Marker tag do not have lighting

Expected Behavior

Marker armour stands should simply have their hitbox and/or fire animation removed.

Actual Behavior

Marker armour stands do the former, but also go completely black.

Reproduction Steps

/summon armor_stand ~ ~ ~ {Marker:1}

Attachments

Vanilla

2020-07-06_14 56 16

Sodium

2020-07-06_15 03 09

System Information

  • Java Version: 1.8.0_51 64bit
  • CPU: 2x Intel(R) Celeron(R) N4000 CPU @ 1.10GHz
  • GPU: Intel(R) UHD Graphics 600

Multiconnect integration - Blocks not rendering with protocol <1.13.2

Expected Behavior

The game world should load correctly (ignoring multiconnect issues with 1.11 and 1.10)

Actual Behavior

No blocks are rendering/loaded when using any protocol version >1.13.2 via multiconnect mod

Reproduction Steps

  1. Install multiconnect mod
  2. Join any server with any protocol version below 1.13.2
  3. No blocks are rendered nor physical.

Mod list

  • Fabric API (v0.14.0 - build 371 - Minecraft 1.16.1 // v0.14.0 - build 317 - Minecraft 1.15.2)
  • Multiconnect (v1.3.3 - Minecraft 1.16.1 // v1.2.9 - Minecraft 1.15.2)
  • Sodium (Latest commits build 06/29/2020 - 1.16.1 // Latest commits build 06/29/2020 - 1.15.2)

HW/SW Details

  • Java Version: jdk-14.0.1
  • CPU: AMD Ryzen 7 3750H with Radeon Vega Mobile Gfx
  • GPU: NVIDIA GeForce GTX 1660 Ti

Probably chunk caching problem

Expected Behavior

The world should render as a normal minecraft playthrough would be

Actual Behavior

When go above y level 60, the game freaks out and display a bunch of random blocks if it's day time, it stops freaking out in night time but water doesnt render

Reproduction Steps

Just make a normal world then go above y level 60

Attachments

2020-07-02_20 27 18
2020-07-02_20 46 27
2020-07-02_20 46 38
2020-07-02_20 47 20
2020-07-02_20 48 23

System Information

  • Java Version: Java 8 with Oracle JDK 1.8.0_251
  • CPU: Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz (4 CPUs), ~1.8GHz
  • GPU: Intel(R) HD Graphics 4000
  • Other mods installed: Lithium, Phosphor

Multiconnect mod support

Multiconnect is basically a client version of the plugin Via Version and if Sodium/Lithium/Phospor is installed the game crashes.

Smooth Lighting has jagged edges in some directions.

Expected Behavior

The light is smooth in all directions.

Actual Behavior

The light is smooth in two parallel directions but jagged in the other two.

Reproduction Steps

  1. Smooth Lighting should be set to Low/High and Brightness should be set to 100 for best visibility.
  2. Create a Superflat world with the following preset: minecraft:bedrock,4*minecraft:white_concrete,4*minecraft:air,4*minecraft:white_concrete;minecraft:desert
  3. Break a hole in the ceiling so that light will shine into the layer of air.
  4. Observe that the edge of the light is jagged in some directions.

Attachments

2020-06-30_20 31 44

System Information

  • Java Version: 1.8.0_222 (64-bit OpenJDK Hotspot)
  • CPU: Ryzen 5 2500u
  • GPU: Vega 8 Integrated Graphics

Structure block bounding boxes

While turning a structure block's bounding box on and off works as expected, breaking the block ought to remove the bounding box but it does not. Logging out and back on again fixes the issue (perhaps so does leaving the area but this I have not tested).

Incorrect shadows

Expected Behavior

Expected should be that the shadows either be darker than normal or just no shadows.
See this screenshot:

javaw_6H9iexObun

Actual Behavior

Sodium-fabric causes the shadows of the trees and around the house to be lighter than the actual normal lighting... This looks very unrealistic :(
Screenshot:

javaw_N7Ve4BOPqH

Reproduction Steps

Build a tree and look at its shadows, generate a vanilla world, and look at those shadows.
This issue is with vanilla generated worlds too. Depending on biome it looks worse or less.

System Information

  • Java Version: 1.8.0_51 64bit
  • CPU: Intel(R) Core(TM) i7-4790K
  • GPU: GeForce GTX 1080

Enabled in the mod:

  • Chunk Renderer: OpenGL 4.6

Incompatible with Connected Textures mod

Expected Behavior

Connected textures mod functions normally.

Actual Behavior

Textures do not connect.

Reproduction Steps

Built sodium on 20w27a via this

Using latest release of CBT from here

  1. Place glass
  2. Observe

System Information

  • Operating System: 5.7.4-arch1-1
  • Java Version: OpenJDK 8 latest AUR build
  • CPU: Intel i7-5600U
  • GPU: Integrated

Additional Context:

I filed an issue in their repo here as I'm not sure which mod is at fault

Entity Distance does not save

Expected Behavior

When altering entity distance you set it to what you want and click apply

Actual Behavior

It just resets to 100% each time

Reproduction Steps

Not exactly causing a crash just what I noticed

  1. Go into settings
  2. Alter entity distance, click apply and leave settings
  3. go back into settings and see 100%

System Information

  • Java Version: [1.8.0_51 64-bit]
  • CPU: [Intel i5 5300 U @2.30GHz]
  • GPU: [Intel HD Graphics 5500]
  • DirectX: [Version 12]
  • RAM: [8 GB]

Internationalization support

More of a "down the road" thing than something that has to happen right now.
If you want, I could throw together a PR for it on the 1.16 branch. Just need some I18n.translate calls...

Placed block texture doesn't render for a moment

Expected Behavior

Block texture appears instantly like in vanilla

Actual Behavior

Block texture appears 100 ms after

Reproduction Steps

  1. Place a block
  2. Dissapoint

Attachments

https://streamable.com/rylnn5 - video

System Information

  • Java Version: 14.01
  • CPU: Core i5 2.4Ghz
  • GPU: Geforce 940m

Also it's more perceptible on the chunk borders

Doors, Lanterns, Flower Pots and possibly some more are too bright

Expected Behavior

Normal Lighting on all Blocks

Actual Behavior

Doors, Lanterns, Flower Pots are too bright (see attachment)

Reproduction Steps

It's most present at higher light levels.
I use phosphor, sodium, fabric api, smooth scrolling and logical zoom on 1.16.1
I removed just sodium and they were all fixed

  1. Place a Redstone Lamp beside a Redstone Repeater
  2. Use a Lever to activate the Redstone Repeater
  3. Nothing happens

Attachments

2020-07-03_18 49 00
2020-07-03_18 49 05
2020-07-03_18 32 50

System Information

First tab is blank

Expected Behavior

Expected the first tab in graphics settings to have a title, such as "General".

Actual Behavior

KuvatΓ΅mmis 2020-06-30 13-13-54

Reproduction Steps

  1. Run Minecraft with Sodium
  2. Open Settings > Video Settings...
  3. Note the first tab

Attachments

Posted above

System Information

  • Java Version: 14.0.1 64bit
  • CPU: i7-1065G7
  • GPU: Mesa Iris Plus Graphics

Incompatibility with OptiFabric

fabric just says that sodium breaks OptiFabric (but I'm pretty sure it can't be fixed since OptiFine and sodium change the renderer).
Thanks for your time making this amazing mod,
have a nice day.

Most options cannot be disabled by "mixin...."

Expected Behavior

If I add mixin.buffers = false to the sodium config, it should disable the buffers mixins.

Actual Behavior

mixin.buffers is not recongized as an option. mixin.buffers.MixinBufferBuilder is however recognized as an option, but trying to disable that does nothing. Applies to most config options, and possibly some in lithium too.

Reproduction Steps

I noticed this when implementing #62. Put mixin.buffers = false in the config options.

Attachments

N/A

System Information

N/A

  • Java Version: [fill me in]
    N/A

[Crash] Changing render distance in-world sometimes crash

java.lang.ArrayIndexOutOfBoundsException
at Not Enough Crashes deobfuscated stack trace.(1.15.2+build.3)
at me.jellysquid.mods.sodium.client.render.chunk.ChunkStatusTracker.areChunksAvailable(ChunkStatusTracker.java:23)
at me.jellysquid.mods.sodium.client.render.chunk.ChunkGraph.calculateVisible(ChunkGraph.java:102)
at me.jellysquid.mods.sodium.client.render.chunk.ChunkRenderer.update(ChunkRenderer.java:227)
at net.minecraft.client.render.WorldRenderer.setupTerrain(WorldRenderer:3056)
at net.minecraft.client.render.WorldRenderer.render(WorldRenderer:1089)
at net.minecraft.client.render.GameRenderer.renderWorld(GameRenderer:718)
at net.minecraft.client.render.GameRenderer.render(GameRenderer:543)
at net.minecraft.client.MinecraftClient.render(MinecraftClient:989)
at net.minecraft.client.MinecraftClient.run(MinecraftClient:619)
at net.minecraft.client.main.Main.main(Main:204)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:567)
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193)
at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)

Sodium 0.1
Fabric 0.7.6
Minecraft 1.15.2

Sodium incompatible with WorldEdit?

Hello, I am using Sodium v0.1.0-SNAPSHOT on a 1.15.2 Paper (v318) server with AsyncWorldEdit 3.6.20.

When I set blocks, modify the world, and do whatever some parts of chunks don't update & some entire chunks don't update at all.

Selecting grass on the server and then executing //set glass yields the following result:

2020-05-27_19 44 48

If you log out and back in everything is normal (you can see the glass perfectly fine).
If it were to be possible to make Sodium compatible with mods & plugins like WorldEdit that would be amazing!

Marker armour stands in blocks do not display lighting correctly

Expected Behavior

2020-07-08_20 52 52

Actual Behavior

2020-07-08_20 45 28

Reproduction Steps

setblock ~ ~ ~ stone
summon armor_stand ~ ~ ~ {Marker:1,Fire:400}

Related

#60 - Armour stands with the Marker tag do not have lighting

System Information

  • Java Version: 1.8.0_51 64bit
  • CPU: 2x Intel(R) Celeron(R) N4000 CPU @ 1.10GHz
  • GPU: Intel(R) UHD Graphics 600

Compiling with JDK 9+ crashes on JRE 8

The method signature of ByteBuffer#flip changed in Java 9, causing code compiled with a newer JDK to crash when used on older runtimes despite the bytecode compatibility level.

Potions not rendering liquid inside bottles

Expected Behavior

Potions show colored fluid inside the glass bottles

Actual Behavior

Potions are being rendered as empty bottles

Attachments

obrazek

System Information

Ryzen 7 2700X
GTX 1660, driver 445.87

Java Version:
OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
-XX:+UnlockExperimentalVMOptions -XX:+UseZGC

Add option to disable fog

Is your feature request related to a problem? Please describe.
No,just a handy feature.
Describe the solution you'd like
an option in the quality tab to disable fog
Describe alternatives you've considered
Carpet mod's fog off feature but due to changes that sodium does to fog it doesn't work.
Additional context
None.

Multi-draw chunk renderer is broken on recent AMD drivers

If you are experiencing this issue, please help us get the problem fixed with AMD's driver team by clicking here and following the listed instructions.

Expected Behavior

The world renders without massive glitches.

Actual Behavior

There are massive graphical glitches.

Reproduction Steps

  1. Load/generate any world.
  2. Set chunk renderer to 'OpenGL 4.6'
  3. Look at the massive glitches

Attachments

Expected behavior. (Made with chunk renderer set to 3.0)

Windows opengl 3 0

Actual behaviour. (Made with chunk renderer set to 4.6)

Windows opengl 4 6

Behaviour with mesa drivers with chunk renderer set to 4.6. (Mirrors expected behavior)

Linux opengl 4 6

System Information

  • Java Version: 14.0.1, AdoptOpenJDK (hotspot)
  • CPU: AMD Ryzen 5 3600 6-Core Processor
  • GPU: AMD Radeon RX 5700 XT
  • Full DxDiag.txt

Inconsistent block entity rendering

This is essentially that occasionally block entities (shulker boxes, chests, player heads, etc) will fail to render in the world. The only indication that they exist is their collision, shadows around them, and the box drawn when they are hovered over. In my experience this has only happened consistently in 2 locations.

  1. A tower in a personal server had 3 shulker boxes that would not ever even if replaced.
  2. On hammerSMP nether roof there is a set of shulker boxes that don't render. This is also not specific to my instance as a fellow Hammer member PapiChase#0837 had it happen to him as well.

Poke#8236 helpfully pointed out this is specifically when a subchunk with no blocks other than block entities is rendered.

For both me and papichase, sodium was compiled against latest commit. My build was compiled and used in java 14. Papichase's build was compiled and run in java 8.

I will include more screenshots and info soon.

Broken beacon emits a beam

Expected Behavior

Beacon beam will disappear after breaking a beacon

Actual Behavior

Beacon beam still present after breaking a beacon

Reproduction Steps

  1. Activate beacon
  2. Break beacon
  3. Beam still there

Attachments

2020-07-07_19 30 58

System Information

  • Java Version: 14.0.1 [64bit]
  • CPU: i5-3570
  • GPU: RX580 with Mesa 20.1.2

Unexpected Colisions

Expected Behavior

Let it go normal

Actual Behavior

Sometimes i get colisions from anything.

Reproduction Steps

Simply i go moving in my wold and i get colissions with the air.

System Information

Spigot Server 1.15.2

  • Java Version: 8 update 251
  • CPU: Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (4 CPUs), ~2.7GHz
  • GPU: NVIDIA GeForce 920MX

Fog occlusion hides chunks incorrectly with blindness effect

Expected Behavior

Chunks within vision should not be culled

Actual Behavior

Having fog occlusion enabled will cause chunks to disappear when the player is very close, but not inside them, while the blindness effect is on the player.

Reproduction Steps

Apply blindness effect, be near a chunk border, have fog occlusion enabled.

Attachments

https://cdn.discordapp.com/attachments/651120262129123330/726131134970462228/2020-06-27_03-05-46-1.mp4

System Information

  • Java Version: AdoptOpenJDK 14
  • CPU: i7 3770
  • GPU: GTX 970

Interesting chunkloading behavior with BungeeCord servers

Expected Behavior

When joining a BungeeCord server and jumping to the sub-server I want to be in, chunks should load in as normal.

Actual Behavior

The only chunks that were loaded were the initial chunk radius around the area I was when I logged in.

Reproduction Steps

  1. Set up a BungeeCord server with at least 1 sub-server
  2. Join the server, then join the sub-server
  3. Marvel at the magic of invisible chunks!

Attachments

2020-06-21_16 24 50

System Information

  • Java Version: AdoptOpenJDK 14.0.1.7
  • CPU: Intel Core i5-8250U @ 1.60GHz
  • GPU: NVIDIA GeForce MX150

Unable to join Servers / Worlds

Reproduction Steps

Basically, whenever I try to join a single-player or multiplayer world (on 1.16.1) I get the loading screen and I believe when it spawns me in so when it's about to show the 3D graphics the game crashes with the crash log below.

Crash Report File

https://gist.github.com/StealWonders/034b1d3b2a61027f42a12924765acfd6

Additional Information

OS: Windows 10 Home
Graphics card: GTX 1080
Java: OpenJDK (OpenJ9) 8.0.242.08 (x64)
Fabric: fabric-loader-0.8.9+build.203-1.16.1
Running: self-built branch 1.16.x/dev (d35cb02)

Layered translucent blocks do not render correctly

Expected Behavior

Water will be visible inside glass stained pipes, commonly used in water elevators

Actual Behavior

Water is not visible through stained glasses, although items can be seen flowing

Reproduction Steps

Make a water tube, doesn't matter if its flowing or a water elevator type.

Attachments

https://cdn.discordapp.com/attachments/389371678859460611/726798724206166066/received_707934516451025.png

System Information

  • Java Version: [Java 8 Update 251]
  • CPU: [Intel Core i5-7200U]
  • GPU: [Intel HD Graphics 620]

Fabric Rendering API (FRAPI) is not supported, causing issues with some mods

The JAR declares that it contains a rendering plugin...

[17:10:40] [main/INFO]: [Indigo] Different rendering plugin detected; not applying Indigo.

However, Sodium does not currently register a renderer, causing mods to crash with a NullPointerException.

java.util.concurrent.CompletionException: java.lang.NullPointerException
	at Not Enough Crashes deobfuscated stack trace.(1.15.2+build.14) ~[?:?]
	at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273) ~[?:1.8.0_242]
	at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280) ~[?:1.8.0_242]
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1606) ~[?:1.8.0_242]
	at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1596) ~[?:1.8.0_242]
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_242]
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) ~[?:1.8.0_242]
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) ~[?:1.8.0_242]
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) ~[?:1.8.0_242]
Caused by: java.lang.NullPointerException
	at net.dblsaiko.hctm.client.render.model.UnbakedWireModel.<init>(UnbakedWireModel.java:102) ~[2660aded-8ccb-49f1-8d34-a98c3def0742.jar:?]
	at net.dblsaiko.rswires.client.RSWiresClient$onInitializeClient$1.apply(RSWiresClient.java:22) ~[rswires-4.0.7-standalone.jar:?]
	at net.dblsaiko.rswires.client.RSWiresClient$onInitializeClient$1.apply(RSWiresClient.java:16) ~[rswires-4.0.7-standalone.jar:?]
	at net.fabricmc.fabric.impl.client.model.ModelLoadingRegistryImpl$LoaderInstance.lambda$new$0(ModelLoadingRegistryImpl.java:66) ~[de705b74-fc81-4d7f-97b0-98efe2a37168.jar:?]
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_242]
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[?:1.8.0_242]
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) ~[?:1.8.0_242]
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) ~[?:1.8.0_242]
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[?:1.8.0_242]
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_242]
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566) ~[?:1.8.0_242]
	at net.fabricmc.fabric.impl.client.model.ModelLoadingRegistryImpl$LoaderInstance.<init>(ModelLoadingRegistryImpl.java:66) ~[de705b74-fc81-4d7f-97b0-98efe2a37168.jar:?]
	at net.fabricmc.fabric.impl.client.model.ModelLoadingRegistryImpl$LoaderInstance.<init>(ModelLoadingRegistryImpl.java:54) ~[de705b74-fc81-4d7f-97b0-98efe2a37168.jar:?]
	at net.fabricmc.fabric.impl.client.model.ModelLoadingRegistryImpl.begin(ModelLoadingRegistryImpl.java:201) ~[de705b74-fc81-4d7f-97b0-98efe2a37168.jar:?]
	at net.minecraft.client.render.model.ModelLoader.handler$zkp000$addModelHook(ModelLoader:656) ~[?:?]
	at net.minecraft.client.render.model.ModelLoader.addModel(ModelLoader) ~[?:?]
	at net.minecraft.client.render.model.ModelLoader.<init>(ModelLoader:190) ~[?:?]
	at net.minecraft.client.render.model.BakedModelManager.prepare(BakedModelManager:50) ~[?:?]
	at net.minecraft.client.render.model.BakedModelManager.prepare(BakedModelManager:18) ~[?:?]
	at net.minecraft.resource.SinglePreparationResourceReloadListener.method_18791(SinglePreparationResourceReloadListener:11) ~[?:?]
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1604) ~[?:1.8.0_242]
	... 5 more

Would it be possible to have a stub implementation of Renderer that throws a more descriptive error when trying to use its methods?

Thanks for developing this amazing mod!

Compact Vertex Format causes clipping issues with waterlogged blocks

Expected Behavior

Normally water doesn't clip through water-logged blocks like stairs.
See this screenshot (vanilla):

javaw_sK2hYAxWhU

Actual Behavior

Sodium-fabric causes these water-logged oak stairs to have water clip through them.
Screenshot:

javaw_Ehk26mlvjf

Reproduction Steps

Build what was done in the screenshots.

System Information

  • Java Version: 1.8.0_51 64bit
  • CPU: Intel(R) Core(TM) i7-4790K
  • GPU: GeForce GTX 1080

Enabled in the mod:

  • Chunk Renderer: OpenGL 4.6

Post to CurseForge

Is your feature request related to a problem? Please describe.
Want to see this mod in CurseForge Minecraft mods section.

Describe the solution you'd like
Post the latest compiled JAR (of Discord channel). The JAR could be marked as alpha and comments could be disabled.

Describe alternatives you've considered
Github Releases, Jenkins, ...

Additional context
Posting it there helps bring awareness to people that this mod even exists, which means more bug reporting and more Patreons!

Optimize the rendering of Structure Void/Air with structure blocks

Hello! I was wondering if it would be within the scope of Sodium to optimize the rendering of structure void/air as I have a world with a ton of structure blocks rending those blocks. And well, my performance was at 15 fps when at a render distance of 7, clouds off, fast graphics, yeah.

I put on lithium, phosphor, and sodium all together and my fps only improved to 20 fps. Even in vanilla, the moment I turn on "show invisible blocks" on structure blocks, my fps just dies lol.

Here's a picture showing the performance dying thanks to Mojang's structure void/air rendering:
image

I hope this can be optimized as it would be immensely helpful!

Wrong color of Potions

Expected Behavior

Potions in Minecraft should have specific colors which makes them easy to be quickly recognized

Actual Behavior

Colors of potions are mismatched (for example Water Breathing should be blue, but it's red and Fire Resistance should be orange, but it's purple)

Attachments

obrazek

System Information

GTX 1660, driver 445.87

Java Version:
OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
-XX:+UnlockExperimentalVMOptions -XX:+UseZGC

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.