{"push_id":922891890,"size":11,"distinct_size":11,"ref":"refs/heads/master","head":"8b27bc51f5aa8460749e1a6b61d29d8d3011ca6f","before":"060ba9302c63680b17f64839b4262b31cde99a05","commits":[{"sha":"4176ee241f52094e1fc624a837129459f364b124","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Reuse more code between GPUs for download.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/4176ee241f52094e1fc624a837129459f364b124"},{"sha":"a6c64f74d111fece07ce9d5e2ca7916bf0360232","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Cleanup download process a bit more.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/a6c64f74d111fece07ce9d5e2ca7916bf0360232"},{"sha":"4e088aebb7c7b2ce5604bb90086a7a59ee0fa630","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Discard blit buffer contents before blit.\n\nThis way the GPU doesn't think it needs to load anything, it's all being\noverwritten.  If we're only using part of the framebuffer, the other parts\ndon't matter.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/4e088aebb7c7b2ce5604bb90086a7a59ee0fa630"},{"sha":"28a07c70c6786765bb12dae0658c2c76f5f2b2a3","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Explicitly download rendered cluts.\n\nThis avoids triggering logic that tries to get the sizing right, or\noptimize frequent copies.  CLUTs often get estimated wrong, so it's better\nto copy just the correct range, always.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/28a07c70c6786765bb12dae0658c2c76f5f2b2a3"},{"sha":"63c600d5e2bd12615e93f7f747e807ee7b1a6a17","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"gedbg: Format flat shading.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/63c600d5e2bd12615e93f7f747e807ee7b1a6a17"},{"sha":"095d8cb52a7ddbb361b36a5c4bca14d091e0650a","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Avoid download/conv of full rows.\n\nSometimes we don't need the full width, such as when we're downloading a\nCLUT.  In Brave Story, the CLUTs overlap in detected width, so this is a\nreal improvement.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/095d8cb52a7ddbb361b36a5c4bca14d091e0650a"},{"sha":"19877144ba703f9da5026e6e37b6d29b184ae022","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Avoid redownloading CLUT when reloaded.\n\nIn Brave Story, the game reloads the CLUT frequently, but doesn't actually\nrender to the CLUT that often.  It also switches between a few different\nrendered CLUTs - so caching that we've downloaded is a HUGE win.\n\nIn case someone reading this message is interested, it actually renders\nthese CLUT tables from what appears to be a color wheel.  Crazy huh?","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/19877144ba703f9da5026e6e37b6d29b184ae022"},{"sha":"191350ff0256c0239e6634f85d6802773e248b85","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Minor cleanup.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/191350ff0256c0239e6634f85d6802773e248b85"},{"sha":"909d477719d6e102f0796468be3f57d0f7bbe07b","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Support CLUTs at an x offset.\n\nUsed by Kurohyo 2.  Highly unlikely to be a mis-estimate within stride.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/909d477719d6e102f0796468be3f57d0f7bbe07b"},{"sha":"6b98b9900604124ba9948a71ae049b9a3665faf5","author":{"email":"36884363863e12fe2cb5f36b207cfbf684864b60@unknownbrackets.org","name":"Unknown W. Brackets"},"message":"Take the closest matching CLUT framebuffer.","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/6b98b9900604124ba9948a71ae049b9a3665faf5"},{"sha":"8b27bc51f5aa8460749e1a6b61d29d8d3011ca6f","author":{"email":"a999e170e992da11398eb9aef877b71c5bf3e751@gmail.com","name":"Henrik Rydgård"},"message":"Merge pull request #8389 from unknownbrackets/gpu-memcpy\n\nRefactor VRAM download, optimize rendered CLUTs","distinct":true,"url":"https://api.github.com/repos/hrydgard/ppsspp/commits/8b27bc51f5aa8460749e1a6b61d29d8d3011ca6f"}]}