Hacker News new | past | comments | ask | show | jobs | submit | more amirrajan's comments login

> Are there enough Ruby devs to sustain this?

So far so good. We’ve been in business for nearly a decade now (with the game engine going onto year 3).

> Unity, Unreal, React Native game engine, or one of the other (thousand) game engines out there?

Well our ability to deploy to console eliminates most engines as competitors/options. Unreal is a fantastic engine for 3D games. Unity is... well... not that great to be honest.

Other differentiators are on the site.


Unity is just fine. 1000s of shipping successful games. The latest hit game made in Unity is Valheim.

I don't choose games based on their engine I choose them based on if they are fun. Same as I don't choose movies based on what camera was used to shoot them or what software was used to render the CGI scenes.


By that measure, pure hardware-banging from C is just fine too. Heck, thousands of commercial games written in 6502 assembler have been released over the years. Doesn't mean it was an ideal developer experience.

The market for a game engine is not players. Most games could be written with almost anything.


Wait, you're suggesting Ruby is better than Unity? This has to be a joke.


Nope. Not a joke. We’re faster too: https://youtu.be/UuY7CWdvyWM


Your logic isn’t equivalent: in your Ruby example you precalulate the speed for each axis and only add the value to x and y each frame. In the Unity example you do the inefficient “Speed * new Vector3(1,1,0) * Time.DeltaTime” every frame. If you moved that calculation to the start and then add in fixed update they would be equivalent logic”. That is probably the difference you notice.


Sorry, but if an engine developer says that Unity is just a bad engine and your engine is faster, you are just harming yourself and your work, since this is silly.

Unity employed Mike Acton a few years ago, who is now lading their transformation to a data oriented backend. They are switching everything out for a pretty well thought out Entity-Component-System (not the old Component stuff you had in unity, but a way of saving your game data in arrays of the same type for performance, instead of as objects with data that should not be together in memory). I have not kept up in the last year, but already a year ago this was showing many promising results, being able to simulate enormous amounts of agents in games: https://www.youtube.com/watch?v=L9_7QYaeNjc

Unreal and Godot have their good sides (Unreal being great for non-coders and/or if you want to an FPS, Godot being able to bind to many languages in the backend and being open source). But none of them is doing the same huge transformations in the backend as unity.


Looks like the Ruby code in https://gist.github.com/amirrajan/e26fc9de3c20e7c395f6809a99... does a fixed update, so maybe FixedUpdate with Unity would be a better comparison?


Agree. The comparison only works if you don't dig, or not ask questions.


Press F to doubt.

On some tiny synthetic benchmark maybe.

Come back when your engine can handle something even 1% as complex, as say, Dyson Sphere Program.


I suspect that DragonRuby is faster as a 2D game engine and doesn't make sense for a complex 3D game.


I don't believe that either. Unity works just fine for Cuphead, which is a pretty graphically intense game. Plenty of other graphical complicated 2d games too.


I think you're moving the goalposts. Of course Unity can work "just fine" for things like Cuphead. However, DragonRuby is an mRuby wrapper around SDL by the guy who wrote SDL vs. a 3D engine that was reworked into a 2D engine?

Surely Unity has more overhead and DragonRuby can make more optimizations.


GP made a blanket "We're faster" claim. I'm the one moving the goalposts?


Ehh, I could put together a thing that could display several million dots at 60 fps in unity in a few minutes.

(a recent example of some dots I moved) https://twitter.com/LeapJosh/status/1378056437105049603

Not saying DragonRuby isn't the bees knees, I've never used it but appreciate alternatives existing.

Despite that, sprites are the wrong facility for drawing that many dots in unity.


Can you associate a PhysicsBody2D with each one of these?


AFAIK there's GPU analogs for everything physicsBody2d's can do, but not directly.

Per particle gravity and forces are batteries included. If you want GPU particles that can collide with other particles there's Fluvio, it's free.

Here's 65k https://www.youtube.com/watch?v=jwzfr9ppvj4


From an apples to apples standpoint. What you're seeing in the video is DragonRuby Entities vs Unity GameObjects (with full functionality).

They look like particles yes, but the intent was to show the creation of fully featured constructs (not a demonstration of "fire and forget" particles).


So this YT video of 3:47 is going to prove that Ruby is faster and better than Unity? This is like comparing BASIC and C, but making sure BASIC is on a quad-core, and C on a 386 to make the point work.


Unitiy's main strengths are it's asset store and ability to export to consoles/phones, also most people like C#. It also had strong momentum of tutorials and community but that is diminishing now as most are so outdated now and for older versions that they are no longer relevant. Unreal is getting easier everyday and they are getting more assets and more community together so it's eating them from the high end while Godot is eating them from the low end. Since DragonRuby is good at exporting to consoles and most Ruby users like Ruby so it's arguable that they could be better in a lot of ways.


Have any data to back up these claims? Unity keeps growing, just went IPO last year, and is releasing high quality tutorials regularly.


I'm not the one you asked, but using google trends as an indicator, both unity and unreal lose mindshare: https://trends.google.de/trends/explore?date=today%205-y&geo...


I daresay the Godot Engine has more to do with that, than Ruby as a game engine.


Unity deploys to console. You just need to be licensed to build to different console platforms. And saying Unity is not that great is an ignorant statement. What about it isn’t great? And how is DragonRuby better?


This does a good job of summarizing what's wrong: https://news.ycombinator.com/item?id=23271973


