This mod gives an increased and smoother framerate when playing single player, and should also make memory usage grow slower. The typical FPS gain is at least 10FPS.
If you want to use this with BetterLight, install this first, then run the BetterLight patcher.
This has no effect on SMP performance.
Download: http://mod.ifies.com/f/110103_fastrender_v4.zip Instructions:
1) Locate your minecraft.jar file. On Windows, it's in %APPDATA%/.minecraft/bin
2) Create a backup of minecraft.jar
3) Open minecraft.jar in an archive editor (WinRar/7-Zip/etc)
4) Delete the META-INF folder.
5) Copy the files from the downloaded zip file into the jar file (overwriting f.class and bz.class).
6) Run Minecraft and test!
Technical: There's a chunk waiting ArrayList that limits the rate at which chunks are prepared for rendering. The list usually has 3000-5000 elements. In vanilla Minecraft, the entire list is sorted by distance from the player every frame, which has a minimal cost of two complete array copies on top of the time it takes to sort. Sorting this array is a large contributor to frame delays when panning the view. For each frame, usually the 3 nearest chunks are prepared for rendering. It is trivial to select these 3 chunks in a single pass through the array and remove them in another pass.
Changelog:
v4 2011.01.03: Fix performance regression caused by unsorted near chunks.
v3 2011.01.02: Fix accidentally bug in unrelated bit of code that could cause chunks to not update.
v2 2011.01.01: Force nearby chunks to always render. Vote for this on GetSatisfaction!
If you find this mod helpful, a donation towards further optimizations and my college expenses would be appreciated.
1) Backup your saves
2) Open Minecraft.jar with winrar
3) Drag and drop those two files into Minecraft.jar (you will not be prompted about overwriting anything)
4) Reinstall any texture packs with patcher if needed.
5) Open minecraft and enjoy.
If you crash delete minecraft and repeat the above steps without messing up like a massive idiot.
Thanks!
This really boosted Minecraft for me thankyouthankyouthankyou.
i can see the rise in performance when i installed this mod, but i am now noticing more places where you get the "still rendering" thing and you can see threw the into tunnels. Any fix?
i can see the rise in performance when i installed this mod, but i am now noticing more places where you get the "still rendering" thing and you can see threw the into tunnels. Any fix?
Technically, I'm doing things the same way the original code did. Realistically, it's a bug.
I just noticed that if you get the still rendering, just switch your graphics really fast. It fixes it. So, what does V2 mean, does it fix that bug?
Yes, that's what I fixed in V2.
Nope, not fixed. Not completely at least. I still get it, it's just more rare.
EDIT: Scratch that, V2 made no difference. Either that, or it just appears much more common near the bottom of the map.
EDIT2: I'm sorry, while it seems like a good mod, it's too much trouble to use, and I honestly don't notice a real difference. Maybe if you can somehow optimize it more, and make it so it doesn't bug out, then it'd be nice.
I am running Ubuntu and I get this output when running Minecraft:
mridlen@trogdor:~/Downloads$ java -cp Minecraft.jar net.minecraft.LauncherFrame
Username is 'mridlen'
28
Setting user: mridlen, 1019265028574339136
Loading: net.java.games.input.LinuxEnvironmentPlugin
Failed to open device (/dev/input/event7): Failed to open device /dev/input/event7 (13)
Failed to open device (/dev/input/event6): Failed to open device /dev/input/event6 (13)
Failed to open device (/dev/input/event5): Failed to open device /dev/input/event5 (13)
Failed to open device (/dev/input/event4): Failed to open device /dev/input/event4 (13)
Failed to open device (/dev/input/event3): Failed to open device /dev/input/event3 (13)
Failed to open device (/dev/input/event2): Failed to open device /dev/input/event2 (13)
Failed to open device (/dev/input/event1): Failed to open device /dev/input/event1 (13)
Failed to open device (/dev/input/event0): Failed to open device /dev/input/event0 (13)
Linux plugin claims to have found 0 controllers
Starting up SoundSystem...
Initializing LWJGL OpenAL
(The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org)
OpenAL initialized.
Exception in thread "Minecraft main thread" java.lang.NoClassDefFoundError: kk
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:296)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at net.minecraft.client.Minecraft.a(SourceFile:342)
at net.minecraft.client.Minecraft.run(SourceFile:641)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: kk
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 16 more
This really works well, for the first time i can play on my netbook without lag, altho i did notice that the game doesnt use your skin attached to your minecraft account. is this usual or is it just me?
edit: it was just me. this mod is great :3
Rollback Post to RevisionRollBack
~life is to short to worry about the little things~
I am running Ubuntu and I get this output when running Minecraft:
mridlen@trogdor:~/Downloads$ java -cp Minecraft.jar net.minecraft.LauncherFrame
Exception in thread "Minecraft main thread" java.lang.NoClassDefFoundError: kk
Then it just sits there indefinitely. Any ideas?
Try deleting ~/.minecraft/bin to force the launcher to redownload the minecraft binaries, then re-applying the mod.
Also, you can launch with just "java -jar Minecraft.jar".
"JUST WHAT I NEEDED!!!"
but really, major Kudos to you. I just wish this worked with better light + grass. maybe you can work with Mr. messiah to make a compatible version. whatever, this is worth not having those mods.
Here you are, the most expensive sandvich known to man.
It's great man, but now for an inevitably stupid question, will this crash mc when it updates?
It won't work with a version of Minecraft other than 1.1_02, but the only difference is framerate -- it doesn't affect any files or anything.
Quote from fact_fiction_rabbit »
This is really cool, but would it ever work with Better Light? Even if the author wanted to merge these two mods?
It would be quite easy to make this work with Better Light, but Better Light modifies the same function right now. I fixed the slowness of the function, but Better Light just runs the function only once every 5 frames (I think).
This mod gives an increased and smoother framerate when playing single player, and should also make memory usage grow slower. The typical FPS gain is at least 10FPS.
If you want to use this with BetterLight, install this first, then run the BetterLight patcher.
This has no effect on SMP performance.
Download: http://mod.ifies.com/f/110103_fastrender_v4.zip
Instructions:
1) Locate your minecraft.jar file. On Windows, it's in %APPDATA%/.minecraft/bin
2) Create a backup of minecraft.jar
3) Open minecraft.jar in an archive editor (WinRar/7-Zip/etc)
4) Delete the META-INF folder.
5) Copy the files from the downloaded zip file into the jar file (overwriting f.class and bz.class).
6) Run Minecraft and test!
Technical: There's a chunk waiting ArrayList that limits the rate at which chunks are prepared for rendering. The list usually has 3000-5000 elements. In vanilla Minecraft, the entire list is sorted by distance from the player every frame, which has a minimal cost of two complete array copies on top of the time it takes to sort. Sorting this array is a large contributor to frame delays when panning the view. For each frame, usually the 3 nearest chunks are prepared for rendering. It is trivial to select these 3 chunks in a single pass through the array and remove them in another pass.
Changelog:
v4 2011.01.03: Fix performance regression caused by unsorted near chunks.
v3 2011.01.02: Fix accidentally bug in unrelated bit of code that could cause chunks to not update.
v2 2011.01.01: Force nearby chunks to always render.
Vote for this on GetSatisfaction!
If you find this mod helpful, a donation towards further optimizations and my college expenses would be appreciated.
1) Backup your saves
2) Open Minecraft.jar with winrar
3) Drag and drop those two files into Minecraft.jar (you will not be prompted about overwriting anything)
4) Reinstall any texture packs with patcher if needed.
5) Open minecraft and enjoy.
If you crash delete minecraft and repeat the above steps without messing up like a massive idiot.
Thanks!
This really boosted Minecraft for me thankyouthankyouthankyou.
My pro troll will still work. :v:
This should be a sticky just because its such a helpful mod
Zombiecraft Maps!
Technically, I'm doing things the same way the original code did. Realistically, it's a bug.
v2: http://mod.ifies.com/f/110102_fastrender_v2.zip
Yes, that's what I fixed in V2.
Nope, not fixed. Not completely at least. I still get it, it's just more rare.
EDIT: Scratch that, V2 made no difference. Either that, or it just appears much more common near the bottom of the map.
EDIT2: I'm sorry, while it seems like a good mod, it's too much trouble to use, and I honestly don't notice a real difference. Maybe if you can somehow optimize it more, and make it so it doesn't bug out, then it'd be nice.
To clarify: When mining near bedrock, sometimes you can see through the map?
http://www.minecraftforum.net/topic/821632-100-australian-bukkit-minecraft-server/
Then it just sits there indefinitely. Any ideas?
edit: it was just me. this mod is great :3
~life is to short to worry about the little things~
Try deleting ~/.minecraft/bin to force the launcher to redownload the minecraft binaries, then re-applying the mod.
Also, you can launch with just "java -jar Minecraft.jar".
but really, major Kudos to you. I just wish this worked with better light + grass. maybe you can work with Mr. messiah to make a compatible version. whatever, this is worth not having those mods.
Here you are, the most expensive sandvich known to man.
Member of the official ctm pillar club
It won't work with a version of Minecraft other than 1.1_02, but the only difference is framerate -- it doesn't affect any files or anything.
It would be quite easy to make this work with Better Light, but Better Light modifies the same function right now. I fixed the slowness of the function, but Better Light just runs the function only once every 5 frames (I think).