• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Offtopic › Delfino Plaza v
« Previous 1 ... 12 13 14 15 16 ... 64 Next »

Help with my project (idea), ps1 emulator with VR support?
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Help with my project (idea), ps1 emulator with VR support?
08-03-2015, 12:02 PM (This post was last modified: 08-03-2015, 12:32 PM by jamieyello.)
#1
jamieyello Offline
Babby Junior Member
**
Posts: 22
Threads: 6
Joined: Jan 2013
(irrelevant to Dolphin so I hope the general discussion forum is the right place for this) So I've been looking into a ps1 emulator with 3d support, specifically for the Oculus Rift. I hear the ps1's gpu is hacky and doesn't actually handle the 3d graphics, and because of that a one fits all 3d hack isn't possible. Even though I'm very new to programming in general, lurking behind the scenes and listening to progress is sort of my hobby.

How I imagine getting 3d graphics is by using game specific camera hacks. I'm primarily working on Spyro 2 as the test dummy, and I'm searching for the memory addresses that effect the camera using emucheat. Once I find that, I want to test if the camera effects the game in any way that breaks a TAS recording. If there are none, then I want to take the emulator pcsxr and modify it to run two synchronised emulations at once, each with seperate AR codes. At that point I'll throw in the guts of an Oculus sdk. I've been told AR codes are too simple for my needs, so I'll need to make something to generate new AR codes every frame.

As for the fps hacks originally my plan was to look into how dolphin got it's fps hacks and try to do the same on ps1 games, but I heard about how the ps4 uses some kind of black magic to create artificial frames without actually rendering polygons again to get 1080p 120 fps out of the weak ps4 hardware for the project morpheus headset, and apparently that works very well. I'll have to see if Oculus has something like that. My eggs aren't all in that basket though because I get the feeling there isn't.

It's also worth mentioning that there is a part of Spyro 2 that's 60 fps, during the game over screen it renders spyro flying on top of some bone thing and sitting there doing his idle animation. Can this be directly applied to the rest of the game, say, I just create an ar code that forces 60 at all times?

Any advice/is my thinking flawed in some way?

Edit, Yeah I think I may be in the wrong forum catagory, sorry about that. If a mod wants to move me elsewhere that would be fine.
Find
Reply
08-03-2015, 02:08 PM (This post was last modified: 08-03-2015, 02:16 PM by MayImilae.)
#2
MayImilae Offline
Ambassador of Niche Platform Support
**********
Administrators
Posts: 4,464
Threads: 117
Joined: Mar 2011
*waves her magic moderator wand*

This belongs in Delfino Plaza, since it doesn't relate to Dolphin.

Now, as for your idea... I'm not a coder, so I'm probably wrong, but from my understanding the GPU calculates the 3D geometry as math and sends that information to a 2D graphics system when renders the scene. While it's unconventional, if you could access that step and get the pure geometric calculations, you could, in theory, use that to develop stereographic 3D. Head tracking would be hard... I'm not aware of any freelook-like editing for the view in any playstation emulators, because of how it's GPU works... But since you are going to be intercepting that geometry step anyway, maybe it's possible to edit it there too?
[Image: RPvlSEt.png]
Windows 10 x64 | Core i9-9900k | NVIDIA GeForce RTX 3090 EVGA FTW3 Ultra| 32GB DDR4-3000 | Asus Xonar Essence STX on Logitech Z-2300 | Logitech G903 Hero
MacBook Pro 14in | M1 Max (32 GPU Cores) | macOS 12 | 64GB LPDDR5 6400
Find
Reply
08-03-2015, 02:30 PM
#3
KHg8m3r Offline
Doesn't sleep, just Dolphin and Robots
*******
Posts: 5,842
Threads: 4
Joined: Sep 2013
You could just have the head tracking mapped to the right stick to look around?
Find
Reply
08-03-2015, 03:13 PM
#4
jamieyello Offline
Babby Junior Member
**
Posts: 22
Threads: 6
Joined: Jan 2013
(08-03-2015, 02:30 PM)KHg8m3r Wrote: You could just have the head tracking mapped to the right stick to look around?

It's not a bad idea but sadly the second joystick in this game does nothing.

