I have a question: I play a 1.18.1 game via the ATlauncher. How do I install optifine for this? It's not a regular minecraft install - in fact I dont have a regular minecraft install, so when I try to use the default java installer it complains that I don't have a minecraft launcher set up.
Note that the last comment indicates that you may need to change "optifined.net" to "optifine.net", and don't use the AdFly links (only the mirror, if available, which is a direct link to the Optifine site).
For some reason the performance boost does not work for me
Mods like Sodium are seen as far superior to Optifine these days, which is mainly still used for its features like shaders and resource pack enhancements; I never saw any significant impact on steady-state FPS either when using it with 1.5-1.6, but it did significantly smoothen gameplay (specifically chunk rendering, which continues to be a major cause of lag spikes (garbage collection due to allocating crazy amounts of memory every second is likely a bigger cause these days; they are talking about 1.8 but it has only gotten worse). Even on a computer which gets 1000 FPS at normal settings I only get 80-90 when set to "balanced" (120 limit) due to 500-600+ chunk updates, which is way too many, while also having rendering bugs (chunks failing to render in); Optifine worked to stabilize that and fixed some of the rendering issues (albeit not Vsync giving only 1 chunk update per frame, with a work-around to forcibly increase the updates per frame but not as ideal as properly allotting time to them).
Mods like Sodium are seen as far superior to Optifine these days, which is mainly still used for its features like shaders and resource pack enhancements...
Iris has long allowed for shader use within the Fabric ecosystem, so that's no longer a particular reason to use OptiFine.
As someone who still uses OptiFine (but would recommend to use Fabric/Sodium over it instead, especially in more recent versions), here are the two (or three) reasons I still use OptiFine. And these might be outdated since modern mods can move fast, but they were why I stuck to OptiFine the last time I looked into things, which wasn't terribly long ago.
1. OptiFine allows for raising or lowering the internal rendering resolution within its main shaders selection menu. Neither Sodium nor Iris allow a comparable behavior to my knowledge.
This might be a rarely used feature, but it's wonderful for dealing with aliasing, as it's effectively supersampling if you raise it above 100% (I'd even like to see the maximum value allowed raised from 200% to 400%). Amusingly, it's a better method than OptiFine's own anti-aliasing option in the video settings part of the menu, which I find to be practically broken due to the number of issues (behavioral and performance) it has.
2. Sodium does not acknowledge that OpenGL triple buffering is active. OptiFine does.
This probably isn't too important for vanilla, but if you play with shaders and v-sync, it is. Without it, severe frame rate drops to a fraction of your refresh rate, and for an extended period of time, may occur whenever you can't maintain a frame rate that matches your refresh rate. I've found enabling triple buffering (on both nVidia and AMD) work around this. But Sodium seemingly doesn't acknowledge it's active as these drops still occur. This won't be an issue on VRR-capable displays, but it will otherwise.
Those are the two big ones.
3. Less important, but I like disabling the random rotation the game does for textures. OptiFine has a setting for this. Sodium doesn't.
I have the impression there may be a separate mod within the Fabric ecosystem that might do this third one, but as it's of lesser importance compared to the first two things, I never looked into it.
Something that surprised me recently was how much of a lack of an issue this is sometimes. I was testing Distant Horizons a while back, and allocation rates were much, much higher than normal. At its extreme, I was witnessing an allocation rate that was reaching the amount allocated to the JVM (8 GB, in this example) around every second and a half or two seconds, and thus needing to clear something like 5 GB or 6 GB that often (close to 8 GB dropping to ~2 GB, give or take). Yet, there were no stutters felt or even shown at all.
So it would appear that either not all allocation is equal in how much of a performance impact it is to clear, or the new garbage collector in Java 21 (which I am using) is just that good. Maybe some combination of the two.
Normally in the vanilla game I don't see allocation rates anywhere near that high (they are this high from Distant Horizons I guess), but I'll still see stutters with the vanilla game sometimes (performance mods or not). Usually, they seem related to chunk generation/loading/rendering as opposed to garbage collection though (which does also happen, but it's definitely the main time stutters are a concern for me; it seems rare that it alone causes a stutter, at least one I notice to be disruptive). And Sodium seems to go a further extent towards addressing stutters from that particular cause, but my typical play is with OptiFine for the aforementioned reasons.
Instead, with Distant Horizons, I found I was surprisingly core count limited while it was computing the LODs, which is generally one of the last hardware aspects you need to worry about with this game (but this is a mod). In fact, that may be why the allocation rate was so high; instead of a couple of cores doing high amounts of work, it was basically all of them. When the game is burst loading chunks to a high render distance is another moment I see both high core count utilization and allocation rate.
The allocation rate itself isn't necessarily the problem. That's sometimes just a symptom of "more work is being done/more data is being computed". The problem can arise when the garbage collector can't keep up, but these days, that doesn't always seem to be as much of an issue.
Rollback Post to RevisionRollBack
"'Tis foolishness! If all were so easy, why, none would suffer in this world!"
There are many alternatives, like Sodium (much better performance improvements), Iris (shaders), and many other mods which replicate some feature of Optifine (a quick search reveals like a dozen different zoom mods, same for better grass, snow, etc, which may vary in their exact implementation; I even implemented these in my own mod), which IMO has simply gotten too big for a single person to update it in a reasonable amount of time (they probably have a lot of real life obligations as well by now, given they created Optifine in 2011, 13 years ago; even if they were a teen then they now would be in their mid-20s-early 30s. Back then it was also just an optimization mod with some additional settings, with more and more "extra" features added over time; the 1.6.4 version doesn't have shaders, custom models, etc, just connected textures and a few other things like zoom and better grass/snow from what I can see, all minor changes compared to implementing an entirely different rendering pipeline or all the other customization of models and stuff, and Mojang doesn't care about how their code changes may impact mods since they don't officially support them).
Ok I downloaded the jar file (for 1.20.1 specifically) from Optifine's site (a resource pack I want requires it)...but I can't find instructions for installing it. I had a version of Optifine a looooong time ago...but I haven't used mods in forever....where do I put the jar/how do I install?
Ok I downloaded the jar file (for 1.20.1 specifically) from Optifine's site (a resource pack I want requires it)...but I can't find instructions for installing it. I had a version of Optifine a looooong time ago...but I haven't used mods in forever....where do I put the jar/how do I install?
You double-click to run it like any other program; if the file description doesn't say "Executable Jar File" or it fails to open this means you don't have Java installed on your system (the official launcher has long provided its own runtime so it is no longer needed unless you run other Java apps, which is quite rare for most players outside of mod installers / mod development).
It is possible to use the runtime that the launcher provides to run it though; create a text file and add the following and save it as "install.bat" in the same location as the Optifine jar (note that the paths and filenames may differ from those shown here, in fact, I'm certain since nowadays there are many different runtimes for Java 8, 16, 17, etc, depending on the game version you've played, I'm not sure what the minimum Java version the Optifine installer needs but Java 8 should work. I also used included "pause" so you can see the error message if anything went wrong, otherwise it immediately closes the command prompt window):
"Unable to start Java.Error details: %1 is not a valid Win32 application.Filename on disk: OptiFine_1.20.1_HD_U_I6.jarPath: C:\Users\Cyberpowerpc\AppData\Roaming\.minecraft\OptiFine_1.20.1_HD_U_I6.jarExists: File"
Error I got in the launcher. Have not tried the text file method yet. I have no idea what I'm doing, lol. I only barely passed Java in college over 20 years ago...and that was barebones beginner Java with outside help, haha.
...Did I maybe put it in the wrong spot? It's in AppData\Roaming\.minecraft right now...should it be in the actual Minecraft folder from CurseForge instead?
You need to replace "Optifine.jar" with the actual name of the file, "OptiFine_1.20.1_HD_U_I6.jar" based on the information you gave. It must also be in the same location as the batch file, otherwise, I noted that the path to the Java runtime might also not be correct for your system (I don't play newer versions so the launcher never would have downloaded any JREs for them) but given the error it sounds like it is set up at that location (else you'd have gotten an error about "java.exe" being missing).
Check your key configuration
It could be that it's bound another key to your sprint key if I remember rightly.
Signature removed by popular demand.
I have a question: I play a 1.18.1 game via the ATlauncher. How do I install optifine for this? It's not a regular minecraft install - in fact I dont have a regular minecraft install, so when I try to use the default java installer it complains that I don't have a minecraft launcher set up.
Please advice
With the AT Launcher, create a new Instance, select Forge 39.1.0 and start this profile once
Then go to the mods-folder and put OptiFine HD U H6 into it
>> Link to Curseforge <<
Where is versions 1.6.4 and lower in optifine.net/downloads
You can find all older versions in this thread:
https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/1286605-b1-4-1-9-optifine-history
Note that the last comment indicates that you may need to change "optifined.net" to "optifine.net", and don't use the AdFly links (only the mirror, if available, which is a direct link to the Optifine site).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
For some reason the performance boost does not work for me
Mods like Sodium are seen as far superior to Optifine these days, which is mainly still used for its features like shaders and resource pack enhancements; I never saw any significant impact on steady-state FPS either when using it with 1.5-1.6, but it did significantly smoothen gameplay (specifically chunk rendering, which continues to be a major cause of lag spikes (garbage collection due to allocating crazy amounts of memory every second is likely a bigger cause these days; they are talking about 1.8 but it has only gotten worse). Even on a computer which gets 1000 FPS at normal settings I only get 80-90 when set to "balanced" (120 limit) due to 500-600+ chunk updates, which is way too many, while also having rendering bugs (chunks failing to render in); Optifine worked to stabilize that and fixed some of the rendering issues (albeit not Vsync giving only 1 chunk update per frame, with a work-around to forcibly increase the updates per frame but not as ideal as properly allotting time to them).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
Iris has long allowed for shader use within the Fabric ecosystem, so that's no longer a particular reason to use OptiFine.
As someone who still uses OptiFine (but would recommend to use Fabric/Sodium over it instead, especially in more recent versions), here are the two (or three) reasons I still use OptiFine. And these might be outdated since modern mods can move fast, but they were why I stuck to OptiFine the last time I looked into things, which wasn't terribly long ago.
1. OptiFine allows for raising or lowering the internal rendering resolution within its main shaders selection menu. Neither Sodium nor Iris allow a comparable behavior to my knowledge.
This might be a rarely used feature, but it's wonderful for dealing with aliasing, as it's effectively supersampling if you raise it above 100% (I'd even like to see the maximum value allowed raised from 200% to 400%). Amusingly, it's a better method than OptiFine's own anti-aliasing option in the video settings part of the menu, which I find to be practically broken due to the number of issues (behavioral and performance) it has.
2. Sodium does not acknowledge that OpenGL triple buffering is active. OptiFine does.
This probably isn't too important for vanilla, but if you play with shaders and v-sync, it is. Without it, severe frame rate drops to a fraction of your refresh rate, and for an extended period of time, may occur whenever you can't maintain a frame rate that matches your refresh rate. I've found enabling triple buffering (on both nVidia and AMD) work around this. But Sodium seemingly doesn't acknowledge it's active as these drops still occur. This won't be an issue on VRR-capable displays, but it will otherwise.
Those are the two big ones.
3. Less important, but I like disabling the random rotation the game does for textures. OptiFine has a setting for this. Sodium doesn't.
I have the impression there may be a separate mod within the Fabric ecosystem that might do this third one, but as it's of lesser importance compared to the first two things, I never looked into it.
Something that surprised me recently was how much of a lack of an issue this is sometimes. I was testing Distant Horizons a while back, and allocation rates were much, much higher than normal. At its extreme, I was witnessing an allocation rate that was reaching the amount allocated to the JVM (8 GB, in this example) around every second and a half or two seconds, and thus needing to clear something like 5 GB or 6 GB that often (close to 8 GB dropping to ~2 GB, give or take). Yet, there were no stutters felt or even shown at all.
So it would appear that either not all allocation is equal in how much of a performance impact it is to clear, or the new garbage collector in Java 21 (which I am using) is just that good. Maybe some combination of the two.
Normally in the vanilla game I don't see allocation rates anywhere near that high (they are this high from Distant Horizons I guess), but I'll still see stutters with the vanilla game sometimes (performance mods or not). Usually, they seem related to chunk generation/loading/rendering as opposed to garbage collection though (which does also happen, but it's definitely the main time stutters are a concern for me; it seems rare that it alone causes a stutter, at least one I notice to be disruptive). And Sodium seems to go a further extent towards addressing stutters from that particular cause, but my typical play is with OptiFine for the aforementioned reasons.
Instead, with Distant Horizons, I found I was surprisingly core count limited while it was computing the LODs, which is generally one of the last hardware aspects you need to worry about with this game (but this is a mod). In fact, that may be why the allocation rate was so high; instead of a couple of cores doing high amounts of work, it was basically all of them. When the game is burst loading chunks to a high render distance is another moment I see both high core count utilization and allocation rate.
The allocation rate itself isn't necessarily the problem. That's sometimes just a symptom of "more work is being done/more data is being computed". The problem can arise when the garbage collector can't keep up, but these days, that doesn't always seem to be as much of an issue.
"'Tis foolishness! If all were so easy, why, none would suffer in this world!"
When arrive Optifine for 1.21 ?
There are many alternatives, like Sodium (much better performance improvements), Iris (shaders), and many other mods which replicate some feature of Optifine (a quick search reveals like a dozen different zoom mods, same for better grass, snow, etc, which may vary in their exact implementation; I even implemented these in my own mod), which IMO has simply gotten too big for a single person to update it in a reasonable amount of time (they probably have a lot of real life obligations as well by now, given they created Optifine in 2011, 13 years ago; even if they were a teen then they now would be in their mid-20s-early 30s. Back then it was also just an optimization mod with some additional settings, with more and more "extra" features added over time; the 1.6.4 version doesn't have shaders, custom models, etc, just connected textures and a few other things like zoom and better grass/snow from what I can see, all minor changes compared to implementing an entirely different rendering pipeline or all the other customization of models and stuff, and Mojang doesn't care about how their code changes may impact mods since they don't officially support them).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
Ok I downloaded the jar file (for 1.20.1 specifically) from Optifine's site (a resource pack I want requires it)...but I can't find instructions for installing it. I had a version of Optifine a looooong time ago...but I haven't used mods in forever....where do I put the jar/how do I install?
I am the same VioletWhirlwind as my old account. For some reason, the site made me a new account, despite the fact that I had one already. *shrug*
You double-click to run it like any other program; if the file description doesn't say "Executable Jar File" or it fails to open this means you don't have Java installed on your system (the official launcher has long provided its own runtime so it is no longer needed unless you run other Java apps, which is quite rare for most players outside of mod installers / mod development).
It is possible to use the runtime that the launcher provides to run it though; create a text file and add the following and save it as "install.bat" in the same location as the Optifine jar (note that the paths and filenames may differ from those shown here, in fact, I'm certain since nowadays there are many different runtimes for Java 8, 16, 17, etc, depending on the game version you've played, I'm not sure what the minimum Java version the Optifine installer needs but Java 8 should work. I also used included "pause" so you can see the error message if anything went wrong, otherwise it immediately closes the command prompt window):
"C:\Program Files (x86)\Minecraft\runtime\jre-x64\bin\java.exe" -jar Optifine.jar
pause
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
"Unable to start Java.Error details: %1 is not a valid Win32 application.Filename on disk: OptiFine_1.20.1_HD_U_I6.jarPath: C:\Users\Cyberpowerpc\AppData\Roaming\.minecraft\OptiFine_1.20.1_HD_U_I6.jarExists: File"
Error I got in the launcher. Have not tried the text file method yet. I have no idea what I'm doing, lol. I only barely passed Java in college over 20 years ago...and that was barebones beginner Java with outside help, haha.
...Did I maybe put it in the wrong spot? It's in AppData\Roaming\.minecraft right now...should it be in the actual Minecraft folder from CurseForge instead?
EDIT:
After making the .bat file I get the error:
C:\Users\Cyberpowerpc\AppData\Roaming\.minecraft>"C:\Program Files (x86)\Minecraft\runtime\jre-x64\bin\java.exe" -jar Optifine.jar
Error: Unable to access jarfile Optifine.jar
C:\Users\Cyberpowerpc\AppData\Roaming\.minecraft>pause
I am the same VioletWhirlwind as my old account. For some reason, the site made me a new account, despite the fact that I had one already. *shrug*
You need to replace "Optifine.jar" with the actual name of the file, "OptiFine_1.20.1_HD_U_I6.jar" based on the information you gave. It must also be in the same location as the batch file, otherwise, I noted that the path to the Java runtime might also not be correct for your system (I don't play newer versions so the launcher never would have downloaded any JREs for them) but given the error it sounds like it is set up at that location (else you'd have gotten an error about "java.exe" being missing).
TheMasterCaver's First World - possibly the most caved-out world in Minecraft history - includes world download.
TheMasterCaver's World - my own version of Minecraft largely based on my views of how the game should have evolved since 1.6.4.
Why do I still play in 1.6.4?
Derp. How did I not see that! XDXD; It worked that time, thank you!
EDIT: Yay, the resource pack worked, too!
I am the same VioletWhirlwind as my old account. For some reason, the site made me a new account, despite the fact that I had one already. *shrug*