Been using Unity for a long time and that is a hyperbolic comment. It’s not nearly as bad as that person makes it out to be.


I’m not sure how to respond frankly. You claimed my statements were ignorant. So in response, I provided a source that I agree with wholeheartedly. And a HN comment thread that provides even more criticisms.

I mean, I can add to what’s already been stated. But I’m not sure it’ll really help further the conversation. Especially when it’s being dismissed as “not nearly as bad”. So... yea.


Details about the runtime are here if you’re interested: http://docs.dragonruby.org/#----what-is-dragonruby?


Owner/CEO/Steward of RubyMotion here.

1. Laurent did sell RubyMotion off (to basically retire). He sold it to me. The guy that built the mobile adaptation of A Dark Room with RubyMotion (which hit the number one spot on the AppStore _and_ the number two spot on Google Play).

2. Since the acquisition, there have been monthly updates to the platform, and measures to slowly open source RM under a _sustainable_ open source model.

3. I have since released 4 other apps using RubyMotion. Combined they have approximately 3.5 million downloads.

4. RubyMotion is _actually_ native (unlike React Native).

5. RubyMotion is definitely not cool anymore. It's battle-hardened, "just works", fast (faster than Swift in fact), and can leverage all the existing Android and iOS libraries out there (which React not-Native can't do out of the box).

6. Email me and I'll hook you up with an Indie license <3.


Amir, thanks for following up. Like I said in the article, I've used RubyMotion in production in the past. We were one of the early adopters and launched at least half a dozens apps in it. We payed for all our licenses. I love the product and this was money very well spent. It allowed us to use the same language (Ruby) in a larger portion of the projects. This was particularly important when some of our clients were small startups with an existing Rails app, and it was important for them to keep the same language for the mobile app.

I just think the support for Android should have happened a lot sooner. But of course this is easier said than done.

Moving forward to React Native is part of the same approach. It's important for us to use a technology that delivers fast in multiple channels and has a great chance of still being relevant in the next 10 to 20 years. And for me, these are the strongest points on Javascript.

And you're correct, React Native is not truly native, but it does the job pretty well without major impacts on usability. RubyMotion is truly native and very well designed IMHO.

Best of luck for the future.


I totally understand the need for Android support back then (and to your point should have happened sooner).

With regards to relevancy, RubyMotion is built on top of LLVM. With regards to Ruby the language itself, it's been around for decades and won't be going anywhere (granted the same can be said for JavaScript).

I'm waiting to see how web assembly will shake things up.

Best of luck to you man (I genuinely mean that). And if you ever decide to come back to RM, I'll be here to help :-)


Thanks. Same here. I truly respect the work that has been done on RubyMotion. Like I said in my post, brilliant people there.


When are you going to open source? will RubyMotion ported to Linux?


>When are you going to open source?

- Build, project templates, dynamic bindings generation (BridgeSupport) have all been open sourced.

- The repl is targeted to be open sourced in Q1 2019.

- The parser is targeted to be open sourced in Q2 2019.

- The rest is TBD. But I bought the website domain dragonruby.org :-D


This has been a big regret of mine. I should never have preceived anyone in a 9 to 5 that way. And as mentioned above, there is nothing wrong with a 9 to 5 (dice or no dice). It’s a prefectly valid course of action to pursue the more important things in life.


>not as necessary (or sufficient) conditions to success but rather necessary conditions to have a chance at success.

Exactly this.


>his apparent lack of curiosity about exactly how his first and only lucky break took place

I completely agree. It's not like he wrote a 300 page book on the whole ordeal or anything. He didn't spend those 300 pages trying desperately to dissect every single day, tweet, email, news post, and website write up between 11/17/2013 and 04/13/2014. Nor did he try to analyze his other assets/how they correlated back to A Dark Room. Now... if he put that kind of effort into understanding A Dark Room's meteoric rise, then maybe his subsequent endeavors would have succeeded. At least he would have been more deserving of those successes.


You can't criticize people for not having information you have. None of that was in your original post. Also the sarcastic 3rd person tone of most of your responses is off-putting. This comment would have been much better if you just stated how you did try to analyze the success of ADR in great depth.


>The instructor stress them to get a job.

This is really good advice. Additionally I'd say don't bet the farm. Some times the best you can do is be that rock/stepping stone for your kin to build a legacy with.


Loved it. Thanks for sharing. Survivorship bias is a problem imho.


Mildly Interesting RTS looks pretty good to be honest. Have you downloaded it? It's surprisingly a lot of fun. Solid review score too.

Oh and totally give A Dark Room a shot. You may find it pretty okay.

PS: I'm totally gonna frame this comment thread. I'm big fan Braid and The Witness. You? Not so much :-)


MIRTS is actually an incredibly shallow take on RTS. I remember playing an extremely similar game back in 2007 and I also remember thinking that game was extremely similar to design docs that I had seen people blogging about a few years earlier.

MIRTS is something I'd expect from a weekend programming jam. It's a minimal effort and it's not surprising that it did minimally well in the marketplace.


It’s unfortunate you had to take this ad hominem.


>there's got to be interesting, useful knowledge in there for other game dev and future generations.

There is, but "the few ruined it for the many". Some who got access to that information tried to "growth hack" their way to a successful app. They started name dropping me to Apple as if they knew me. This isn't a very nice thing to do.


Can’t anyone name-drop you even without such “information”? I wonder what kind of content that would be?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: