Amazing Bighead! That was fast!
Thread Rating:
|
Custom Texture Tool PS v50.1
|
|
Rather than elaborate on my previous posts, I figured I'd start over since this has been a complex task and I have no idea where I left off. I shoved both of those posts into a single one above.
The options are ready to be played with, the download is here: http://www.mediafire.com/file/uzfwhsl9k8xgkw3/Custom_Texture_Tool_PS_v43.0.b2.zip Combine Multiple Textures: (Show Spoiler)
Split Combined Multi-Texture: (Show Spoiler)
CTT File (created when combining): (Show Spoiler)
Zelda: OoT Stuff: (Show Spoiler)
@Admentus: I figured I'd also share all my test files and conditions which will hopefully help in some way. http://www.mediafire.com/file/uw2ke5d9pioqd89/Zelda64_Upscale_Stuff_(upload.01).7z 08-13-2019, 08:06 PM
Nice work Bighead!
I should make preparations some time to study how it works and get to up-scaling those backgrounds myself .Through I suspect that will be taking a few days, if not weeks before I am set to go. For now I am focused on improving Ocarina of Time and Majora's Mask through the magic of AR Coding. And I suspect Nerrel will soon be finished with Ikana Canyon. So that takes priority too. But I have made some preparations to get started with this incredibly dull task of up-scaling backgrounds. At least your tool prevents me from having some serious migraines.
If you want I'll upscale and split the hyrule market backgrounds as I already have them plotted out. All of the work is basically done for those except the actual upscaling. Just let me know what upscale settings you want (filter, model, factor, etc).
Also it's all not as complex as it may seem, I just wanted to cover every possible option and use case. In the case of these hyrule market "skybox" like textures, if you were to do it from scratch, the entire process would be... - Open "Combine Multiple Textures". - Set grid array to 4x8, set button ratio to 1.00:0.50, set inner pixel overlap to "1". - Open the grid and fill it in. This is the tedious part of figuring out the puzzle. Plotting a texture map helps. - Press "Start" to combine them, it creates a "combined texture" and a CTT file. - Upscale the "combined texture" that popped out. Keep the upscaled texture and CTT in same path. - Load the CTT File in "Split Combined Multi-Texture", the upscaled texture is loaded and all necessary settings are applied. - Press "Start" to split the texture. They will automatically be renamed and ready to be loaded in Dolphin. There are the other tweaks that could be performed, and if you wish for me to do the market textures I'll try to eliminate the box seams as much as I can. (08-13-2019, 09:14 PM)Bighead Wrote: If you want I'll upscale and split the hyrule market backgrounds as I already have them plotted out. All of the work is basically done for those except the actual upscaling. Just let me know what upscale settings you want (filter, model, factor, etc). Ok. I will be trying my hand at it. I am sort of finished with AR coding in order to improve Ocarina of Time and Majora's Mask for the time being. I have been a bit busy today, so I am sorry for the late reply. My intentions are an 8x upscale with ESRGAN, and see if that works. The previous backgrounds seemed to have turn out quite well with ESGRAN. Basically it should be running the ESGRAN upscale progress twice. If it all works smooth and fast, I can be with it in no time. There are a lot of backgrounds to cover. The easier and more convenient this is the faster I can get everything in place of course. I love to try out the process myself, so I would get skilled enough to do it myself. That doesn't mean no one is allowed to help out of course .So far I am loving the Combine Multiple Textures GUI. And your posted tutorial is perfectly clear. It couldn't be any easier to instruct. If I manage to get any results out of it, I'll post a screenshot of it. And thank you for your hard work! Really! You're a life saver. So I did my first test, using ESGRAN twice. Very easy with your tool. The only thing that would take time it making the jigsaw. But for testing purposes I only skipped that phase. I managed to successfully going to the subsequent tasks. Really, it couldn't be any easier. You praticially only need someone willing puzzling these jigsaws together, and even that is easier than ever with your Custom Texture Tool. If you set aside the jigsaw puzzling, you can basically get this done within a few minutes. Hyrule Castle Town Market - Child Day (Front): (Show Spoiler)
If the process is that easy, then I wouldn't need to set week aside for it. Just the thought of dread working on these backgrounds just made me want to put it all away, and just kept working on the next best thing that has reasonable results. I still won't be able to finish everything within days, as I still have other matters to attend to and I don't expect to get started right away with it yet, but it's definitely a motivating start for me. Of course I will make sure to include your name in the credits for the contributions towards these backgrounds for the next Zelda 64 4K Texture Pack update. In the meanwhile I have been experimenting with the 60 FPS interpolation patch from Kaze Emanuar by packing it into a WAD. It definitely works on the Virtual Console, and the beautiful thing is that it keeps all RAM addresses intact for all those AR Codes. I guess Kaze made the patch a while before, but I didn't pay any real attention to it yet. It definitely makes Super Mario 64 feel smoother. I wasn't able to made an AR code out of it. So... That won't happen. But at least it is patchable and functional on the Virtual Console. So yeah, that took my attention among other matters away. By the way, I am not sure if you did notice it yet, but 3DS emulator Citra is making progress with custom textures support, allowing for texture packs as well there.
Ooh that looks much better than waifu2x, which I was only using because its fast for testing purposes. Aye, with this implementation complete the worst part is now figuring out the pieces rather than figuring out the overlap. A giant leap in convenience, but still tedious. Like I mentioned before, the easiest way to figure it out is to dump the textures, then run them through the watermark option and load them in Dolphin.
Spoiler: (Show Spoiler)
So now that you have some experience with these new options, I am open to any ideas of improvement. There are a few changes that I still want to do: - Better lower button arrangement on grid (done, clear, arrows, etc). The arrows should be moved down to the bottom row, and maybe a "deselect" texture button since I like having multiple ways to do the same tasks (ultimately makes things more intuitive). - Fix the "too large" selection bug, more specifically, fix the button sizes so selection bug doesn't happen. - Loading a CTT file locks it in place for "Split" textures (a product of the previous design), and releasing it loses the list of names. I'd rather just keep it always loaded until a new one is loaded or the script is closed. - Redesign the Split Textures operation menu. The red text message isn't necessary, and I'd like to put a preview on there so its known which texture is currently loaded. The "Load CTT File" and texture path textbox/button [...] could probably be merged into a single 'thing'. - Many of the new buttons and other things need proper tooltips. - Different button sizes based on ratio. Better config options maybe, automated maybe, not sure. using like 1.00 : 0.10 is kind of weird since they are so small. - Rather than "Invert Colors" only allowing black and white on the grid, actually pick whatever color you want. - I'm sure I'll think of more stuff.... I don't want to make any big promises, so don't get hopes too high, but I do have an idea that could "auto-build" these specific textures. We know they are unique in that they have a duplicate row of pixels where they overlap. So it may be possible to scan the textures, scan the edge pixels, and figure out where they go based on that. This could "auto-build" them without knowing the texture map ahead of time. It's an ambitious idea that has been rattling around in my head, and I'll probably see if it's possible after I get everything else done. Edit: This update takes care of many of the issues mentioned above. http://www.mediafire.com/file/dgk2uavgd3vm28q/Custom_Texture_Tool_PS_v43.0.b3.zip/file - Texture grid selection is now correct (button sizes were fixed). - Combine textures dialog has 2 new buttons: deselect and replace (same as left/right click when texture is selected. - Combine textures dialog buttons were modified to fit better. - Combine textures dialog font color can now be specified beyond black/white. - CTT File is no longer held/released when loading with "Split" operation, it just always remains loaded. Still a few more things to do, there will either be 1 more or no more more "betas" before it's a wrap. Spoiler: (Show Spoiler)
Just to demonstrate how quickly and effective your tool is.
Hyrule Castle Town Market - Child Night (Front): (Show Spoiler)
Included the non-scaled version below.
So this got me thinking about those prerenderedbackgrounds of Ocarina of Time and the Custom Texture Tool.
Ocarina of Time has only two types of backgrounds. - Type 1: 32 textures with the size of 64x32, into four different sets for a total of 128 textures. This type has been successfully covered in the Custom Texture Tool. - Type 2: 40 textures with the size of 324x8, this works a bit differently which I will be explaining. Type 2 Type 2 consists out of 40 textures, being 1 column and 40 rows, making for a combined image of 320x240. On Project64 these 40 textures are dumped in the format of 320x6 but Dolphin dumps those in the format 324x8. Type 2 is also need in other Nintendo 64 games such as Super Smash Bros. The VC version on Dolphin also dumps these backgrounds in the format of 324x8. Somehow the GameCube versions has 4 additional pixels in the width on the right and 2 additional pixels on the bottom. Fun thing is, these additional pixels are repeats from the last actual pixels (right and bottom) from the format 320x6. Thus these additional pixels are more or less garbage. Still Dolphin does need the textures to be formatted in 324x8. The solution is quite simple, but tedious. Process for Type 2 - Reduce the canvas size of all 40 textures from 324x8 to 320x6, removing pixels on the right and bottom. - Combine all 40 textures together to form 1 column and 40 rows. - Upscale the combined texture. - Split the combined upscaled texture into 40 textures, being 1 column and 40 rows. - Extended the canvas size for all 40 textures from (320 x upscale factor) x (6 x upscale factor) to (324 x upscale factor) x (8 x upscale factor), adding pixels on the right and bottom. - Example: an upscale of 6x would be setting the canvas size from 1920x36 to 1944x48. - Create a duplicate layer of all 40 textures with a mirror to horizontally to be placed on the empty extended canvas size. Do the same with mirroring it vertically. So the new transparent pixels are being filled with each texture mirror mirrored upon it. - Done. The Zelda 64 4K texture pack already has a few upscaled type 2 backgrounds found in the Backgrounds folder. Could the Custom Texture Tool also account for this process?
I don't see why not, the details and the process itself doesn't seem too complicating. The hardest part would be figuring out the presentation since this would be highly specialized towards this one situation, and does not line up with any of the currently existing options. It could also mean more changes to the interface and CTT files as it may require more (or different) information. I'll have to mess around with them myself to get a feel for how it should work as I tend to have some strange methods for it to all make sense in my mind.
It is odd to me that the textures are different sizes between N64 and GC versions, I'd be interested in the technical details as to why that is as it seems like an important question to ask. I doubt they are that way in the ROM data, so where are these extra duplicate pixels coming from? Is it a behavior of the Gamecube/Wii hardware? Is it a bug/behavior in Dolphin itself? Is the N64 emulator somehow missing these pixels and they are actually there? Is it the emulator that Nintendo is using for these titles? And if these pixels were put there intentionally by a human mind somewhere along the way, why? Also, I wonder if these extra pixels are why these textures look so awful at higher resolutions, since it would affect their filtering/tiling. It raises all of the questions above. Spoiler: (Show Spoiler)
http://www.mediafire.com/file/35j973hqai7tv52/Custom_Texture_Tool_PS_v43.0.b4.zip - Textures can now be completely removed from the grid by holding control and clicking on them or control + the "deselect" button. - Selection color can be changed by holding control when clicking "Font Color". - Tooltips have been added to all dialog items which also explains their hotkeys and control+hotkey combinations. - Fixed button names appearing when selecting a texture and names have been toggled off. Spoiler: (Show Spoiler)
I do have three suggestions
- Allow the "Combine Textures" interface to be resized. Which makes it easier to look at on my 4K screen if it is larger. - Being able to drag one texture into another, swapping both their places. - Being able to load in a X amount of textures at once. For example, if the grid is 4x8 (total of 32), allow to import 32 textures at once into the grid. I don't care about the position on the grid just yet. I sort it out on the grid. I don't want to manually drag every texture by one by one into the grid. and two bugs to report - The Tool Path: "Tools Master Path (Optional)" is not carried over when using the "Import Stored Options" on a previous version which has been set up. - The Tool Path: "Temporary Folder" is not carried over when using the "Import Stored Options" on a previous version which has been set up. |
|
« Next Oldest | Next Newest »
|
Users browsing this thread: 2 Guest(s)