(08-03-2015, 02:08 PM)MaJoR Wrote: *waves her magic moderator wand*

This belongs in Delfino Plaza, since it doesn't relate to Dolphin.

Now, as for your idea... I'm not a coder, so I'm probably wrong, but from my understanding the GPU calculates the 3D geometry as math and sends that information to a 2D graphics system when renders the scene. While it's unconventional, if you could access that step and get the pure geometric calculations, you could, in theory, use that to develop stereographic 3D. Head tracking would be hard... I'm not aware of any freelook-like editing for the view in any playstation emulators, because of how it's GPU works... But since you are going to be intercepting that geometry step anyway, maybe it's possible to edit it there too?

Wow, that's a lot to take in, but I understand I guess.

Since no ps1 emulator has supported 3d up to this point I kind of assumed it wasn't possible from the hardware end, I kept reading of old threads where people tried and their projects were left in the dust because they got frustrated with the weird hardware, so I figured I'd start with the software end and avoid that whole mess. I think I'll start with camera hacks and if I have success with that (or if I don't for that matter) I'll definitely attempt some kind of one fits all gpu hack. That seems a little over my head at the moment as well.

Thanks for all that information, I guess now I need to figure out how to open and compile this old code.
http://pcsxr.codeplex.com/

I think it needs VS 2010, so that's fun, setting up strange coding environments is on my list of least favorite things to do. 
Find
Reply
08-03-2015, 07:55 PM
#5
degasus Offline
Developer
**********
Developers (Some Administrators and Super Moderators)
Posts: 1,827
Threads: 10
Joined: May 2012
(08-03-2015, 12:02 PM)jamieyello Wrote: I hear the ps1's gpu is hacky and doesn't actually handle the 3d graphics, and because of that a one fits all 3d hack isn't possible. 
Yeah, this depends heavily on how the hardware renders. To be honest, I have no clue about the PS1. But you are maybe lucky, stereo correction doesn't need to hack the vertex stage, only the rasterization + pixel stage. So if the PS1 GPU recieve a list of primitive to rasterize in homogeneous coordinates, you should be fine. As "w" is required for perspective texturing, there is a good luck to get everything you need.
Our way to tear those projections can be found here and here.
Find
Reply
08-05-2015, 04:51 PM
#6
jamieyello Offline
Babby Junior Member
**
Posts: 22
Threads: 6
Joined: Jan 2013
Wow thanks for all the help. I'll probably try modifying the emulator in a way that it's automatically done in rendering after I'm done experimenting with my own method. Speaking of which...

Here's my (very mediocre) progress so far.

https://www.youtube.com/watch?v=mWD7GWDk8Eg&feature=youtu.be

I probably just need to dig for better codes. To be clear what this code is doing is locking the camera somewhere far away from spyro, however, it's not working properly, sometimes items are rendered in the offset position, sometimes the offset isn't applied at all, and sometimes it works properly, but mostly it just flickers between all three. Most importantly though it's effecting input, as spyro will always walk away from the camera, and he'll walk away from the offset position as well, and this will break synchronization. It's possible I'll be able to modify that spyro doesn't always walk away from the camera, but I'm not optimistic that other things won't be broken as well in the same way. Maybe this isn't what's happening but it's too buggy to tell for sure.

Also... headphones warning. Elora is overdriven.
Find
Reply
08-09-2015, 12:40 PM (This post was last modified: 08-14-2015, 09:13 AM by jamieyello.)
#7
jamieyello Offline
Babby Junior Member
**
Posts: 22
Threads: 6
Joined: Jan 2013
Alright, hi, I'm back again and I have more problems.

I don't think the gecko codes are going to work. At all. I finally found the addresses to manipulate the camera 100%, but Spyro still walks away from the camera wherever it is. I can't fix that with gecko codes, but it was still worth a shot imo.

So I decided to look into the source code, and I get this when trying to compile
[Image: HgG0P8P.png]

Any advice? I was told pcsxr would only compile with VS 2010, so I tried doing it there and got the same problem. 90% of all my problems in life have to do with setting up programming environments.

Edit Fixed my problems, changed from debug to release when compiling. Pretty simple and stupid mistake. I also found that I don't need to mess with the emulator just the gpu dll plugin, so I'm using PEOpS
Find
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode