I’m not demanding that there be one, but it’d be a lot more helpful than the current method of donating to the project. The question came to me when I was looking at the Cemu Emulators Patreon page, and saw how much money they make, and how much progress they have because of it. So who here would think that the Citra team getting a Patreon would really help development on the emulator, and who would also donate money to it?
Money doesn’t really translate into faster development in an open source project. Not to mention it makes things more complicated.
Who does the money go to? The person that writes the most code? The most features? Fixes games?
Most of the people that develop on Citra prefer to be supported via donations directly for specific features instead of a giant donation pool.
Money is useful when you can pay someone to work full time on the project which is where the progress comes from in the case of RPSC3 and CEMU. The reason it won’t work for citra is there is no one that wants to work on it full time (I have pestered all of the devs about it several times and theres no takers.) So thats why a patreon wouldn’t help citra. It could get a lotta money, but it wouldn’t translate to faster development until you can find someone willing to work full time on the project. As it stands right now, all the devs either work a fulltime job somewhere or are full time students in univerisity.
Lastly, the citra “team” is more like a bunch of people who feel like working on it. CEMU has a real team of 2 developers, but citra has like 20+ people that have made significant contributions over the years to the project, with another 80 or so people that have made smaller changes. New devs come and go as they feel like it.
I think Patreon is useless. Sure you’ll earn revenue with it, but you don’t use any money to produce content, unless you need to buy stuff to create that content.
Yeah that makes sense when you put it like that. I didn’t even know that many of the people working on the project didn’t want to do it full time. I just saw all the progress on CEMU, and saw how much they had on Patreon, and just started assuming things. It’s nice to have more knowledge about this kind of stuff for future references, in case someone else asks about something similar to this in the future. Thanks man for the reply and the knowledge you have bestowed upon me. On a side note CEMU has only 2 Main developers? That’s crazy when you think about how having two full time developers on a project, compared to the many small contributors to this project, have made such a huge difference in progress.
Its very unfair to compare the projects for two main reasons imo. But i’m obviously biased ;D
From a technical standpoint, the two emulators face very different challenges. The 3ds GPU had to be completely reverse engineered as it is an unknown chip (PICA200) from a relatively unknown graphics company. The shaders used by the PICA support several operations that frankly do not map well to desktop graphics cards, meaning citra has been computing a large majority of the graphics pipeline on the CPU, which is slow. Moving whole graphics pipeline to run on the host GPU is proving to be very challenging, but still possible (so when that happens expect a big speed up for people with graphics cards in their computers). The wii u on the other hand has a custom card made by AMD, and it doesn’t have all the same challenges that citra faces. In fact, the open source wii u emulator, decaf, has had a mostly functional openGL backend for a long time now, which lends a lil’ credibility to the statement that a wii u gpu is easier to emulate on desktop graphics cards than the mobile gpu used in citra.
Secondly, having 20 developers doesn’t mean much… they hardly work on the project anyway. Heres the top 20 developers: https://github.com/citra-emu/citra/graphs/contributors and heres how many of them contributed anything last 2 months. https://github.com/citra-emu/citra/graphs/contributors?from=2017-11-12&to=2018-01-13&type=c So roughly 5-6 of the top contributors did anything, and most of the changes affect absolutely nothing a user would care about. Most changes are like that though
Anyway, since its unpaid, no one is forced to work on anything, and no one is forced to make citra faster. This is a key point as CEMU lives and dies on how fast its running. If they stopped making it faster, then people will say “dead project” and stop donating. If they stop donating, then, like a self fulfilling prophesy, it really will become a dead project, so they work very hard on speed. Citra doesn’t have this problem, since theres no money in the project, theres no requirement to make it fast. (Side note: we do like making it fast, but we aren’t obligated to. We do make sure to prevent it from getting slow though) What little donations and ad revenue citra gets goes to paying for web hosting and supporting things like the multiplayer servers we host as well.
If you ask me why i’m not making it fast, i am n00b and trying, but its hard I’ve started on hardware texture en/decoding which should give a good speed boost to several games, but as I said, i’ve got a lot to learn before its finished. (my contributions have mostly been in smaller projects like i made the gui for multiplayer, and i made screen layouts, and mingw builds, and hle swkbd and stuff)
I’m not really comparing the two projects, I’m just pointing out that if Citra had more dedicated developers working on the project, and those that already contribute to the project put more time into getting new worthwhile features into Citra, we would see a significant boost in terms of games that actually run on the program, and at the same time run them at an equal quality as the 3DS, or even better than they could’ve on an actual 3DS.
Also am I coming as too nit picky and kinda of an ass, cause that’s kinda what I’m getting from what I’m posting at the moment? It’s just sounds like I’m complaining.
I apologize if I sound defensive. I’ve answered this same question many many times before, and I personally hate canned responses, so I write a new one every time. But every time i do, my responses get a little more jaded ;D
this is a secondary goal of the emulator. It’ll happen, and no one is actively opposed to speed, but the primary goal is to accurately recreate a 3ds in software. Because of that, we don’t sacrifice quality for speed, so its often hard for people to get a speed boost merged into citra. Making something fast is easier than making something fast without breaking compatibility.
haha, nah its cool. this convo has been pretty chill from my stand point, and you sound pretty reasonable most people haven’t spent 3 years working on citra, so they haven’t seen what i’ve seen. and most people only care about using citra to play games so i enjoy sharing a very different perspective
I understand what you mean man. Having to answer the same question over and over can get kinda repetitive, so at least you’re handling it well
That’s perfectly understandable. I’m just so used to most of the emulators that I use nowadays having them run very fast with pretty much all of the games I play, while also having high quality. Then again most of those have been worked on for so long now, that they’ve ironed most of the kinks, like Dolphin, which runs smoothly on my computer.
Thanks man. Some times when I talk about stuff like this people tend to think I’m just complaining because my computer isn’t good enough to handle it. It’s good to know I’m not coming off like that. I do wish I could help contribute to this project, but sadly I’m still not skilled enough at coding to do anything, so I’m content at the moment with waiting until the emulator makes some more progress, before I can finally playthrough Pokemon Nova Sun with full 30 fps. And also keep up the good work on the emulator my man.