View Full Version : Super Mario 64 - What 3rd party video plugin?

14th April 2009, 12:38 AM
Hi there, you guys mention that, to render mario's cap correctly, we need a "3rd party video plugin". What plugin is that, and where can I find it?


14th April 2009, 01:00 AM
When in effect by the invisibility cap Mario is shaded by a so-called "dissolve effect". The times in the game I remember this being used are when invisible, teleporting, or when Bowser, in battling him the first or second time, exits from defeat.

Currently as you've found Jabo hasn't yet implemented a shading feature to emulate this, and this in part is because the very similar "dithered alpha shading" procedure belongs to OpenGL. OpenGL plug-ins incorporating this algorithm are Glide64 and glN64 (once configured), but there is a Direct3D9 plug-in that used a new dithering condition. Orkin introduced the first plug-in rendering with DirectX to emulate this effect, once configured , called "Direct64" (based on plug-in "glN64").

http://glide64.emuxhaven.net/ Glide64
http://gln64.emulation64.com/ glN64
http://www.emutalk.net/showthread.php?t=26677 Direct64

14th April 2009, 01:06 AM
Awesome, thanks! I think a topic ought to be posted with a list of all of the plugins. It looks like the DirectX plugin hasn't been touched since '05, but fortunately, the Glide64 plugin was just updated about a week ago, so I'll mix and match and see what works :)

EDIT: Not to mention, glN64 hasn't been updated since 2003 0.0

14th April 2009, 01:42 AM
No one has managed to contact Orkin, who seems to have never been around in the emulation scene in 2006. He wrote the plugin "glN64", but when he continued writing it he changed the main renderer. When this was DirectX the plug-in became "Direct64", so both projects are fashionably related.
Both of these plug-ins need to be configured to support this effect.

Glide64 uses "GLIDE" to render graphics. It was started by Dave2001 in America, and it is still actively developed today by a new dedicated community. It is a major alternative to Jabo's Direct3D (probably along with RiceVideo, which in activity--namely in constructive forth-coming development--is debated).

Should I really document about the N64 plug-ins? :)

14th April 2009, 02:10 AM
Wow... I'm learning so much :P

Yes, I think you should document them all; graphics, audio, controller, the whole she-bang. I'm not quite sure what RSP is, but it would be worth it to document plugins for it too, I'm sure.

As a little side question, I uploaded a picture to the forums, and it appears there, but it doesn't appear anywhere else when I post. Do you know why?

14th April 2009, 10:57 PM
The first project published to emulate the Nintendo 64 system, Project Unreality, had its time for less than a year in the 1997-1998 range, but the revolutionary emulator UltraHLE defined the first dedicated support to commercial N64 games in 1999. The project didn't even last a month after threats by concerned companies, but it was later in this year that users began to learn about another future in this emulation.

In 2001 various projects to emulate the N64 had to be organized into a community network. (Some developmental discussion is still through the IRC channel today.) It was around this time that a standard for a plug-ins system was engineered so that emulators could interchange between the emulation code for game graphics, sound, and controller input. Of course Project64 was the first to implement this system (suits the careless English), but not all emulator projects still in development at that time adopted this pre-defined system. Most emulators didn't even use plug-ins, and Nemu64 used a customized system for external loading of native code (although the graphics plug-in could later be changed).

Following is a list of known published plug-ins.

Reality Display Processing "Video"

1964 experimental RDP build
Basic CFB Plugin
Daedalus Graphics
Jabo's graphics plug-ins
rcp's D3D
Rice's Daedalus
Rice's Video Plugin
TR64 OpenGL
TR64 Tile Dumper
ziggy's RDP plug-in
Reality Signal Processing "Audio"

Azimer's audio plug-ins
Basic Audio Plugin
Guilhermef's ALSA Plugin
Jabo's DirectSound
JttL's SDL Plugin
LaC's Audio
No Sound
schibo's Audio
TR64 Audio
UHLE Audio
Zilmar's Audio Plugin
Controller Input

