Thursday, October 23, 2014

SweetFX, shader for Direct3D (Works on PPSSPP's Direct3D 9 Backend)

As I mention in previous post, the Direct3D backend of PPSSPP (and generally) lacks advanced feature like "post processing shader". Thankfully, we can achieve the same result by using 3rd party shader like SweetFX. SweetFX support DirectX 9, 10 and 11. Further explanation and how to get it, go to:  http://www.guru3d.com/files-details/sweetfx-shader-suite-download,31.html . Scroll down to the end of the article, to get the download links.

Usage is very easy. Extract SweetFX to PPSSPP folder like below

tekken 6 ppsspp shader sweetfx direct3d 9 directx
Choosing the effect must be done by editing the "SweetFX_settings.txt" manually. Notepad will do.

To activate an effect/shader, on the CHOOSE EFFECT section, just change it's value to 1. Example to activate CARTOON effect

#define USE_CARTOON 1 //[0 or 1] Cartoon : "Toon"s the image. (Interferes with SMAA, CRT, Bloom, HDR and Lumasharpen)

Also, don't forget to tweak these corresponding options manually until you get result which meet your taste.

   /*-----------------------------------------------------------.
  /                      Cartoon settings                       /
  '-----------------------------------------------------------*/
#define CartoonPower         1.5    //[0.1 to 10.0] Amount of effect .....
#define CartoonEdgeSlope     1.5   //[0.1 to 8.0] Raise this to ..........


Below, some results from tweaking the option above (in red) values. CP=CartoonPower, CES=CartoonEdgeSlope
tekken 6 ppsspp shader sweetfx direct3d 9 directx
CP=9.9 and CES=0.9

tekken 6 ppsspp shader sweetfx direct3d 9 directx
CP=2.9 and CES=0.9

You can apply multiple effect simultaneously, i.e. Cartoon + Monochrome.

tekken 6 ppsspp shader sweetfx direct3d 9 directx
Cartoon effect combined with Monochrome
Get your PSP's Tekken 6 copy from PlayAsia
Nina Williams Figure

Wednesday, October 8, 2014

Direct3D 9 is coming to PPSSPP. [Benchmark Test Video Included]

Since about version 0.9.9.1-456 (development build), PPSSPP officially and explicitly support Direct3D9 (part of DirectX 9) as one of its usable backend. Official because this is not another branch like ANGLE build and explicit because there's an option (even on the menu) to switch anytime between OpenGL and Direct3D (ppsspp restart required). This option was hidden while D3D support still under development.

Great news for everyone with a low-end or even an onboard GPU like me (Intel HD Graphics 3000). Direct3D9 has always been the fastest API for old GPU, but it lacks many advanced features,. like no support for Post Processing Shader and there're still some minor bug, when we switch from Windowed to Fullscreen Mode.

Here's a comparison between OpenGL and Direct3d9 in term of attainable max FPS using Tekken 6 as a test subject. All done in a laptop with Intel Core i3 CPU and Intel HD3000 GPU.


So we got around :
~ 33 FPS for OGL and 
~ 43 FPS for D3D9
Please note, I used Nina's and Lars' 1st outfit on purpose, because both are considered "heavy" to render. And also the "Tunnel Disaster" stage is heavy too.

Note: If you need to upgrade DirectX, get the installer from Microsoft here. or just google it with the keyword: "directx Jun2010 redist". (size about 95.6 MB).

Update: Found a great external shader sofware that works with PPSSPP's Direct3D9, called SweetFX. More in my next post here.

Get your PSP's Tekken 6 copy (or any game related stuffs) from PlayAsia.