Post Reply 
 
Thread Rating:
  • 7 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Persona 3 Portable HD Texture Pack (WIP) - Update (2019-02-03)
01-09-2018, 08:22 PM
Post: #36
RE: Persona 3 Portable HD Texture Pack (WIP) - Update (2017-12-25)
(12-27-2017 03:51 AM)[Unknown] Wrote:  If the texture is always at the same place, you're much better off setting a hash range so it hashes less, and using that texture hash, rather than completely ignoring the hash.

For example, suppose there is a 512x512 texture, where only 480x272 of it is actually useful. Let's say it's at address 0920ceb0. You would use:

0x0920ceb0,512,512 = 480,272

This tells PPSSPP that the texture found at 0x0920ceb0, when specified by the game as 512x512, is actually 480x272. It will hash only the 480x272 part of the texture, so you'll need to view the scene again so it can generate a new file, which will have the new texture hash as its name.

Make sure to change the size of the replaced texture to 480x272 too (which should be how it saves it too.)

To explain why this is better and why the bottom half of textures seems to have weird data:

The PSP hardware only allowed textures with sizes that were powers of 2. So 256 and 512 are options, but nothing in between. That means a 272 tall texture is impossible - you have to use 512 tall.

But, this quickly wastes a lot of memory. The PSP only had 2 MB (yes, really) of video memory. The wasted space for a 512x512 texture would be 480 KB - which seems tiny, but that's 24% of the VRAM. That's so much, it makes sense to use tricks to avoid wasting that extra space completely. So it puts other textures there, overlapping each other - or maybe even other data.

Unfortunately, PPSSPP doesn't know what part of the texture is really important - it has some heuristics to guess, but most of the time it has to play it safe and assume the whole texture is important.

If you can tell PPSSPP the real size, it will be able to manage textures and memory smarter, which is more important when your textures are HD versions. Without this information, every time the texture hash changes - it still changes, even if you use 00000000 to ignore it - it has to recreate the texture from scratch. This can make it use more PC VRAM and could even run slower on less powerful computers.

Unfortunately - this trick only works when you know the texture is always at the same address.

-[Unknown]

Hi! I decided to try that technique with some textures from Kingdom Hearts BBS, but it didn't work :/

I added these lines to a new textures.ini:

[options]
version = 1
hash = quick

[hashes]

0x09c0f4d0,512,512 = 492,160
0x08bc1890,64,128 = 64,72

And then revisited the screen where the textures appear, but the emulator didn't generate new files with those sizes :/ I tried deleting everything in the "new" folder, but nothing happened, it just created the same images over and over.

Persona 3 Portable HD Texture Pack:
http://forums.ppsspp.org/showthread.php?tid=23509
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Persona 3 Portable HD Texture Pack (WIP) - Update (2017-12-25) - hououin_kyouma - 01-09-2018 08:22 PM

Forum Jump: