I don't want to release it as an official version, but rather as a beta version, so you guys can try and see if it can solve the base texture replication problems which was encountered in Super Smash Brothers 64.
The new debugger version has also been uploaded to the official 6.1.0 thread.
To fix the problem I am talking about here for SSB 64, you need to redump the related textures. The plugin will dump the base textures, not the replicated and enlarged textures. Texture enhancement works should be done on these new dumpped base textures.
If you want to use the debugger DLL to dump the texture, you need to find the base texture files under your D:\. The image shown in the popup image viewer window is not the base texture, but the whole replicated and enlarged texture.
You still need to enable the option "Try to Use Smaller Textures (faster)" in order for the new hires textures to work. You must also disable the option "Alternative texture size calculation".
Fix the CI bmp dump/reload problem for texture scan lines not 32bit aligned
Beta 3 fixes the mirror texture replication problem when using the "Use smaller textures" option for SSB64. it also supports for JPEG image format, and generates screen shot image files in JPEG instead of PNG. For hires project, JPEG files can be used only for *_rgb and *_a files, not for *_all or *_ci files. Paired *_rgb and *_a files must be both in same format (JPEG, PNG or BMP). To use the new beta, you need to copy the BMGlib.dll file to your emulator folder. Filename extensio for JPEG files is ".jpg", not ".jpeg".
When comparing to PNG, JPEG does not give better texture quality since it uses lossy compression. The intention to support JPEG format is to provide the 2nd option for large textures. Even JPEG files are smaller on disk (for large textures), such textures will take the same amount of memory after loaded. JPEG works better for screen shot feature then PNG. JPEG screen shot files are usually much smaller than PNG files, and we don't need a lossless screen shot anyway.
Beta 4 fixes a stupid bug (misplacing a single line) which causes the mirror hires texture replication problem with opengl.
Beta 5 adds the ability to load RGBA texture in PNG format for CI textures. Please see my following post
for more details about how to use it.
EDIT #5: Beta 6
Try to solve the mirrored texture replication problem again, and the minor texture dump bug reported for beta 5. The minor bug is actually a big one, especially for games using CI mirror texture but not using the "Using smaller texture" option.
Sorry for some of you. If you find some of your hires textures stop working after this beta, check the dumpped texture with the new plugin against the textures you created. The plugin need you to provide replicated textures, you may need to mirror-replicate your texture as the newly dumpped texture. (It should not be a big deal for you.)
This beta should also fix some weired problems that half dumpped texture is black, and problems with hires textures won't load because of the mirror/non-mirror texture size mismatch.
EDIT #6: Beta 7
Fix the hires texture problem with clamped textures as the bug reported by _pm_ for the link shield in SSB 64.
EDIT #7: beta 8
Try to solve the hires texture loading problem at mirroring and clamping situations (again).
Forget about the changes in beta 6. We are now back to use the base textures, not the mirror-replicated textures for the mirroring situation. This is for both CI and RGBA textures. Beta 5 was in this way for CI textures only.
The new beta 8 works in all situations as I tested.
Again, if your texture stop working after beta 8 but was working before it, try to dump it again and check your texture against the dumpped one. You may need to half your textures.
Please don't complain about the such changes. This is the reason why I call the release as a beta, which is supposed to change. And I am sure that each change is making the plugin to a better direction.
To dump a perticular texture, it is much easier to use the debugger version. This is the reason why I am included the debugger version in the release.
EDIT: for beta 9
- Display initialization messages to tell the status of texture file searching progress
- Won't remember the texture dump option value anymore. This option will be disabled when the plugin is loaded. In order to use the texture dump feature, you have to manually turn it on every time after you restart the emulator. This prevents the texture dump option is accidentally left on.
- Fix the graphic tearing problem at Super Mario head (This is a general bug in many games) and related polygon depth bias problems.
- Textures are now dumpped into subfolders and texture dump will also check into the subfolders.
- Using sorted list to manage the texture info, and using binary search to speed up texture checking/loading process. This should speed up the game when texture dump is enabled, also speed up hires texture loading a little bit.
- Palette CRC calculation is only up to the maximum palette values really used by a texture. This will reduce the duplicated texture dump for different palette CRC values.
- Other extra checking to reduce duplicated texture dump
- For Mario Kart. You want to enable the option "Fast loading tiles". The new beta will give you much better texture dump for this game because of new implementation and extra check on texture size for this game. For most textures used by this game, you can have them dumped in complete textures instead of broken sub-textures.
Edit for beta 10
I don't know why beta 9 has the bug. C++ template didn't do the job as it should do. So I have to add extra check on the Sorted List search result to make sure it is valid.
And there was no problem with the DEBUG build.
Now beta 10 should be work as beta 9 should.
I really wish this beta is the final beta.
Source code is released.