what is an Engine..
I have herd this every where.. Graphics Engine, Sound Engine, Game Engine. etc etc. I have an idea what they mean.. I thik they are the core of the program or project based on which they are built...
In technical terms are engines classes etc etc which allow other programmers to use these classes to do what they want.. Or is it something else...
An engine can be seen as a component to perform some task. A sound engine can be used to produce sound or to process sound. In terms of object orientation an engine can be a set of objects working together to perform a task. In procedural programming one would talk about a collection of functions to perform specific tasks. Note that I've used the word component. A program can also be a set of classes or functions working together to perform a task, but an engine is often not a standalone program that performs task, but is a component of a program that provides services the program requires. Like producing sound or graphics.
I call something that takes in input and processes it through a systematic process and then gives output. Kinda like a complex function, if you will.
I usually have a graphics engine, sound engine, utility engine, and game engine for all my projects. I then have several sub-engines, like for graphics I'd have a tile engine, or zoning engine if I'm doing 3D, for sound I may have a schedule engine, or maybe seperate sub-engines for sound and music and then pass the output to the main sound engine. The utility engine has all miscellaneous (spelling?) stuff, like loading graphics files or controlling user input.
An engine can mean one thing to someone and something else to someone else though. Some people don't consider sound and graphics to be seperate engines, but instead componets of the game engine.