Author Topic: [Release] Pigs In a Blanket - GLES 2.0 Library for the PS Vita  (Read 3456 times)

Offline SonicMastr

  • End User
  • *
  • Posts: 10
    • View Profile
[Release] Pigs In a Blanket - GLES 2.0 Library for the PS Vita
« on: December 09, 2020, 09:51:11 AM »
For original info, look here: https://forum.devchroma.nl/index.php/topic,294.0.html

Pigs in a Blanket - The full GLES 2.0 Library for the PS Vita

We're on v2.0 now. Pretty exciting stuff, and we brought a few new tweaks and big features to enhance the overall experience.


What's new

System Application Support - This is the big one this update. PIB now has the ability to utilize the SharedFB framebuffers to be able to draw as System Applications. This means the potential to create applications that run the background using the Piglet OpenGL ES 2.0 library. The only thing you have to do to enable System App Mode in PIB is use the PIB_SYSTEM_MODE flag. There are a few caveats:
  • Minimum System Application budget HAS to be 32MB. This means that games that use 109MB+ mode will require the System Application to be closed
  • This patch makes it so Piglet can only create TWO sync objects. This is a limitation of System Applications. All normal main drawing functionality will be intact, but things such as mipmaps/FBOs may not work the way you want it to
  • Currently, EGL_SCE_piglet_vita_pre_swap_callback and EGL_SCE_piglet_vita_vsync_callback do not work in System Mode

Fully Enabled Sony EGL Extensions (Common Dialog Support!) - Yes. You can FINALLY use the Sony EGL Extensions as intended. A list of these extensions and what they do:
  • EGL_SCE_piglet_sync - Gives you functionality to create and manage EGL sync objects
  • EGL_SCE_piglet_vita_pre_swap_callback - Vita specific extension to allow you to render Common Dialog Prompts in your Piglet apps (IME/Save Dialog/Message Boxes/etc.) (DOES NOT WORK IN SYSTEM MODE)
  • EGL_SCE_piglet_vita_vsync_callback - Vita specific extension that returns the framebuffer data right before a swap. This includes the pointer to the framebuffer data, width, height, pitch, and SceDisplayPixelFormat of the framebuffer (DOES NOT WORK IN SYSTEM MODE)

MSAA x4 Support (Anti-Aliasing to the rescue)(Experimental) - You can now enable MSAA x4 support in any application (System Mode Apps fully supported) by simply using the PIB_ENABLE_MSAA flag. It's that easy! This is in an experimental state, and FBOs may suffer. Feel free to open up an Issue on Github.
Note: System Applications will need a light overclock for even simple things. By light, I mean a bump from 111MHz on the GPU to 166MHz

Bugfixes:
  • Fixed incorrect usage of EGL 1.5's eglGetProcAddresss. Using EGL 1.5 features now has to be manually enabled using the PIB_GET_PROC_ADDR_CORE flag
  • Fixed glGetBooleanv always returning GL_FALSE when using GL_SHADER_COMPILER as the symbolic constant and ShaccCg is enabled
  • Fixed eglSwapInterval would always be locked to 1 no matter what value was entered
  • Fixed Libc and FIOS2 always attempting to be started no matter what
  • Fixed ability to double initialize/terminate and added new error codes to reflect the error messages

Enjoy the update! Will be in the Dolce SDK packages when available. In the meantime, you can always build it yourself from the repo.

Pigs in a Blanket Repo: https://github.com/SonicMastr/Pigs-In-A-Blanket
« Last Edit: December 09, 2020, 09:57:36 AM by SonicMastr »
Hentai is the Purest Art Form We Have