compiler construction - Implementing a game engine specific programming language -


sorry spelling mistakes or basic grammar faults, never @ english @ school... , of course in advance.

my goal make game engine , editor easy use users, can still used develop quality 3d games.

to facilitate users i'd implement custom programming language designing game logic, ai behavior, weapon systems , on. restricting them low level aspects of engine.

eventually make game engine able support multiple platforms, don't have money buy platforms i'd include, can not implemented now...

my first notion build scripting language, i'm worried system overhead of not running user code native. because user example able edit mesh vertices, creating custom path-finding system, or other more computation intensive tasks.

so assumed compiling user code binary best option. , many questions start pop up.

i prefer aware of going on in generated executable, , have full control of result. , not fond use existing tools such llvm generate executable in fear of losing control. , learn more how code ran on cpu @ lower level , memory management , on... because as can myself.

the problems i'm running in are: - considering above generating binary code best option? (or should stick scripting language)

  • currently i'm writing program generating windows exe file , inserting opcodes. okay, or should instead use existing tools llvm?

  • are there legal actions, licenses or such need aware of before generating custom windows exe files?

  • as 1 of goals later deploy engine multiple platforms, hand writing custom program translating user code specific platform instruction set similar x86 instruction set. or lot harder?

i hope explained problem in enough detail. if has questions feel free post, , i'll explain myself.

thanks.

chris

first of u should reconsider idea. if u want game engine used people in both aspects generating games , afterwards modding existing game, u have stick established standards. reason simple - modders beginners in programming, had hard times learning lua, boo,... not have time , afford switch ur custom language. scripting u should stick industry standards.

on other hand u have separate in ur design between mod , content extension doesn't need low level access or had high cpu usage.

considering these facts, highly recommend following :

  • establish mod system engine (based on known language c# or java script)
  • establish scripting interface control behavior of entities / components.

that's common way. if u move away of such established standard, u have serious trouble.


Comments

Popular posts from this blog

yii2 - Yii 2 Running a Cron in the basic template -

asp.net - 'System.Web.HttpContext' does not contain a definition for 'GetOwinContext' Mystery -

mercurial graft feature, can it copy? -