HackerTrans
TopNewTrendsCommentsPastAskShowJobs

myownclone

no profile record

Submissions

Show HN: Quake 1 ported to the Apple Watch

github.com
692 points·by myownclone·4 ปีที่แล้ว·216 comments

comments

myownclone
·4 ปีที่แล้ว·discuss
Good question. In theory - yes. The code is GPLv2 based, redistributing binaries (originals from Id) with my own changes while I also release the source code is compatible with the GPLv2 license, so I think license-wise, it could work. The question is what would Apple say in the app submission review...
myownclone
·4 ปีที่แล้ว·discuss
Huge respect! I think that porting Quake like you did is much more impressive feat than my port to the Watch!

Totally agreed with the reasons for doing ports, huge satisfaction and learning experience; which applies to all of the programming OFC, but here, you also learn from the original codebase (which is in case of Quake phenomenal).
myownclone
·4 ปีที่แล้ว·discuss
Exactly. Code is OSS, but assets are still copyrighted.
myownclone
·4 ปีที่แล้ว·discuss
Wow, that is interesting idea, thanks! But as someone else already said, I think the nausea would be too strong.
myownclone
·4 ปีที่แล้ว·discuss
Thank you! And yes, controls are not convenient.
myownclone
·4 ปีที่แล้ว·discuss
Thanks a lot!
myownclone
·4 ปีที่แล้ว·discuss
LOL!
myownclone
·4 ปีที่แล้ว·discuss
I did not even think about putting it there, and reason is not Apple (although maybe there would be a problem too), but simply the fact that Quake assets are still copyrighted, as opposed to the code. So I would have to replace the whole game asset package with something with friendly license...which would not be ... the original Quake.
myownclone
·4 ปีที่แล้ว·discuss
Yes, I think you are right.
myownclone
·4 ปีที่แล้ว·discuss
I have tried digital crown for this, but it was not too good to use. But thanks for suggestion!
myownclone
·4 ปีที่แล้ว·discuss
Oh, huge respect, sir!
myownclone
·4 ปีที่แล้ว·discuss
I am a game/AI developer / ML researcher, this was just passion project of mine and it was... tens of hours, I do not have the exact numbers. But the biggest setback, which took most of the time, was the audio issues, I thought all the time that my audio backend code is wrong, but it was Watch speaker not liking low freq noise. This on itself could take cca 10-20 hours, I have tried a lot of things before realizing the above mentioned fact.
myownclone
·4 ปีที่แล้ว·discuss
Interesting idea! Watch does not have system browser, there is kinda something like web view (I think) and also some browsers exist on App store, but integrating this with digital crown and gyro would be far harder.

Also debugging would be pain.

And most importantly, performance would be IMHO terrible.

I haven't even though about using WASM, I prefer native code as much as possible. But WASM is actually cool technology in my book :-)
myownclone
·4 ปีที่แล้ว·discuss
Yes! SW renderer was one of the reasons I chose that! :-) Also, source code for id tech games is so well written, architected and highly readable.
myownclone
·4 ปีที่แล้ว·discuss
I have chosen Quake because (arbitrary order): * great game * codebase is well written, highly readable, well architected, there are tons of documentation and also a lot of existing ports to look at for inspiration and reference * SW renderer -> meaning it runs everywhere, rewriting GL renderer to Metal or anything HW accelerated would be much more work
myownclone
·4 ปีที่แล้ว·discuss
Thanks! Great suggestion! There is actually demo running at the end of the video, so the usual quake AI and different enemy archetypes work just fine for single player. I did not think about the ability to play MP arenas with bots, though. And from what I heard, Reaper bot is the best, that's a great idea!
myownclone
·4 ปีที่แล้ว·discuss
Thanks for suggestions! Pushing the crown invokes system UI. * gyroskope to look around: I did try some of it, but it also means that you have to tilt the watch on more axes which usually means you tend to have worse eye contact with the surface of the display. * scroll for walking: I did try, but it wasn't much satisfying to use (I mean even worse than the other controls here :-D) * tap anywhere to fire: good idea!
myownclone
·4 ปีที่แล้ว·discuss
One of the reason I chose Quake (apart from it being awesome game and well written code) is also that it has software renderer, these things have their flaws, but are highly portable. Porting original GLQuake to Metal would be far more taxing.
myownclone
·4 ปีที่แล้ว·discuss
Exactly!
myownclone
·4 ปีที่แล้ว·discuss
Yes sir, you are right, exactly :-) This is highly rewarding in and of itself. + learning experience.