![[Image: 0z23Uzd.png]](https://i.imgur.com/0z23Uzd.png)
![[Image: wuiTR7i.png]](https://i.imgur.com/wuiTR7i.png)
![[Image: hpOkSH1.png]](https://i.imgur.com/hpOkSH1.png)
![[Image: gRVf4oW.png]](https://i.imgur.com/gRVf4oW.png)
![[Image: V1eaDVB.png]](https://i.imgur.com/V1eaDVB.png)
![[Image: upLldgs.png]](https://i.imgur.com/upLldgs.png)
![[Image: y9IFEY4.png]](https://i.imgur.com/y9IFEY4.png)
![[Image: ZQjRlDY.png]](https://i.imgur.com/ZQjRlDY.png)
![[Image: OoJO0sE.png]](https://i.imgur.com/OoJO0sE.png)
![[Image: lKePNfS.png]](https://i.imgur.com/lKePNfS.png)
![[Image: dxucCAk.png]](https://i.imgur.com/dxucCAk.png)
![[Image: TXmEXOl.png]](https://i.imgur.com/TXmEXOl.png)
.![[Image: CTT-BG-HCTM-D-Test.jpg?raw=1]](https://www.dropbox.com/s/jfjcrte1c85d06p/CTT-BG-HCTM-D-Test.jpg?raw=1)
![[Image: ba4ydib.png]](https://i.imgur.com/ba4ydib.png)
![[Image: qcRbvRC.png]](https://i.imgur.com/qcRbvRC.png)
![[Image: Market%20Night%20Combined.png?raw=1]](https://www.dropbox.com/s/iwf7tj1971oyht4/Market%20Night%20Combined.png?raw=1)
![[Image: i7077Qp.png]](https://i.imgur.com/i7077Qp.png)
![[Image: 5nPaQgZ.png]](https://i.imgur.com/5nPaQgZ.png)