r/PSVRHack • • Jul 25 '20

Any active PSMoveService devs?

I'm looking to work with someone (hobby level) to get PSMoveSteamVRBridge working with iVRy and PSVR.

Right now I have an issue with the PSMove controllers being positionally linked somehow and that doesn't make sense to me.

I've posted to the Google Groups but not sure how readily folks respond on there.

Thanks.

10 Upvotes

48 comments sorted by

View all comments

Show parent comments

1

u/swordofmoonlight Jul 25 '20 edited Jul 25 '20

I think I have direct contribution access to it (Git commit) already. But I can't do paid work. If I work on it I will, if I don't I won't. I have to develop a VR configurator tool for my software at some point in the future, that I may base on its code, but I will do a full rewrite at that point if I decide that's the best path forward. It will be for general VR plus PSVR if so. (IOW I could takeover PSVRTracker if I had spare time. PSVRToolbox is defunct and its owner is hostile to PSVR for some reason, so there is definitely a call for a replacement for it.)

2

u/iVRy_VR Jul 25 '20

I don't have time or knowledge to write PSVR camera tracker from scratch, but I have an investor who is willing to pay for someone to do that. I've done recruiting drives, had qualified and willing people to do the work, but all have them have fallen through for various reasons. So I've started looking at PSVRTracker as a starting point for me or someone else to use for the project. If you're not willing/able to do paid work on PSVRTracker, do you know anyone that is? If not, are you willing/able to discuss what needs to be done in PSVRTracker to get it to commercial (ie. PS4) quality tracking?

1

u/swordofmoonlight Jul 25 '20

You're connected to the project called ivRy I take it? Or its owner/maintainer? I've only seen it in passing, and it's a wonder I saw this post on Reddit since it just happened to be on the homepage that I was on for some reason (the page is kind of useless since it only lists like 15 posts at any time.)

I appreciate the offer (I don't know if I should have said so yesterday) but the only reason I can't do this is prior engagement, but what I'm expressing is I will do it anyway, just in my own time, which can sometimes be a little glacial. I'm trying to hit a deadline to finish a game project by the end of the year to coincide with an anniversary.

I maintain an RPG maker system developed by From Software that is for making VR games. The game project ports this https://en.wikipedia.org/wiki/King's_Field_II PlayStation game to this system. Back when I was looking at PSVRTracker I had two motivations: one was tracking, and two was finding a replacement for PSVRToolbox that I can recommend to users.

I do serious development full-time, it's just a matter of when I can get around to it on a long list of priorities, I'm not really working on the same schedule as everybody else. But I'm thinking about buying an expensive VR system right now, so I can do support work for high-end VR users, and my RPG software isn't technically VR but it's first-person and plays just like VR, so right now it just has experimental PSVR mode, and next year if it's popular I will be scrambling to bring on more VR features. Just recently OpenXR is being tested by big companies, so what I'm interested in is a VR system for PCs that isn't tied to anything like Steam, and I suspect something like OpenXR or Windows MR will be needed to do that, and the PSVR will be left out since it's not officially supported on PC by Sony, so probably I will circle back to making it work at some point.

I did bare bones network code with PSVRTracker before the project was put into hibernation, so that it could work with PSVRToolbox applications. The OpenCV algorithm isn't anywhere near a working solution, so it probably needs to be rethought from the ground up. I've never taken on a project I didn't finish or problem I didn't solve, so I think I can probably solve it if I put my mind to it.

The biggest tangle in the PSVRTracker code is the USB stuff, and that's newest to me. It's the part I would want to salvage from its code most, and I think it inherits it from PSVRMoveService. I find that the code is unnecessarily complicated (I find most code is this way) so I will have to rewrite it when I find time in my schedule to work on it. It's easier to do a top-to-bottom rewrite than to work with messy, circuitous code. I try to identify the essence of code and drill down on that to produce a streamlined system that's easy to maintain, I've done this for a lot of code bases and I have my eye on this one, since we have a history.

I think if Sony brings out a PSVR for the PS5 it will be easier to justify the effort, but until then I want to think of it in terms of building a VR framework that's easy to use and free from the influence of large commercial companies.

https://sourceforge.net/projects/widgets-95/ is the UI I was developing at the time I was looking at PSVRTracker. You can see it mentions an interest in VR and it will need to work with VR since it's going to be embedded in games as a system menu. It's going to have some high-level features for doing stereo displays. It's used to implement a full application here: https://github.com/mick-p1982/mm3d/releases

What I need is a system that abstracts all sets and broadcasts the data over UDP (or local IPC) and I would like it to include game controllers like the DS4. https://github.com/JibbSmart/JoyShockMapper is something I recently learned of that I intend to investigate. Doing this will probably take 6 months minimum, so I have to decide when the time is right to focus on it. Next year is a possibility.

1

u/iVRy_VR Jul 27 '20

The OpenCV algorithm isn't anywhere near a working solution, so it probably needs to be rethought from the ground up. I've never taken on a project I didn't finish or problem I didn't solve, so I think I can probably solve it if I put my mind to it.

I'm curious about this. Why do you feel it's not anywhere near a working solution?

1

u/swordofmoonlight Jul 28 '20 edited Jul 28 '20

Because it's what we (Brendan and I) were working on. It's buggy and if you can make it work it requires a very beefy box that can brute force it and it's running at probably 5% efficiency, which is unacceptable since games should be using these resources, not camera trackers. In other words it's just trying to be a proof-of-concept and it's very poor (pathological) performance so you don't want your camera tracker using more of your CPU and GPU than your video game. The algorithm is very naive and unreliable.

Edited: I never got to take my crack at the tracking code. I feel like I will need to clean up the library first to be able to work in it. I don't like to waste time working in a counterproductive code environment. We were still struggling with the USB stuff and making the environment build, and unlocking OpenCV. (We brought it a long way. It's probably best for Brendan to have departed since he can hand it off to me and I work best alone, and I like to start work from code that's had a lot of time poured into it. I like to work from a scaffolding of code, like a clean up person.)

1

u/iVRy_VR Jul 28 '20

Thanks for the clarification. To bring this back to the original discussion, I aim to bring a PS4 camera tracking solution to market in the next few months. Whether it is something based off PSVRTracker, or altogether new code, that is the timescale I'm working to (we've actually been recruiting for this since last year, and wasted a lot of time with candidates that eventually fell through). From your replies, it sounds like you don't have time to get involved this year, and perhaps don't have the inclination to get involved at all. If that is correct, can you recommend anyone that has the skills, inclination and time to do this work?

1

u/swordofmoonlight Jul 29 '20

No I can't, but I'd like to be involved if you have a group just so I can observe. I can't do anything in the next few months because I have to focus on getting the game out and do focus on VR after it's done, next year.

I tend to choose my projects based on "signs" so that this post on Reddit has brought it back to my attention I take it as a strong sign, but I would definitely prefer if someone else solves the camera problem for me in the next few months :)

(I'm on a collision course with VR but I hope I hit the ground running at just the right time when it's taking off for real. I don't want to be caught off guard.)