Basic KeyBoard Plugin
blight's SDL Input Plugin
Darkman's Direct Input Plugin
Def's N64 Direct Input Plugin
DesktopMan's Basic Keyboard Plugin
Hacktarux's Input Plugin
Jabo's DirectInput
N-Rage's DirectInput8
N64 VirtualPad
Nemu64's controller input plug-in
NooTe's Direct Input Plugin
Obsidian's N64 Pad Input Plugin
Orkin's Input Plugin
SJR's Adaptoid Interface Plugin
TR64 Input Plugin
Reality Signal Co-processing

Hacktarux/Azimer RSP
Project64 co-operatives
ziggy's LLE co-operative
I am happy to give information about any of these plug-ins specifically...or if you have other questions.

If you are interested in various other information this part in some time was pre-written by myself in this manual.

14th April 2009, 11:05 PM
Alright, cool :)

Now, I've gotten this custom materials pack for Super Mario 64. I've put the images into one big Super Mario 64 folder that's in the hires_texture folder which is in the Plugin directory. When I start the game, I managed to grab a picture of the split second loading of the pictures, where it says (Image name) loaded out of a certain number of images. But for some reason, while I'm playing the game, none of the textures look different.

Do you know why that is?

14th April 2009, 11:16 PM
You may need to restart emulation.

Also the retexture may have only changed a certain part of the game...or could even just be a rip of the game's native textures used--in which case no textures for this reason appear changed.

15th April 2009, 12:08 AM
I have restarted P64 all together, but that didn't work. Also, this is a huge texture modification, with the key word being huge. So I'm pretty sure it's not just a rip, and I should be able to see it right away.

15th April 2009, 12:16 AM
So, when you configure the plug-in, in the tab for texture enhancements, load of high-resolution textures into memory is set, and no restrictions on tile size etc. are set?

If the black screen with the text describing the checking of files in the import folder lasts less than like some seconds, textures were not imported and probably verified incorrectly if verified at all.

15th April 2009, 12:50 AM
Umm... I don't see any of those options in any of the graphics plugins :(

15th April 2009, 12:54 AM
Use Rice's Video Plugin.
When you configure that plug-in, if advanced settings were not hidden on interface initialization, various options are available on tab "Texture Enhancement".

Perhaps take a screen shot of this result for my seeing what settings are used and may be of conflict to the texture loading?

15th April 2009, 01:47 AM
Well, here's my screenshot. If you meant "load hi res textures" just in general, I have that checked. I'm not sure about the other thing you were talking about, though.

