You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The GPU portion of the render seems pretty negligible. Most the rendering is done in software by pixman and rest of easyrpg core. The only slow part of sf2d was the software texture conversion which you already changed. I don't see citro3d helping at all, there is going to have to be a more elaborate change which may not be worth the effort.
citro3D can help a lot at least for shaders usage (since if i'm not wrong, sf2dlib doesn't allow shaders swapping ) for some CPU intensive calculations like HARD_LIGHT_OP used for screen tone ( #11 )
The way the rendering code of the Player is designed makes it not really usable for hardware rendering. This should be refactored someday :/.
Because the GPU of the 3DS can directly access normal RAM you save the slow up/download and you can probably just ask the GPU to do most blitting operations instead of Pixman.
I don't know how to use GPU_COMBINEFUNC but GPU_ADD sounds like OP_OVERLAY and GPU_REPLACE like OP_SRC. Maybe they can be used instead. But at least on the map most blit operations are just 16x16 pixel, so issuing the command to the GPU takes longer then the operation I assume.
I'm also not really good in 3D programming. I play around a bit with OpenGL before I dare to touch citro3d.
In some games, renderer is too heavy and makes such games completely unplayable on O3DS (6-7 fps).
A suggestion could be to trying swapping from libsf2d to libcitro3d and seeing if it's faster.
The text was updated successfully, but these errors were encountered: