Posted October 7, 201410 yr So I Have created a GUI and I am have the following scaling issues (see The Following Images For explanation) My goal is to have the GUI scale so that its border remains a constant value from each edge of the minecraft window (lets say from the top and bottom edges the GUI will remain some number (x) pixels away, and for the left and right edges it will remain some other number (y) pixels away. So that when the minecraft window is scaled the GUI gets larger and smaller smoothly and remains in the same place relative to the screen size and keeps its aspect ratio. The problem is that The Minecraft Screen scales weirdly (as indicated in the photo examples) and I cannot seem to scale the item slots that have to be 18 x 18 virtual pixels to work it seems. But somehow as you can see in the pictures the item slots are scaled by minecraft and I am not sure how this works. Definitions: In the image screenSize equals this.width and this.height, and guiRECT is the green GUI Rectangle which is a constant size of 200 x 180 and the x and y offsets are calculated so that the GUI is always centered in the middle of the screen. Also, why does the apparent size of the green rectangle vary so oddly/largely and isnt scaled smoothly
October 7, 201410 yr Author And to clarify, I want my GUI (which is a custom Inventory that contains some of the 18 x 18 pixel item slots) to re-size as the Minecraft Window Size changes so that it remains a constant distance from the edge of the screen and also re-sizes The item slots as well. (to prevent the GUI from bleeding outside of the playable area (so that it remains use-able for different screen resolutions) and to keep it's configuration relative to other GUI's (that I wish to introduce once this problem is solved) relatively constant. Hopefully This clears up my goal.
October 13, 201410 yr What you could do is reacting to the current GUI scale that you can get in the following way: ScaledResolution scaledresolution = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight); int guiScale = scaledresolution.getScaleFactor(); You'd just have to alter the size of your quad. It won't work for buttons and the other elements though, unless you are reverting the scale with glScalef which will screw the whole mouse interaction, you'd have to manually call the methods on these then.
October 18, 201410 yr Author I have been looking into it, the problem is that I cannot scale buttons or the sizes of item slots. they seem to be hard coded somehow and I havent found a way to access that
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.