this post was submitted on 14 May 2025
408 points (99.5% liked)

PC Gaming

10989 readers
1194 users here now

For PC gaming news and discussion. PCGamingWiki

Rules:

  1. Be Respectful.
  2. No Spam or Porn.
  3. No Advertising.
  4. No Memes.
  5. No Tech Support.
  6. No questions about buying/building computers.
  7. No game suggestions, friend requests, surveys, or begging.
  8. No Let's Plays, streams, highlight reels/montages, random videos or shorts.
  9. No off-topic posts/comments, within reason.
  10. Use the original source, no clickbait titles, no duplicates. (Submissions should be from the original source if possible, unless from paywalled or non-english sources. If the title is clickbait or lacks context you may lightly edit the title.)

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 69 points 1 day ago* (last edited 8 hours ago) (19 children)

... Ok, that is legitimately impressive, from a technical standpoint.

Lua is a high level, not exactly very 'fast', very performant language. It is designed to be very, very human readable, and coding noob friendly.

Getting a 3D physics engine to work ... in lua... is not something I would have thought possible.

Usually you need to use a much lower level language to ... actually do that.

EDIT:

A few other commenters have now pointed out that this is actually using LuaJIT... which passes Lua code to a C compiler, quickly translates and then compiles in C, and then runs in C.

So, that makes much more sense, its functionally running in C, a lower level, compiled code language.

Still impressive nonetheless!

[–] [email protected] 10 points 10 hours ago (2 children)

So from what I can read, the Morrowind Script Extender uses LuaJIT instead of regular lua, which does tracing just-in-time compilation. Meaning, and I'm just paraphrasing wikipeda here, it compiles frequently executed sequeneces of operations into machine code.

[–] [email protected] 3 points 8 hours ago* (last edited 8 hours ago)

Now, that is a very relevant detail!

I did not know LuaJIT was even a thing.

Still probably not as performant as ... C++ or Rust or something, that is totally precompiled... but that would explain how this is even possible, a 3D Lua based physics engine.

Yeah, looks like LuaJIT passes a bunch of the Lua code into C, just good ole C, and then dynamically compiles it, then runs the 'translated' C code.

That makes a lot more sense lol.

load more comments (1 replies)
load more comments (17 replies)