15th April 2009, 02:41 AM
On re-initialization the game will begin with loaded textures from "Project64\Plugin\hires_textures\SUPER MARIO 64" (unless the internal name of your copy is different as shown by Project64's title bar when the game is playing). Please paste this extension into Windows Explorer to verify this directory exists and that valid PNG/BMP textures are in it.

On another note, recently Glide64 supports retexturing now, and it seems to now be the only plug-in featuring this and the "dissolve effect" shading emulation approach. It has only implemented Rice's texture algorithm, but even then it's still difficult to configure for now to load these textures (especially with the full TMEM emulation export-import conflict), so it is important to see if the RiceVideo system loads the re-texture first.

If you still have not found this working, I am eager to try the retexture myself if you would link to where you got it from or upload if needed.

16th April 2009, 01:53 AM
Ok, here's the link to the texture pack I'm trying: http://www.emutalk.net/showthread.php?t=26270

This is the best support I've ever seen :D

16th April 2009, 03:58 PM
I have two questions about plugins:
- Which plugins are mostly recommended for what systems? Like the GL graphics plugins for GL-based systems and stuff.
- What is "Reality Signal Co-processing" and how does it benefit emulation?

17th April 2009, 12:56 AM
ATI Radeon and NVIDIA GeForce have the best support for the rendering APIs Direct3D and OpenGL and are the only supported setups in emulation of three-dimensional scene games. Voodoofx cases support the GLIDE rendering engine, which is used by Glide64.

Here is a list of five HLE GPUs. Using any of the other RDP plug-ins not in this list but in that list I wrote back there is unlikely to yeild good results for recent setups but more likely to function on older video hardware. These are the only HLE plug-ins I support in my configurations documentation, as while I test the other plug-ins, too, no game seems to need them in particular.

Direct64. This plug-in is a continued project of the OpenGL plug-in glN64 now using DirectX 9 to render geometry. You are fortunate to get the plug-in to function on some Intel graphics cards, but even or especially on older video hardware it can give the best results. The most important prejudice is if it works.
Glide64. This uses GLIDE, but if you have a good graphics card for OpenGL or Direct3D there are wrapper files for Glide64 that emulate GLIDE using what works for you. Good wrapper files that give the best results or approach the quality of not needing one at all, however, ask for some recent hardware. In this case it can be the hardest to get to function, so for normal systems as of 2003-or-so it may not be worth holding on to.
glN64. Formerly named "glNintendo64()". If your card has strong support for OpenGL there are some select games that are very collective for this plug-in's alpha technology, but you can get by at full speed with just mediocre support. In some aspects, it can render better than its improved counterpart Direct64.
Jabo's Direct3D. See the User Manual for Project64 for much information on this plug-in and the support troubleshooting.
Rice's Video Plugin. This is one of the most professionally-developed plug-ins, but it lacks power in general. It started out as the graphics processing code from the Daedalus emulator later compiled as named "Daedalus Graphics" as a development source code release. Rice has refined not all of the oldest existing problems, but he has still turned this engine into something very strong for many systems that is today known as "Rice's Video Plugin". (1964 uses a transitional form named "Rice's Daedalus".) It is the only plug-in offering to choose between Direct3D or OpenGL, but the default engine Direct3D is more supported and has fewer bugs.
Outside of system care, all of these plug-ins are unique in fixes to some N64 games that the others aren't capable of, so it is good to just collect what works for your system.

RSP plug-ins are audio plug-ins, but the file RSP.DLL in the "Project64\Plugin" folder is a co-processor that does some special signal emulation as well as some vector processing. In this plug-in's case it also controls sending of lists to display and audio memory code and thus can nullilfy the other major plug-ins in effect, but it is supposed to just be a co-processing concept. Most N64 emulators do what this fourth kind of plug-in (which is really extraneous) functions for internally in the main emulator code, but 1964 offers this fourth type of plug-in OR using the internal RSCP code.

sorry have to get back to tgp1994 later

17th April 2009, 02:31 AM
ATI doesn't support opengl. Games have to be hacked to support ATIGL.

17th April 2009, 05:55 PM
Thank you for the extensive bit of information! I now have a better understanding of what I should use. :)

17th April 2009, 07:40 PM
So how about the texture pack now?

20th April 2009, 10:35 PM
So how about the texture pack now?

Can you verify some other properties?
Right-click the game for this you have installed in the list of games installed to Project64 in its games browser, and choose "Rom Information".

Tell the values given here / maybe a screenshot.

5th April 2010, 10:07 PM
Sorry to reply to such an old thread, but it seems to have died before it was ever resolved. I am running pj64 1.6, with rice's video plugin 5.5.1. I am trying to use the aforementioned cloudscape's texture pack for SM64. My textures files reside in ..\Project64\Plugin\hires_textures\Super Mario 64. I have verified that Super Mario 64 is the internal name of my rom, and I still don't notice any difference when I run the game.

I am not totally sure that I understood the previous instructions about the settings for rice's plugin. This is the first time that I have tried to use hi-res texture packs, and I don't know if I am missing a step.

Thanks in advance

6th April 2010, 02:43 AM
5XX versions of the plug-in don't support retexturing.

More commonly used versions of Rice's Video Plugin with support for texture replacement are 6.1.0 and 6.1.1 tenth beta.

You seem to have the replacement textures installed right; you just have to set the option to load them. First though as I have said, this option is available if you upgrade from the version of the plug-in you specified.

The most convenient way to upgrade actually is to use mudlord's continuation since Rice's latest beta.

14th April 2010, 03:49 PM
5XX versions of the plug-in don't support retexturing.
Thanks for the tip. In all of the texture packs I had been looking at said they were for Rice's plugin, but none had specified anything about version 6+. I have been testing out mudlord's plugin and Jabo's plugin, and I definately prefer Jabo's. The only problem is that I like the available texture packs for mudlord's much better.

I think that djipi is very talented, but I don't like the cartoon feel that his texture packs give the game. I have found some really cool stuff out there for OOT, but it is all for Rice's plugin. Is djipi the only one working on OOT texture packs for Jabo's plugin, or is there more out there that I am not seeing?