Well I have now tried without any loader (OF C4 and Forge 2387), just using the mod folder, this results in a Minecraft that starts frozen at a black screen.
The thing that irritates me about the log above are all those Binary incompatibilities as If I have used the wrong versions. I even let Minecraft reload the 1.12 just to be sure.
OK, got it working now, by deleting minecraft and restarting from a clean install. I hvae to use the mod folder rather than the Magic Launcher Mod Loader, but it works.
So how is this compatible with Minecraft Forge when it creates a separate version of minecraft? That would mean its specifically not compatible with forge as the only way to have it is to run this new version of forge that optifine creates.
So how is this compatible with Minecraft Forge when it creates a separate version of minecraft? That would mean its specifically not compatible with forge as the only way to have it is to run this new version of forge that optifine creates.
just put the optifine.jar file in your mods folder without running it, it still works that way. you don't need to install optifine using it's own installer if you have forge already.
I would really like to see some good documentation on the shader system. I would love to write my own shaders for the game and I'm intimately familiar with the concept of a deferred renderer. Every time I try to get started I spend days searching for information on just the basic things about the shader system in OptiFine or the previous incarnations of it only to find a lack of any usable documentation.
I know of the shaders.txt which at least mentions what attributes and uniforms are available and what specific shader programs they are available in. Nowhere have I seen one of the most basic pieces of information listed: vertex elements. I can guess what the element name the position, texture coordiantes, colors, normals,, binormals, tangents or even how many of each are used all day long but it's just guessing which is error prone. Normally in cases where documentation is lacking I would just dig into the source code and look for myself at how things are done to derive this information but as far as I've seen the source for OptiFine or it's shader module isn't available to be viewed/downloaded.
What would be nice, frankly mandatory to see in the documentation. A basic outline of the rendering process including what order objects are renderered, what uniforms are passed in before they are rendered, what render states are set and what is in the vertex data. The data formats that should be output and I'm not talking pixel formats but things like whether surface normals are to be written out in modelview space, depth into linear view space or post projection space. Is there a composite pass before layering on transparent/translucent objects to combine lighting data with geometric and color data. Should it's vertices be shifted into the far plane to exploit depth buffer states and reduce overdraw or left at the near plane because the states aren't set up to handle that optimization?
I really wouldn't mind going through the code and writing up some documentation on this myself. Having worked with a lot of code that was poorly documented, I've gotten pretty good at it. Looking at other's shaders for examples just doesn't cut it when I have no idea if they are leaving things out that aren't important to them but may be to me.
What do you mean? It's exactly what it says, allow players to make extensions for optifine.
OptiFine can't just be "extended".
First, it is highly tuned and optimized, some of the things that it does are borderline crazy. If you are not very careful it is easy to break a lot of things. This is like asking a Formula 1 car to be comfortable and extendable. It could be done, but then it would not be fast and stable.
Second, OptiFine is built against obfuscated code and there is no MCP support to deobfuscate and obfuscate code so that it is compatible with OptiFine. On top of this some OptiFine versions use a non-standard deobfuscated base (the official MCP update is sometimes too slow and then I make custom MCP updates). So writing a code which is compatible with OF is a challenge by itself.
Instead of extendable, OptiFine is highly configurable with user options and configuration files. A lot of work and testing goes into making sure that all possible combinations of configurations and options work properly together. This is supported as much as possible across all MC versions from 1.7.x to 1.12.
Not to mention Forge and general mod compatibility. This becomes very complex when the mods expect everything to work like in vanilla and in the same time OF reorganizes the rendering engine to work in several different ways.
Therefore the question what specific extensions do you imagine. Maybe some of them are already existing or maybe they could be added as configuration files.
I would really like to see some good documentation on the shader system. I would love to write my own shaders for the game and I'm intimately familiar with the concept of a deferred renderer. Every time I try to get started I spend days searching for information on just the basic things about the shader system in OptiFine or the previous incarnations of it only to find a lack of any usable documentation.
I know of the shaders.txt which at least mentions what attributes and uniforms are available and what specific shader programs they are available in. Nowhere have I seen one of the most basic pieces of information listed: vertex elements. I can guess what the element name the position, texture coordiantes, colors, normals,, binormals, tangents or even how many of each are used all day long but it's just guessing which is error prone. Normally in cases where documentation is lacking I would just dig into the source code and look for myself at how things are done to derive this information but as far as I've seen the source for OptiFine or it's shader module isn't available to be viewed/downloaded.
What would be nice, frankly mandatory to see in the documentation. A basic outline of the rendering process including what order objects are renderered, what uniforms are passed in before they are rendered, what render states are set and what is in the vertex data. The data formats that should be output and I'm not talking pixel formats but things like whether surface normals are to be written out in modelview space, depth into linear view space or post projection space. Is there a composite pass before layering on transparent/translucent objects to combine lighting data with geometric and color data. Should it's vertices be shifted into the far plane to exploit depth buffer states and reduce overdraw or left at the near plane because the states aren't set up to handle that optimization?
I really wouldn't mind going through the code and writing up some documentation on this myself. Having worked with a lot of code that was poorly documented, I've gotten pretty good at it. Looking at other's shaders for examples just doesn't cut it when I have no idea if they are leaving things out that aren't important to them but may be to me.
You should join ShaderLabs on Discord, most MC shader authors are active there, invitation in PM.
I've been playing through older versions of Minecraft recently, and I wanted to install Optifine in 1.0 through the official launcher. I tried following your steps in installation (rename .jar and .json to 1.0 Opti, change id to 1.0 Opti, copy paste .zip files into .jar file, delete META-INF), and while the launcher does recognize the jar file and it does run up, Optifine's nowhere to be seen. None of the custom settings are available (or the zoom feature), and I still get frame issues. I was using OptiFine_1.0.0_HD_MT_D3 if this helps.
-Piano
Rollback Post to RevisionRollBack
Owner of the account "Piano", Ex-Player Council Member for Hypixel.
I have noticed that connected glass pane textures appear to flipped in version 1.11.2 and 1.12 (at least) when viewing from certain directions. The texture flip only occurs when viewing glass that is to the South or East of the player location. The connected textures of glass viewed to the North or West appears normal. Also, connected textures for glass blocks (versus panes) work normally in all directions. What is interesting about this is that my texture pack uses the exact same images/tiles for both panes and blocks, which seems to imply that it is something that Optifine is doing.
The CTM properties are as follows (Note: 102 is glass panes, 20 is glass blocks)
matchBlocks=102
tiles=0-47
matchBlocks=20
tiles=0-46
I did test panes with 0-46 tiles, with no change. I have included an image showing two 3x3 glass windows, looking northeast, and you can see that the window to the North is normal, but the window to the East has textures flipped.
Is this an Optifine issue, or do I need to do something with the CTM properties to fix this? Thanks!
You should join ShaderLabs on Discord, most MC shader authors are active there, invitation in PM.
That's nice and all but I don't want to have to sit and wait for Bob that knows this system or Tim that knows that system to answer simple questions about the render process that should be outlined. I also have no guarantee that they even know what it is they are working with, that they aren't just doing things a certain way because "that's how it's done" nonsense. The only reason I even know what I'm doing with Direct3D or OpenGL is because the documentation does a damn good job at explaining how it all works. I started working with deferred renderers way back when shader model 2.0 was the current spec. Know just how varied they can be having written multiple articles on game development websites noting tradeoffs between different choices one can make with such a render system, essentially "how to design deferred renderer" type of stuff.
Didn't want to go with plan b, a debugger to deconstruct the process but it's starting to look like my only choice when the people managing that code have replies like this.
so my friend tried updating to OF 1.12 and 90% of the time when they start it up minecraft produces no sound however when they launch Vanilla 1.12 or OF 1.11.2 the sound works 100% of the time, they've tried all of the updates for OF 1.12, could it be an issue with OF? if not what could be the problem? btw they're only running Optifine 1.12 (C2-C4).
Well I have now tried without any loader (OF C4 and Forge 2387), just using the mod folder, this results in a Minecraft that starts frozen at a black screen.
The thing that irritates me about the log above are all those Binary incompatibilities as If I have used the wrong versions. I even let Minecraft reload the 1.12 just to be sure.
Forge 2387 is not the latest update, that could be why you are getting a wrong version incompatability.
The latest Forge is 2407, with Optifine 1.12 HD U C4
The changelog specifically states that 1.12 HD U C4 is made for 2387, which should be expected as that is the stable version.
2407 is experimental and if anything it should break, not fix it. I tried it though, but doeasn't make a difference.
Then I'm sorry I dont know what else to suggest. Good luck
OK, got it working now, by deleting minecraft and restarting from a clean install. I hvae to use the mod folder rather than the Magic Launcher Mod Loader, but it works.
Since I install this mod, I found many typing errors in Korean.
Who's translated?
https://github.com/sp614x/optifine/pull/722
You can edit ko_kr.lang to fix these typing errors then create a Pull Request on github.
So how is this compatible with Minecraft Forge when it creates a separate version of minecraft? That would mean its specifically not compatible with forge as the only way to have it is to run this new version of forge that optifine creates.
just put the optifine.jar file in your mods folder without running it, it still works that way. you don't need to install optifine using it's own installer if you have forge already.
Check out The Valley! My own Server and Modpacks!
Forum: http://thevalley.guildtag.com/
Discord: https://discordapp.com/invite/mx9GCDQ
The Valley 1.7.10 is available on Technic here:The Valley 1.7.10 -> Curseforge External link HERE
The Valley 1.12.2 is available on Curseforge here: The Valley 1.12.2
The Valley 1.20.2 is available at this IP: thevalley.noip.me:25567 (NOW BEDROCK COMPATIBLE!)
What is "extension support"?
I would really like to see some good documentation on the shader system. I would love to write my own shaders for the game and I'm intimately familiar with the concept of a deferred renderer. Every time I try to get started I spend days searching for information on just the basic things about the shader system in OptiFine or the previous incarnations of it only to find a lack of any usable documentation.
I know of the shaders.txt which at least mentions what attributes and uniforms are available and what specific shader programs they are available in. Nowhere have I seen one of the most basic pieces of information listed: vertex elements. I can guess what the element name the position, texture coordiantes, colors, normals,, binormals, tangents or even how many of each are used all day long but it's just guessing which is error prone. Normally in cases where documentation is lacking I would just dig into the source code and look for myself at how things are done to derive this information but as far as I've seen the source for OptiFine or it's shader module isn't available to be viewed/downloaded.
What would be nice, frankly mandatory to see in the documentation. A basic outline of the rendering process including what order objects are renderered, what uniforms are passed in before they are rendered, what render states are set and what is in the vertex data. The data formats that should be output and I'm not talking pixel formats but things like whether surface normals are to be written out in modelview space, depth into linear view space or post projection space. Is there a composite pass before layering on transparent/translucent objects to combine lighting data with geometric and color data. Should it's vertices be shifted into the far plane to exploit depth buffer states and reduce overdraw or left at the near plane because the states aren't set up to handle that optimization?
I really wouldn't mind going through the code and writing up some documentation on this myself. Having worked with a lot of code that was poorly documented, I've gotten pretty good at it. Looking at other's shaders for examples just doesn't cut it when I have no idea if they are leaving things out that aren't important to them but may be to me.
What KIND OF extensions you're having in mind?
You can already write shaders, is that not enough?
OptiFine can't just be "extended".
First, it is highly tuned and optimized, some of the things that it does are borderline crazy. If you are not very careful it is easy to break a lot of things. This is like asking a Formula 1 car to be comfortable and extendable. It could be done, but then it would not be fast and stable.
Second, OptiFine is built against obfuscated code and there is no MCP support to deobfuscate and obfuscate code so that it is compatible with OptiFine. On top of this some OptiFine versions use a non-standard deobfuscated base (the official MCP update is sometimes too slow and then I make custom MCP updates). So writing a code which is compatible with OF is a challenge by itself.
Instead of extendable, OptiFine is highly configurable with user options and configuration files. A lot of work and testing goes into making sure that all possible combinations of configurations and options work properly together. This is supported as much as possible across all MC versions from 1.7.x to 1.12.
Not to mention Forge and general mod compatibility. This becomes very complex when the mods expect everything to work like in vanilla and in the same time OF reorganizes the rendering engine to work in several different ways.
Therefore the question what specific extensions do you imagine. Maybe some of them are already existing or maybe they could be added as configuration files.
You should join ShaderLabs on Discord, most MC shader authors are active there, invitation in PM.
So please explain what is the point.
I've been playing through older versions of Minecraft recently, and I wanted to install Optifine in 1.0 through the official launcher. I tried following your steps in installation (rename .jar and .json to 1.0 Opti, change id to 1.0 Opti, copy paste .zip files into .jar file, delete META-INF), and while the launcher does recognize the jar file and it does run up, Optifine's nowhere to be seen. None of the custom settings are available (or the zoom feature), and I still get frame issues. I was using OptiFine_1.0.0_HD_MT_D3 if this helps.
-Piano
Owner of the account "Piano", Ex-Player Council Member for Hypixel.
So useful! Thanks!!
I have noticed that connected glass pane textures appear to flipped in version 1.11.2 and 1.12 (at least) when viewing from certain directions. The texture flip only occurs when viewing glass that is to the South or East of the player location. The connected textures of glass viewed to the North or West appears normal. Also, connected textures for glass blocks (versus panes) work normally in all directions. What is interesting about this is that my texture pack uses the exact same images/tiles for both panes and blocks, which seems to imply that it is something that Optifine is doing.
The CTM properties are as follows (Note: 102 is glass panes, 20 is glass blocks)
matchBlocks=102
tiles=0-47
matchBlocks=20
tiles=0-46
I did test panes with 0-46 tiles, with no change. I have included an image showing two 3x3 glass windows, looking northeast, and you can see that the window to the North is normal, but the window to the East has textures flipped.
Is this an Optifine issue, or do I need to do something with the CTM properties to fix this? Thanks!
That's nice and all but I don't want to have to sit and wait for Bob that knows this system or Tim that knows that system to answer simple questions about the render process that should be outlined. I also have no guarantee that they even know what it is they are working with, that they aren't just doing things a certain way because "that's how it's done" nonsense. The only reason I even know what I'm doing with Direct3D or OpenGL is because the documentation does a damn good job at explaining how it all works. I started working with deferred renderers way back when shader model 2.0 was the current spec. Know just how varied they can be having written multiple articles on game development websites noting tradeoffs between different choices one can make with such a render system, essentially "how to design deferred renderer" type of stuff.
Didn't want to go with plan b, a debugger to deconstruct the process but it's starting to look like my only choice when the people managing that code have replies like this.
so my friend tried updating to OF 1.12 and 90% of the time when they start it up minecraft produces no sound however when they launch Vanilla 1.12 or OF 1.11.2 the sound works 100% of the time, they've tried all of the updates for OF 1.12, could it be an issue with OF? if not what could be the problem? btw they're only running Optifine 1.12 (C2-C4).