-2
\$\begingroup\$

I don't know exactly everything there is to game programming and I forget things so I like to write libraries that are easy to use so I can use the thing that's hard to do such as file serialization. Anyway this brought me to a question, should I write a small game engine that writes code such as rendering objects for me and all I have to do it use a GUI? I know it takes a long time to do but the question is whether it's worth it and will it save time to do it.

\$\endgroup\$

4 Answers 4

2
\$\begingroup\$

Any graphical programming language is really geared towards people who are not programmers. It all deals with abstractions at some level. You'll eventually find some edge case you didn't prepare for, then have to implement that case in your system before you use it.

If you're good enough at programming to write a system that actually works well, then you're a good enough programmer to actually write the code itself or (more likely) more comfortable with just writing the code directly.

If not, then you're likely not going to be able to author a system like you want.

Short answer: no.

That being said, there are engines and tools that abstract out a lot of that stuff for you. Specifically, look at using the Unity engine with the Playmaker addon: http://www.hutonggames.com/showcase.html

\$\endgroup\$
2
\$\begingroup\$

No. What scripting are you even going to support? Write Games, Not Engines. It sounds like you're just trying to make tech for tech's sake, not solve an actual problem. Make a real game and see what comes of that. If you end up with s useful generic game tool, fine. Set out to make an actual, specific game, though.

\$\endgroup\$
0
\$\begingroup\$

One reason you would want to write a game scripting engine is if you wanted your engine to run on multiple platforms. You could then separate programming concerns into the low-level platform details and the high-level game.

Imagine you've written a game that supports PC, iOS and Android. Now you want to put out a major update to the game. Having all 3 platforms share a common scripting language could be the difference between copy/paste and serious programming effort.

\$\endgroup\$
3
  • 3
    \$\begingroup\$ Any kind of significant programming effort to make something cross platform is going to be the same whether you're writing your game code directly or writing an abstraction layer for said game code. \$\endgroup\$
    – Tetrad
    Feb 3, 2013 at 17:30
  • \$\begingroup\$ I think that the usefulness of an abstraction layer increases with the lifespan of the project. \$\endgroup\$
    – Error 454
    Feb 3, 2013 at 23:29
  • \$\begingroup\$ Unity's already cross platform supported and to a degree that an indie developer will never achieve. \$\endgroup\$ May 29, 2017 at 3:34
0
\$\begingroup\$

It can't possibly save time on a single project because whatever you need for the game will need to be in the engine, plus anything the game doesn't need but the engine does.

Generally speaking you should write games, not engines. Writing engines takes longer, and the engine won't be good enough unless you have enough experience to make it correctly, and you won't know what needs to go into it until you have made a full game with it. For that reason, new engines should usually be created based on finished games, not the other way around.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged .