I've been programming for most of my life, touching on a lot of languages, but mostly focusing on web development. Lately I've been bored, and will have a lot of free time, so I want to finally make a 3d game I've had an idea for, for awhile now. It's nothing too big, but I'm in a somewhat unique situation.
I don't like the Unity style of game development. It's fine, it's great even - for most people, but not for me. I like to code, I like looking at code, and I have some things I want to do that engines like Unity just aren't setup for - they try to do too much without specializing in anything. Now this isn't a topic to debate the merits of Unity, I'm not even saying it's bad - because it isn't, it just isn't for me.
With that said, what I want has been hard for me to find and rather than rambling on about what I plan to do, I think a list of things I'm looking for would be a bit better.
- Mutli-platform support. Not mobile or console, but rather Windows, Linux, and Mac
- A decent 3d rendering setup. Nothing as low level as OpenGL bindings, but something that lets me access them if need be.
- OpenGL 3.3, or 4.0 support
- Ability to run at a decent FPS on lower end hardware. Not necessarily integrated graphics, but lower than a 560 and an I5
- Ideally a collection of libraries, a framework, or an engine that is almost exclusively coding and not graphical scene management.
- Not a completely bloated desktop experience, like nwjs and Electron wrapped games would be (>50mB for hello world)
- Decent networking, or there's a decent networking library in that language that I can work with
- Just about any language is fine. I'd prefer to stay away from Javascript for the reason listed above, but as long as it meets my other requirements it's probably fine.
I realize I can probably adjust my ideas to work in something like Unity, but this is less about getting a game made and more about having fun and something to do. I'd also like to eventually have something to show from this, which is why I consider OpenGL bindings too low level.
Sadly my first two choices, Cryengine, and UE4, won't work. They just don't run well on lower end hardware. As for my experience - I've worked with a few engines and frameworks out there, such as Unity, various Haxe engines, Monogame, and a few randoms that I can't remember right now. Sadly all of that previous experience is with 2d, so I'm at a loss for 3d frameworks.