Update console.h
[Torque-3d.git] / README.md
bloba461b5db092221e19d7c74a20b0e9a8972514a03
1 Torque 3D v3.5.1
2 ================
4 MIT Licensed Open Source version of [Torque 3D](http://www.garagegames.com/products/torque-3d) from [GarageGames](http://www.garagegames.com)
6 More Information
7 ----------------
9 * Torque 3D [main repository](https://github.com/GarageGames/Torque3D)
10 * Torque 3D [GitHub Wiki](https://github.com/GarageGames/Torque3D/wiki)
11 * Documentation is in the [Torque3D-Documentation](https://github.com/GarageGames/Torque3D-Documentation) GitHub repo.
12 * Project Manager is in the [Torque3D-ProjectManager](https://github.com/GarageGames/Torque3D-ProjectManager) GitHub repo.
13 * T3D [Beginner's Forum](http://www.garagegames.com/community/forums/73)
14 * T3D [Professional Forum](http://www.garagegames.com/community/forums/63)
15 * Torque 3D [FPS Tutorial](http://www.garagegames.com/products/torque-3d/fps#/1-setup/1)
16 * GarageGames [Store](http://www.garagegames.com/products)
17 * GarageGames [Professional Services](http://services.garagegames.com/)
19 Pre-compiled Version
20 --------------------
22 In addition to GitHub we also have a couple of pre-packaged files for you to download if you would prefer to not compile the code yourself:
24 * [Complete Torque 3D 3.5.1 zip package](http://mit.garagegames.com/Torque3D-3-5-1.zip) with updated TorqueScript documentation, the *Project Manager*, and compiled versions of the templates.
25 * [Torque 3D Project Manager v2.1](http://mit.garagegames.com/T3DProjectManager-2-1.zip) on its own for use in your T3D forks.
27 If you're looking for an older release see the [Torque 3D Archive](https://github.com/GarageGames/Torque3D/wiki/Torque-3D-Archive)
29 Creating a New Project Based on a Template
30 ------------------------------------------
32 The templates included with Torque 3D provide a starting point for your project.  Once we have created our own project based on a template we may then compile an executable and begin work on our game.  The following templates are included in this version of Torque 3D:
34 * Empty
35 * Full
37 ### Using PhysX ###
39 If you plan on creating a project that uses PhysX you will first need to have the PhysX SDK intalled on your computer.  Without the PhysX SDK in place the project generation step will fail when using either the *Project Manager* or manual project generation methods.
41 PhysX SDK version 2.8.4.6 is required for Torque 3D's PhysX templates.  The following steps are used to install this SDK:
43 1. In a web browser, go to the [NVidia Support Center](http://supportcenteronline.com/ics/support/default.asp?deptID=1949)
44 2. If you do not have an account, you will need to register with them to have the support staff create an account for you.
45 3. If you have an account, login.
46 4. On the middle of the page, on the right, click on Downloads.
47 5. On the far right column, under Old downloads, click More.
48 6. Download the Windows 2.8.4.6 version.
49 7. Run the installer and follow the steps to install it in the default location.
50 8. Depending on your operating system version, you may need to reboot after the installation.
52 ### Using the Project Manager to Create a Project ###
54 The *Project Manager* may be used to create a new game project based on one of the templates that are included with Torque 3D.  If you are using Torque 3D directly from the [GitHub](https://github.com/GarageGames/Torque3D) repository then you will need to get the *Project Manager* from the [Torque3D-ProjectManager](https://github.com/GarageGames/Torque3D-ProjectManager) repo, or download a pre-compiled version from the [Project Manager Wiki Page](https://github.com/GarageGames/Torque3D/wiki/Project-Manager).
56 The following steps use the *Project Manager* to create a new project.  This is a quick summary and more detailed instructions may be found on the [Project Manager Wiki Page](https://github.com/GarageGames/Torque3D/wiki/Project-Manager)
58 1. Run the *Project Manager*.
59 2. Click the *New Project* button.
60 3. Choose a template from the drop down on the right.
61 4. Pick which modules you want to compile into your project by using the *Choose Modules* button.
62 5. Give the project a name.
63 6. Click the *Create* button to create the project.  This will open a new dialog window that shows the progress.
64 7. When it finishes, click the *Finished* button.
65 8. You may click on the *Open Folder* button to go to the project's directory.
67 ### Manually Creating a Project ###
69 We may also manually create a project based on a template.  The following steps outline how to do this:
71 1. Open the *Templates* directory.
72 2. Right-click on the template you would like to use and choose *Copy*.
73 3. Go to the *My Projects* directory and paste the template there.
74 4. Rename the pasted template to the name of your project/game.
75 5. Go into your project's *game* directory and rename all executables, DLL files and the .torsion file (and maybe .torsion.opt) from the template name to that of your project (these files may not be present at this time).
76 6. Open the .torsion file in a text editor and replace all references to the template's name with that of your project (you only need to do this if you plan on using Torsion).  You will need to also do this with the .torsion.opt if it exists.
77 7. Open you project's *source/torqueConfig.h* file in a text editor and change the `TORQUE_APP_NAME` define to the name of your project.
78 8. In your project's *buildFiles/config* directory open each .conf file and find each reference to the template's name and replace it with the name of your project.
79 9. Open your project's *game/main.cs* file in a text editor and change the `$appName` assignment to the name of your project.
80 10. Go to your project's directory and double click on the *generateProjects.bat* to create your project's solution files.
82 Compiling Torque 3D (Windows)
83 -----------------------------
84 If this is the first time you will compile Torque 3D, or if you have added or removed any files to either the standard Torque 3D *Engine/source* directory or your project's *source* directory, you will need to run your project's *generateProjects.bat* file.  This will rebuild your project's solution and project files.  Now follow these steps to compile Torque 3D:
86 1. Navigate to your project's *buildFiles/VisualStudio 2010* directory (or the *2008* directory if that is the version of Visual Studio you are using).
87 2. Double click on your project's .sln file.  This will open Visual Studio.
88 3. When Visual Studio has fully loaded, press `F7` to start compiling your project.
90 Compiling Torque 3D (Linux)
91 -----------------------------
92 This version of Torque 3D supports being run as a dedicated server under Linux.  As with a Windows build you will need to run your project's *generateProjects.command* file to properly generate the required make file.
94 Prior to compiling Torque 3D under Linux, you will need to make sure you have the appropriate libraries and tools installed.  The exact packages will depend on which Linux distribution you are using.  For example, under Ubuntu you will need:
96 * build-essential
97 * nasm
98 * git
99 * php5-cli
100 * libsdl-dev
101 * libogg-dev
103 With everything in place you may now follow these steps to compile Torque 3D:
105 1. Change to you project's *buildFiles/Make_Ded* directory.
106 2. Enter the `make clean` command.
107 3. Enter the either the `make debug` or `make release` command depending on the type of build you wish to make.
108 4. Go to your project's *game* directory.
109 5. To start your game enter the following command (we'll use the name *MyGame* as the example project name):  
110     `./MyGame -dedicated -mission "levels/Empty Terrain.mis"`  
111     where the argument after the `-mission` switch is the path to the mission to load.
113 Accessing the Editors
114 ---------------------
115 From the Main Menu or while in-game, pressing F10 opens the GUI Editor and pressing F11 opens the World Editor.
117 License
118 -------
120 Copyright (c) 2012 GarageGames, LLC
122 Permission is hereby granted, free of charge, to any person obtaining a copy
123 of this software and associated documentation files (the "Software"), to
124 deal in the Software without restriction, including without limitation the
125 rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
126 sell copies of the Software, and to permit persons to whom the Software is
127 furnished to do so, subject to the following conditions:
129 The above copyright notice and this permission notice shall be included in
130 all copies or substantial portions of the Software.
132 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
133 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
134 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
135 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
136 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
137 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
138 IN THE SOFTWARE.