Skip to content

Releases: Vita3K/Vita3K-Android

Vita3K Android Release 12

06 Jun 20:36
Compare
Choose a tag to compare

Vita3K Android release 12 Changelog (non exhaustive list):

  • SD card support: Allow any folder to be specified as the OS/game data folder (inspired by the PR from nurunuruslime)
  • Allow the overlay to be used at the same time as the touchscreen
  • Fix black bands appearing sometimes at the top and bottom of the application on some devices
  • Fix bug causing game installation to be 10x slower than expected
  • Fix accelerometer and gyroscope on android game consoles
  • Some crash fixes
  • Add controller opacity (dima)

Rebase on PC version:

  • Fix audio regression (bookmist)
  • Code cleanup, refractoring and small optimisations (bookmist, Nishinji and GermanAizek)
  • Improved error messages (croden)
  • GUI improvements (Zangetsu)
  • Improve depth-stencil retrieval, fix Ratchet and Clank (Macdu)
  • Add support for module unloading/reloading, allows FFX to be playable (Macdu)
  • Improve ffmpeg dependency (KhoraLee)
  • Improve Transfer downscale/copy, fix graphical issues in Phantasy Star Nova (Macdu)
  • Improve Polish localization (mavethee)

Vita3K Android Release 11

13 Feb 21:27
Compare
Choose a tag to compare

Vita3K Android release 11 Changelog (non exhaustive list):

  • Revert part of the shader optimisations from the last release (because of turnip driver bugs...)
  • Fix some issues with the handling of MSAA 2x, fix graphical issues (partial blur) in some Nihon Falcon games
  • Allow custom drivers and renderer to be set differently for each game
  • Fix some crashes when installing games / custom drivers
  • Use a static version of ffmpeg now that the Android version is open source

Rebase on PC version:

  • Implement fractional upscaling, allows game to render at 1.25x, 1.5x (or 0.5x) the original resolution (Macdu)
  • Add a FPS hack option which allows some games running at 30 FPS on the PS Vita to run at 60 fps on the emulator (Ys 8, GoW, Uncharted...) (Macdu)
  • Language updates (Corden, nishinji)
  • Multiple fixes (bookmist)
  • Use hardware accelerated decryption: speed up game installation by almost 10x (Macdu)
  • Improve depth/stencil identification: Fix shadows in Gravity Rush (Macdu)
  • Use paths instead of wide strings for paths (bookmist)
  • Improve path support on Linux (Steveice10)
  • Put audio parameters in a new audio tab (Zangetsu)
  • Add PS vita Audio/video folder access and crash fixes (bookmist)
  • Fix sRGB PNG texture exportation (dima)

Vita3K Android Release 10

11 Jan 18:10
Compare
Choose a tag to compare

Android v10 Changelog (non exhaustive list):

  • Fix crash on Android 14 (thanks to Kazuki/Adrien for their help)
  • Graphical fixes for double buffer (fix the rendering in Terraria)
  • Fix some io-related Android specific crashes
  • Implement asynchronous shader compilation: reduces significantly stutter caused by shader compilation (at the cost of temporary graphical glitches) and speed up by 2x-3x shader compilation time
  • Shader performance improvements
  • Fix some performance regressions from v9

PC rebase:

  • Use guest pointer for the gxm alloc space, allows FIFA to go ingame with native buffer / page table (Macdu)
  • gxm and renderer refractoring (bookmist)
  • Improce codec/renderer YUV support, fixes the FMV in Ys origin (Macdu)
  • Plenty of shader fixes: Fix graphical issues in 2D ubisoft games (child of light, Rayman) (Macdu)
  • Fix kernel thread end callback, allows Tearaway to go ingame (Macdu)
  • Page align the stack top, allows spiderman to go ingame (Macdu)
  • Decrease the rendertarget size, allows Killzone to go ingame (Macdu)
  • Update Indonesia/Malaysia translation (Croden, kitakata, darkhash)
  • Update Japanese translation (nishinji)
  • Plenty of other shader fixes: Fix GPU crash in Spiderman and Exist archive (Macdu)
  • Rewrite TransferCopy: performance improvements and fix graphics in Spiderman (Macdu)
  • Fix a gxm softlock, allow Unit 13 to go ingame (Macdu)
  • Happy new year! (ExtremeExploit)

