Skip to content

v0.0.213

Choose a tag to compare

@github-actions github-actions released this 10 Oct 09:11
· 33 commits to main since this release
fe99e0e

rePIU v0.0.213

이전 릴리스 v0.0.212 이후의 변경입니다(issue #37). 텍스처가 게임 원본의 8bit 색으로 그려집니다.
그라데이션이 띠로 끊기던 얼굴·옷·배경이 매끄러워집니다.

해결된 issue

issue 내용 커밋
#37 게임 내장 Mesa 드라이버의 4444 절단을 우회하는 원본 정밀도 텍스처 f31b7cc

바뀐 것

텍스처 원본 정밀도(기본 켬). PIU 실행 파일 안에는 OpenGL을 Glide로 옮기는 Mesa 3.x 드라이버가 들어
있고, 이 드라이버가 모든 컬러 텍스처를 채널당 4bit(ARGB4444)나 5/6bit(RGB565)로 잘라 하드웨어에 넘깁니다.
rePIU는 드라이버가 들고 있는 원본 8bit 이미지를 찾아, 다시 잘랐을 때 게임이 넘긴 데이터와 바이트 단위로
같은 경우에만
대신 씁니다. 확인되지 않은 텍스처는 예전과 같이 그립니다. 게임이 보는 메모리와 동작은 바뀌지
않습니다.

실제 아케이드 기판도 4444 화면이었으므로, 이 옵션은 원본보다 나은 화질입니다. 끄면 실기와 같은 화면입니다.

방법 지속
게임 중 Tab OSD의 "Full-precision textures (8-bit)" 그 실행만, 바로 적용
런처 Options의 "Full-precision textures" cfg\repiu.ini의 [Video] texture_full_precision
REPIU_GLIDE_TEXTURE_FULL_PRECISION=0 그 실행 (런처 값보다 우선)

비교 화면과 동작 원리는 개발 기록에 있습니다.

확인한 것

구성 확인
Win32 Release 빌드, 새 probe mesa_fx_texture_source, 런처 probe, core probe
Linux x64 Release 빌드, core probe
실제 게임 pumpitea 업로드 61/61, pumpit8 130/130이 원본으로 대체(실패 0), OSD 토글 정상

19개 롬셋 모두 같은 Mesa 빌드임을 실행 파일의 바이트 서명으로 확인했습니다.

알려진 것

  • pumpitea·pumpit8 외 롬셋은 실행해 보지 않았습니다. 검증에 실패하는 텍스처는 예전과 같이 그려집니다.
  • 원본 정밀도 텍스처마다 호스트 메모리에 사본 두 벌을 더 둡니다(최대 약 32MB). GPU 메모리는 그대로입니다.
  • Linux i386 빌드는 확인하지 않았습니다.

rePIU v0.0.213

Changes since v0.0.212 (issue #37). Textures are drawn with the game's original 8-bit color, so faces,
clothes and backgrounds whose gradients broke into bands are smooth.

Resolved issues

issue Summary Commit
#37 Full-precision textures bypassing the embedded Mesa driver's 4444 cut f31b7cc

Changed

Full-precision textures (on by default). The PIU executables carry a Mesa 3.x driver that turns OpenGL into
Glide, and it cuts every color texture to 4 bits (ARGB4444) or 5/6 bits (RGB565) per channel before the hardware
sees it. rePIU finds the original 8-bit image the driver still holds and uses it instead only when cutting it
again equals the game's data byte for byte
; any texture not confirmed is drawn as before. The memory and
behavior the game sees do not change.

The arcade board showed the 4444 picture too, so this option goes beyond the original; turn it off for the arcade
look. Switch it with "Full-precision textures (8-bit)" in the in-game Tab OSD (that run, at once), "Full-precision
textures" in the launcher's Options ([Video] texture_full_precision in cfg\repiu.ini), or
REPIU_GLIDE_TEXTURE_FULL_PRECISION=0 (that run, over the launcher's value).

Comparison screenshots and how it works are in the dev log.

Verified

  • Win32 Release: build, the new mesa_fx_texture_source probe, the launcher probe and the core probe.
  • Linux x64 Release: build and the core probe.
  • Real game: every upload replaced by its original in pumpitea (61/61) and pumpit8 (130/130) with no fallbacks,
    and the OSD toggle works.

Byte signatures in the executables show all 19 ROM sets carry the same Mesa build.

Known

  • ROM sets other than pumpitea and pumpit8 have not been run; a texture that fails the check is drawn as before.
  • Each full-precision texture keeps two extra copies in host memory (about 32 MB at most); GPU memory is unchanged.
  • The Linux i386 build was not checked.