kodi-game / game.libretro

Libretro compatibility layer for the Kodi Game API
GNU General Public License v2.0
37 stars 26 forks source link

Add emulator n64 #51

Open tortu13 opened 5 years ago

tortu13 commented 5 years ago

Hello, Can you add the emulator N64 in the kodi game libretro.

You can download the game but you can not open it because there a no emulator.

Thanks

RobLoach commented 5 years ago

Platform?

tortu13 commented 5 years ago

I use kodi on the platform android. I use this : https://kodi.wiki/view/Libretro to get the emulator. You have not the emulator mupped64 (emulator 64) in the libreto. I do not want to use retroarch. Please add It. Thanks

RobLoach commented 5 years ago

N64, Wii, GameCube, and DS will likely not work because game.libretro doesn't have the GL support yet.

JustMeDaFaq commented 5 years ago

@Roblach the parallel64 libretro should Work with angrylion, shouldnt it? Since its a plain software renderer.

k0st1x commented 4 years ago

@RobLoach is it possible to add n64 addon to kodi for libreelec? or if it already available, so how to add it? what kodi repository should i use?

Hedda commented 2 years ago

ParaLLeXT is a forked version of ParaLLEl N64 -> https://github.com/kodi-game/game.libretro.parallext

ParaLLEl N64 -> https://github.com/kodi-game/game.libretro.parallel_n64

Mupen64Plus-Next (Mupen64) -> https://github.com/kodi-game/game.libretro.mupen64plus-nx

the parallel64 libretro should Work with angrylion, shouldnt it? Since its a plain software renderer.

Yes Angrylion is a software renderer (as well as the Vulkan-based Parallel renderer) but requite a high-end desktop CPU.

lrusak commented 2 years ago

Kodi core still doesn't support OpenGL emulators. We are still working on that.

Hedda commented 2 years ago

Understood, but should not the "Angrylion" renderer also be able to work as a pure software renderer for Parallel N64 as well?

There is this multithreading fork of the Angrylion's software renderer which can be used on modern multi-core desktop CPUs:

https://github.com/ata4/angrylion-rdp-plus

Still active, however not a good replacement for a proper GPU implementation but nice as a multithreaded software renderer:

https://www.ngemu.com/threads/spread-the-word-angrylion-rdp-plus.200521/

Read more about it in this blog article on libretro.com from 2017:

https://www.libretro.com/index.php/cores-progress-report-catering-to-high-end-desktops-dolphin-libretro-core-and-others-now-supports-resolutions-of-8k-and-up/

Parallel N64 – Angrylion software renderer

So accurate software-based emulation of the N64 has remained an elusive pipe dream for decades. However, it seems things are finally changing now on high-end hardware.

This test was conducted on an Intel i7 7700K running at Boost Mode (4.80GHz). We are using both the OpenGL video driver and the Vulkan video driver for this test, and we are running the game Super Mario 64. The exact spot we are testing at it is at the Princess Peach castle courtyard.

Note that we are using the cxd4 RSP interpreter which, despite the SSE optimizations, would still be pretty slow compared to any RSP dynarec, so these results are impressive to say the least. There are games which dip more than this – for instance, Killer Instinct Gold can run at 48fps on the logo title screen, but on average, if you turn off VI filtering, most games should run at fullspeed with this configuration.

In case you didn’t notice already, Vulkan doesn’t really benefit us much when we do plain software rendering. We are talking maybe a conservative 3fps increase with VI filtering, and about 2fps or maybe even a bit less with VI turned off. Not much to brag about but it could help in case you barely get 60fps and you need a 2+ fps dip to avoid v-sync stutters.

Oddly enough, the sole exception to this is GoldenEye 007, where the tables are actually turned, and OpenGL actually leaps ahead of Vulkan quite significantly, conservatively by about 5fps with VI filter applied, and even higher with no VI filter. I tested this many times over to see if there was maybe a slight discrepancy going on, but I got the exact same results each and every time.