Vita3K Android Release 9

06 Dec 15:54
Compare
Choose a tag to compare

Android v9 Changelog (non exhaustive list):

  • Improvements to double buffer: Fix graphics in games like J-Star victory, Gravity Rush...
  • Overlay joystick improvements: You can now run diagonally
  • Touchscreen fixes: Fix regressions and touchscreen issues
  • Overlay improvements: Should use a lot less GPU power
  • Overlay: The overlay button size can now be modified
  • App pausing: Re-enabled and no longer freezes the application
  • Fix gxm alignment issues: Fix regressions in Tokyo Xanadu, Trails of Cold Steel 2
  • Texture replacement support: Support png, uncompressed textures, BCn compressed textures (Snapdragon only), ASTC compressed textures (any phone). Textures have to be manually places in /Android/data/org.vita3k.emulator/files/textures/import/game_id

PC Rebase:

  • Kitakata/Zangetsu: Add Indonesian and Malaysian languages
  • ExtremeExploit: Use curl for http request, should fix issues preventing the compatibility database to be updated
  • redpolline: Refractor the filesystem architecture (not relevant for Android but still a lot of work)
  • Macdu: Improvements and fixes to the ngs player, fix the Audio in Borderlands 2, Mickey Power of 2, Valhalla Knights 3
  • Macdu: Fix ingame dialogs freezing the emulator under certain circumstances
  • Macdu: Plenty of shader fixes, fixes the graphics of Hyperdimension Neptunia, FIFA and Borderlands 2 (require shader cleanup)
  • Macdu: Improve ngs support of mono voices, fixes AoT game audio
  • Macdu: Properly initialize gxm texture objects, fixes cutscenes in GoW
  • Macdu: Rewrite the surface and texture cache, performance improvements and needed for texture replacement
  • Macdu: Vulkan refractor, fixes chaos ring and improve performance for driver with bad memory allocators

Vita3K Android Release 8

02 Oct 15:51
Compare
Choose a tag to compare

Android V8 Changelog:

  • Implement motion sensor: If you have a connected controller which has motion sensors, these will be used. Otherwise your device motion sensors will be used
  • Add renderer accuracy option
  • Add an option to create a shortcut for each game. The shortcut will be added to your home screen and use the game name and icons.
  • Make sure clang does not optimize function calls it thinks are useless (fixes fmv flickering)
  • Improve memory trapping (fixes freezes when using double buffer)
  • Memory mapping can now be configured for each game (and can be modified before starting a game without rebooting)
  • Rewrite the texture cache architecture, should fix games becoming slower over time
  • Update to NDK 26
  • Update SDL to 2.28.3 (improve controller support)
  • Multiple performance improvements (using faster data structures and less mutex locking)

PC rebase (non exhaustive list):

  • Zangetsu: Add support for controller touchpad (PS4/PS5 controller), not tested on Android
  • Croden, HuanJiCanShang: Translation improvements
  • Scribam: Code cleanup and update dependencies
  • Macdu: Implement litteral buffers, thread buffers and texture buffers, used by World of Final Fantasy and Gundam Breaker 3
  • Good afternoon, Dima: Implement controller rebinding
  • Macdu: Implement shader store, Fixes most 3D unity games and J-Star
  • Nishinji: Add an option to stretch the screen ingame to occupy all the space available (but does not respect the aspect ratio)
  • Bookmist: Kernel fixes and some crash fixes

