Thread: Engines; how do they work?

  1. #1
    Supermassive black hole cboard_member's Avatar
    Join Date
    Jul 2005
    Posts
    1,709

    Engines; how do they work?

    I really need someone to clear this up for me, or link me to somewhere that can.

    I've had the quake2 source code for a while, and I've done some work with the Source engine SDK, and there's on thing I don't understand about game engines which seems to set them apart from other programs.

    When compiled, they produce .dll's. As far as I can see there's no entry point to the app. - no main. Source for example, when compiled, is "turned into" server.dll and client.dll - how the hell does this work?

    I know I'm not explaining it very well; I don't understand how the program "works". Quake 2 is compiled into a .dll too. It's all very confusing to me

    Could someone do their best to explain this to me? Where does the program start?
    Good class architecture is not like a Swiss Army Knife; it should be more like a well balanced throwing knife.

    - Mike McShaffry

  2. #2
    The Right Honourable psychopath's Avatar
    Join Date
    Mar 2004
    Location
    Where circles begin.
    Posts
    1,071
    The dlls generated by the Quake2 source, are basicly just a library of functions, to be used by another app that would use them (the Q2 engine). So, for example, if you were going to create a game with the Q2 engine, you would begin writing a program, that links with the Q2 dlls and libs. (ie, rather than writing your own render function, you would call the Q2 render function).

    -psychopath
    M.Eng Computer Engineering Candidate
    B.Sc Computer Science

    Robotics and graphics enthusiast.

  3. #3
    Deprecated Dae's Avatar
    Join Date
    Oct 2004
    Location
    Canada
    Posts
    1,034
    Heres two articles on how to actually make the library dll's that should explain it quite well. http://www.gamedev.net/reference/art...rticle1672.asp
    Warning: Have doubt in anything I post.

    GCC 4.5, Boost 1.40, Code::Blocks 8.02, Ubuntu 9.10 010001000110000101100101

  4. #4
    Supermassive black hole cboard_member's Avatar
    Join Date
    Jul 2005
    Posts
    1,709
    Thanks for your help guys
    Good class architecture is not like a Swiss Army Knife; it should be more like a well balanced throwing knife.

    - Mike McShaffry

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. strcmp returning 1...
    By Axel in forum C Programming
    Replies: 12
    Last Post: 09-08-2006, 07:48 PM
  2. getline() don't want to work anymore...
    By mikahell in forum C++ Programming
    Replies: 7
    Last Post: 07-31-2006, 10:50 AM
  3. Why don't the tutorials on this site work on my computer?
    By jsrig88 in forum C++ Programming
    Replies: 3
    Last Post: 05-15-2006, 10:39 PM
  4. Problems in getting OpenGL to work
    By zonf in forum C Programming
    Replies: 5
    Last Post: 02-13-2006, 03:48 AM
  5. Search Engines :: Winsock
    By kuphryn in forum Windows Programming
    Replies: 3
    Last Post: 06-18-2002, 12:31 PM