Page 1 of 2

LÖVE written in C++?

Posted: Mon Jul 08, 2013 10:52 pm
by Eamonn
I was on gamedev.net, and it says LÖVE was written in C/C++. I'm using LibGDX(I'm not leaving LÖVE, I still löve this framework but I want to make phone games too ya know ;) ), and it's a Java Framework, yet it was written in C/C++ for performance reasons, I believe.

Is this true about LÖVE? Thanks!

Re: LÖVE written in C++?

Posted: Mon Jul 08, 2013 11:28 pm
by slime
Yes, LÖVE is written in C++. It also makes use of several libraries which were themselves written in C or C++, depending on the library.

Glancing at libgdx' source, it looks like much (if not all) of it is written in Java.

Re: LÖVE written in C++?

Posted: Mon Jul 08, 2013 11:47 pm
by Eamonn
Thanks slime! :) SDL is C/C++(With bindings to other languages(such as Python(PyGame) and Ruby(RUDL) ) ) I think, so I'd make sense.

Re: LÖVE written in C++?

Posted: Tue Jul 09, 2013 2:06 am
by davisdude
A bit off topic (you and I both have been down this road before :P ) but...
(I'm not leaving LÖVE, I still löve this framework but I want to make phone games too ya know )
Tell me if you ever make a game! I would love to try it! I like playing games from smaller developers. :)

Re: LÖVE written in C++?

Posted: Tue Jul 09, 2013 6:47 am
by T-Bone
If I remeber correctly, LibGDX only uses C++ for some "performance critical sections". Not that it's going to make much of a difference when making 2D games (3D might be a different story, it depends... LibGDX does 3D, doesn't it?).

Re: LÖVE written in C++?

Posted: Tue Jul 09, 2013 2:45 pm
by Eamonn
davisdude wrote:A bit off topic (you and I both have been down this road before :P ) but...
(I'm not leaving LÖVE, I still löve this framework but I want to make phone games too ya know )
Tell me if you ever make a game! I would love to try it! I like playing games from smaller developers. :)
I'll be sure to! :)
T-Bone wrote:If I remeber correctly, LibGDX only uses C++ for some "performance critical sections". Not that it's going to make much of a difference when making 2D games (3D might be a different story, it depends... LibGDX does 3D, doesn't it?).
LibGDX does do 3D! It would make a heck of a difference in 3D! Java is sorta slow, from what I've heard. And also, they have an image somewhere(in one of the projects) and it says it's a "Java/C/C++ Game Engine". It's a really great engine... if you are willing to put up with Java(I'm not particularly fond of Java(I prefer languages like Ruby, Lua and Python because it doesn't take a God awful amount of time to just get setup), but I'm using LibGDX to get my hands dirty in mobile and web development(even though I could use something like JawsJS, Impact(if I ever get $99) or Crafty)(Bracket-Ception! ;) ) ).


The more you know! :awesome:

Re: LÖVE written in C++?

Posted: Tue Jul 09, 2013 2:54 pm
by Bobbias
On the topic of 3D games in java, I went the route of just using LWJGL a while back (not that I finished anything though lol). It's a nearly 1 to 1 binding for opengl in java. You can basically use the C/C++ docs for opengl and rarely run into any issues (aside from when dealing with functions which take arrays or other structures of memory, those require making use of some IntBuffers to pass the memory to things in the right order). Seems to be pretty damn fast as long as you don't use bad rendering techniques (minecraft, I'm looking at you...)

Re: LÖVE written in C++?

Posted: Tue Jul 09, 2013 7:58 pm
by Eamonn
Bobbias wrote:Seems to be pretty damn fast as long as you don't use bad rendering techniques (minecraft, I'm looking at you...)
LibGDX uses LWJGL, except highly abstracted afaik. I really want to make mobile games(maybe not for release, but maybe some) and eventually 3D games :) Game programming is a lot of fun, though some people are trying to make me use GameMaker because I'm 13, which is annoying. But anyway, I don't want to go too off topic. Do the bad rendering techniques contribute to how slow Minecraft is, or is it just natural? I don't really wanna go diving into the Minecraft code because I'll probably just confuse myself.

Re: LÖVE written in C++?

Posted: Wed Jul 10, 2013 4:31 am
by raidho36
Java and mobile has nothing to do with each other: apple uses ObjectiveC, and [decent programmers on] android uses C++.

Given that LWJGL is almost directly tied to native OpenGL libraries, any performance issues is entirely application programmers' fault. Although minecraft's rendering is fine, provided this high amount of polygons rendered simultaneously as it's in the order of magnitude (or something) more than in your average 3d game. The real problem here is that lack of your RAM would force it to continiously load/unload chunks, especially when you move arond a lot, and that causes freezes we're all hate about minecraft so much. My video card renders MC with maximum settings in Full HD >300 FPS when I don't move the player and only look around. So it's your inadequate hardware, not poorly written graphics part; same as blaming Crysis for running like crap on your Pentium III powered PC. Get yourself SSD and 64 GB RAM and enjoy smooth minecraft gameplay.

Re: LÖVE written in C++?

Posted: Wed Jul 10, 2013 5:14 am
by Davidobot
Eamonn wrote:
Bobbias wrote:Seems to be pretty damn fast as long as you don't use bad rendering techniques (minecraft, I'm looking at you...)
LibGDX uses LWJGL, except highly abstracted afaik. I really want to make mobile games(maybe not for release, but maybe some) and eventually 3D games :) Game programming is a lot of fun, though some people are trying to make me use GameMaker because I'm 13, which is annoying. But anyway, I don't want to go too off topic. Do the bad rendering techniques contribute to how slow Minecraft is, or is it just natural? I don't really wanna go diving into the Minecraft code because I'll probably just confuse myself.
Despite all of minecrafts popularity, in reality Minecraft is very badly programmed. Instead of rendering just things that you see, it renders everything, which causes emense lag, and Notch himself admitted that this is true. Just look at Blockscape, much more surfaces, yet it runs smoother. It's all in the coding skill. ;)