About renderer accuracy, the versions v1-v7 were using what is now the "high" accuracy. By default the accuracy is set to standard, compared to high it decreases the amount of memory used and improves performance. This can cause some small graphical glitches in some games because this is not entirely accurate (although I haven't seen any graphical glitches yet), so its is recommended to use this setting for Android.

Vita3K Android Release 7

23 Jul 17:51
Compare
Choose a tag to compare

Android V7 changelog:

  • Fix SDL audio implementation and set it back as default
  • Fix some bugs with the Double Buffer implementation (I love non-coherent memory)
  • Implement surface sync and occlusion queries using double buffer
  • Disable game pausing as it causes device freezes and crashes
  • Improve Turnip driver detection, necessary for a driver bug workaround
  • Add a driver bug workaround for recent Adreno (non-Turnip) drivers
  • Fix ffmpeg android build (assembly optimisations were missing)
  • YUV texture uploading performance improvements
  • Mark Vita3K as a game, may help with some OS optimizations

PC rebase (non exhaustive list):

  • Macdu: Emulate macroblock tile sync, fixes the bloom issue in multiple games (Project Diva, Uncharted, Gravity Rush...)
  • Zangetsu: Allow gui to be navigated using a controller (also works with the overlay controller)
  • Zangetsu: Implement u3u2u2u8 texture
  • Macdu: Major rewrite of NGS (PS vita audio library), stub all missing modules
  • Macdu: NGS decoder fixes, fix audio noise in most games that had this issue
  • bookmist: Implement missing kernel functions
  • Macdu: Improve support of stencil attachment without depth, fixes the DOF effect in Persona 4 Dancing
  • Zangetsu: Fix bug with platinum trophy
  • Saturnsky: Many improvements with the Jpeg encoder and decoder, fixes many visual novels
  • Macdu: Multiple shader fixes, allow World of Final Fantasy to go ingame
  • slipcounter: Fix bugs with guest printf function and ngs check, fixes crashes in some specific games
  • Zangetsu: Add option to disable shader compiled notification
  • Macdu: Implement shader interlock (only matters if you are using a desktop GPU)
  • Macdu: Implement timer events, allow Zanki zero to go ingame
  • Zangetsu: Rewrite save dialog gui
  • ExtremeExploit: Multiple net fixes
  • Zangetsu: Implement register manager

This updates significantly improves the SDL audio backend and also contains many other audio fixes. If you are updating from a previous version, switching to SDL for audio may fix some small remaining audio issues.

Vita3K Android Release 6

13 Jun 11:44
Compare
Choose a tag to compare

Release notes:

  • Fix BC2 and Bc5 decompression bug, fixes the "hashy" textures on Mali GPUs (One piece unlimited, Dragon's crown...)
  • Fix a bug with swizzled non-power-of-2 BCn textures
  • Fix some Vulkan validation errors
  • Fix issue related to memory trapping and host i/o, allows Gravity Rush not to softlock
  • Update adrenotools and add turbo mode option for Adreno GPU
  • Automatically hide overlay after 10 seconds without using the touchscreen
  • Set debug color to black (instead of yellow)

Mainline updates:

  • Add FSR upscaler (Macdu)
  • Implement DONT_WAIT for msg pipes, fixes Trails in the Sky audio (Macdu)
  • Improve support for Vita native MSAA surfaces and implement shader depth replacement instruction, fixes most of the special effect issues (Dragon Ball, Freedom War, Street fighter...)
  • Implement App pause/resume (Zangetsu)
  • Always refresh screen is a dialog is being shown, fixes Trails in the sky saves (Macdu)
  • Multiple GUI and language fixes (Croden)
  • Implement some missing OpenGL surface formats (ExtremeExploit)
  • Improve implementation of sceSysmoduleIsLoaded , allows Caligula effect to go ingame (Macdu)
  • Implement and improve the Jpeg decoder, fixes character portraits in Gravity Rush (Zangetsu, Saturnsky)
  • Improve accuracy of controller implementation, allows A-men games to go ingame (Macdu)
  • Refractor User management screen (Zangetsu)
  • Add Bicubic filter (nishinji)
  • Implement Jpeg encoder, fixes saving in some visual novel (Saturnsky)
  • Implement visibility buffer using occlusion query, improve performance on gravity rush (Macdu)
  • Implement visibility buffer increment mode, fixes characters in Ys 8 (Macdu)
  • Implement SUBFLR dual shader instruction, fixes most of the graphical issues in Need for Speed (Macdu)
  • Fix stencil and depth sampling, fixes most of the graphical issues of Gravity Rush (Macdu)
  • Multiple kernel fix and implementation (bookmist)
  • Stub motion sensors, fixes the black screen in Gravity Rush (Zangetsu)
  • Mutliple other fixes...

This update will also invalidate existing shader caches.
Some of these features (visibility buffer and surface sync) do not work yet with double buffer, you need to use native buffer or page table.
Everything was only tested on a Poco F3 (because that's the only device I own), so I can't make any guarantee about other GPUs sorry.
I strongly recommend using turnip drivers on Adreno devices if you can, I'm having a lot of issues with the default drivers.

Vita3K Android Release 5

01 May 21:50
Compare
Choose a tag to compare

Release notes:

  • Add (experimental) OpenGL ES Renderer (requires OpenGL ES 3.2)
  • New memory mapping methods (Double buffer and Page table)
  • Fix L2/R2 overlay buttons
  • Improve touch handling: touch swipe and multitouch recognition should work correctly now
  • Add optional overlay button to switch between front and back PS Vita touchscreen
  • Add debug capabilities
  • Improve DPI scaling
  • Update SDL to 2.26
  • Update ffmpeg to 5.1.3

Rebase to Vita3K PC version:

  • io: Fix savedata return value, fixes the "Not enough memory" warning on Minecraft (ExtremeExploit)
  • modules: Fix stack corruption when calling mktime on Linux (ExtremeExploit)
  • gui: Some quality of life improvements (bookmist and Zangetsu)
  • gui: Add supporter section (Zangetsu)
  • lang: Improve many translations (Croden, nishinji, HuanJiCanShang)
  • audio: Fix ngs sample return count, makes persona 3 and 5 dancing playable (Macdu)
  • audio: Fix the return value of sceNgsVoiceGetStateData, makes Trails of Cold Steel 2 playable (Macdu)
  • io: Standardize overlay paths, allows Killzone to reach menu (Macdu)
  • renderer: Implement surface sync, vulkan only, allows Project Diva X screens to render properly and fixes Ys Memories of Celceta brightness (Macdu)
  • renderer: Add some missing texture and swizzles support, BC4 support, and fix PVRT2 decompression, used by Killzone (Macdu)

About memory mapping, double buffer should be less efficient compared to the other methods (native buffer and page table), but it should also be less driver dependent. From my testing, it looks like native buffer works on Adreno GPU and page table doesn't while the opposite happens on Mali GPU. Not sure tho.

Note:
If you update from a previous version, the log level will be set to trace. If you don't plan on using it, it is recommended to set it to off (Settings->Emulator) to improve performance.

Vita3K Android Release 4

25 Mar 18:21
9491fb1
Compare
Choose a tag to compare

Release Notes:

  • Increase minimum version to Android 8.0 (temporary)
  • Add direct access to the PS Vita internal storage with a Document provider (should allow alternative frontends to list and launch vita games)
  • Add L2/R2 triggers to the ingame overlay when PSTV mode is enabled
  • Rebase Vita3K:
  • Improve in-app game compatibility reports (Zangetsu)
  • Fix Project Diva movies (lybxlspv)
  • Many lang fixes (Zangetsu)
  • Implement memory mapping:
    • Huge performance boost
    • Reduce memory usage (by a fixed 300-400 MB)
    • Fix many graphical glitches (flickering and missing ground in many games)

Vita3K Android Release 3

14 Feb 09:24
6ab2a56
Compare
Choose a tag to compare

Release notes:

  • Automatically clear the shader cache when starting a game with a different driver, because nobody does this (note: this invalidates existing shader caches)
  • Add scrolling to save dialogs
  • Use proper file name for custom driver installation and zip installation
  • Show notification when a Vitamin dump is detected
  • Improve error handling while installing pkg
  • Fix the onscreen overlay on some more devices
  • Remove Write_External_Storage permission on recent Android versions
  • Update ndk to 25.2.9519653
  • rebase to Vita3K PC version:
  • Add game compatibility in the emulator (Zangetsu)
  • Improve variable relocation to fix some games (Bookmist)
  • Some lang changes (Croden/CoffeeBrewer64)