What's new

N64 Glide Plugin

Status
Not open for further replies.

gokuss4

Meh...
is there anyway dave could fix a certain problem with his plug-in? it has to do with lighting and how accurate it is (e.g marios big face in the beginning)
 

Reznor007

New member
I noticed that too. Mario has a hint of red on his face, this does not happen in Jabo's plugin(or UltraHLE).
 
OP
Dave2001

Dave2001

Moderator
I'm not an expert on lighting math, so I'm having a little trouble figuring out what's wrong with my lighting calculations. Can someone download the sources and check the lighting code in 3dmath.cpp calclights() to see if it's correct? light_vector[l] is the direction towards the light, and v->vec is the normal. I think that the problem is that I need a min() or max() somewhere, but I'm not sure where. (see starfox intro to find real problem, something goes negative and it dies as you move the 64 to the left of the characters)
 

Ogy

3Dfx Fanatic.
Dave we have a problem:
when you use the plugin, the plugin searches for the INI and if it can't find it, it creates a new one. the problem is that the INI must be the same name as the DLL and if someone want's to change Glide64.dll to something else the INI will not work anymore.
 

Ogy

3Dfx Fanatic.
i'm sorry for posting these things here but due to time differences it's really hard for me to talk to you on IRC.


anyway, when using RSP: interpreter on some games Glide64 gives this error (but keeps working well) :
 
OP
Dave2001

Dave2001

Moderator
well, that's not Glide64 giving that error, Project64 may be doing it because of an invalid memory access in Glide64 though.

Also, RSP interpreter when I''ve tried it also had problems, make sure that the problem you're giving me does not occur with all plugins.

Anyway, about the Glide64.ini name, I meant for it to be like that. Would you rather me _REQUIRE_ that the name be Glide64.ini, because I can do that too. I did it so that you might be able to have different settings for different games. (of course I will still need to add an INI title to the plugin string for that)
 
Last edited:

Quvack

Member
Regarding the ini:

I'd keep it the same, because usually people wont need to rename the dll anyway, and having the ability to have different settings could be usefull... Maybe an option in the plugin itself to name the ini or select a different may be of use, i dunno :)
 

crhylove

Banned
just for the record....

Ogy said:
i'm sorry for posting these things here but due to time differences it's really hard for me to talk to you on IRC.


anyway, when using RSP: interpreter on some games Glide64 gives this error (but keeps working well) :

and because i'm a total idiot with no real input....

that color scheme is horrible!

:devil:
krhydaddy
 

icepir8

Moderator
Dave2001 said:
I'm not an expert on lighting math, so I'm having a little trouble figuring out what's wrong with my lighting calculations. Can someone download the sources and check the lighting code in 3dmath.cpp calclights() to see if it's correct? light_vector[l] is the direction towards the light, and v->vec is the normal. I think that the problem is that I need a min() or max() somewhere, but I'm not sure where. (see starfox intro to find real problem, something goes negative and it dies as you move the 64 to the left of the characters)

I think I found the mistake.

in rsp_uc00_movemem change:

rdp.light.dir_x = (float)(((BYTE*)gfx.RDRAM)[(a+8)^3]) / 255.0f;
rdp.light.dir_y = (float)(((BYTE*)gfx.RDRAM)[(a+9)^3]) / 255.0f;
rdp.light.dir_z = (float)(((BYTE*)gfx.RDRAM)[(a+10)^3]) / 255.0f;

to:

rdp.light.dir_x = (float)(((signed BYTE*)gfx.RDRAM)[(a+8)^3]) / 127.0f;
rdp.light.dir_y = (float)(((signed BYTE*)gfx.RDRAM)[(a+9)^3]) / 127.0f;
rdp.light.dir_z = (float)(((signed BYTE*)gfx.RDRAM)[(a+10)^3]) / 127.0f;

the light directions are signed byte values ranging from -127 to 127. This is the same mistake I made when I started doing the lighting.

Cya L8r,
Icepir8
:tr64:
 

Ogy

3Dfx Fanatic.
Dave2001 said:
well, that's not Glide64 giving that error, Project64 may be doing it because of an invalid memory access in Glide64 though.

Also, RSP interpreter when I''ve tried it also had problems, make sure that the problem you're giving me does not occur with all plugins.

Anyway, about the Glide64.ini name, I meant for it to be like that. Would you rather me _REQUIRE_ that the name be Glide64.ini, because I can do that too. I did it so that you might be able to have different settings for different games. (of course I will still need to add an INI title to the plugin string for that)

firstly, about the error: i'm sorry it was my mistake... it is caused by PJ64.
secondly, about the name:i believe people will change the name as a result of wanting (like me)to have 2 or more versions of Glide64, but i didn't understand your meaning "have different settings for different games" could you or someone please elaborate.



that color scheme is horrible!


what? it's the default color scheme for win98!
 
OP
Dave2001

Dave2001

Moderator
Ah, beautiful! :) Thanks Icepir8! Such a simple error... I remember having an error like this somewhere else too earlier on.
 
OP
Dave2001

Dave2001

Moderator
Like my layered fog? I CANNOT get it to interpolate right!!! I've tried EVERYTHING. I was considering switching to fog coords instead of a fog table, but I can't get anything to show up when I add the fogcoord parameter. Any ideas why the fog might layer like this instead of interpolating?

(yes, I know the colors are wrong, and it's the wrong distance, these were all test values)
 

crhylove

Banned
just to make sure...

...that everyone knows my head is planted firmly in dave's ass:

You Rock DAVE! great to c the voodoo is still doing new and amazing things after all this time.

:devil:
 
Status
Not open for further replies.

Top