A quick start for Windows
The goal of this page is to explain, step by step, how to have a working NeL on Windows. This tutorial was made with Visual C++ 2008 Express on Windows Vista.
If you want to compile plugins for 3dsmax, this quick start assumes you have the 3DStudio MAX 2008 SDK installed to ''C:\Program Files\Autodesk\3ds Max 2008 SDK'' (You can also use 3DS MAX 5.1, 6, or 8; all have been tested and have worked). If you don't use 3dsmax, skip lines that talk about 3dsmax.
A large part of the community is currently moving over to CMake for generating cross-platform build environments. It is recommended to try them out in case you experience problems with the developers' projects. More information about how to build using CMake, can be found over here: http://www.opennel.org/confluence/display/~mattr/MtrOpenNelManualNotes#MtrOpenNelManualNotes-BuildingNeLOnWindows
Pre-requirement
Do these steps only the first time you install NeL on a computer.
- Download and install Visual C++ 2008 Express
- Download and install the latest DirectX SDK
- Download and install Tortoise SVN to get the NeL sources
- Download precompiled libraries needed by NeL for Visual Studio 2005 (external8.rar) or for Visual Studio 2008 (external_x86_vs90.zip)
- Create a directory "C:\projects"
- Extract "external8.rar" to "C:\projects\external8", or extract "external_x86_vs90.zip" to "C:\projects\external_x86_vs90"
- Create a directory "C:\projects\opennel"
- Open an explorer in this directory, right mouse click and select "SVN Checkout..."
- Enter "https://nel.svn.sourceforge.net/svnroot/nel/trunk" in the "URL of repository:", be sure that the "Checkout directory" is "C:\projects\opennel" and press "OK"
- Launch Visual C++
- Menu Tools->Options...
- In "Projects and Solution", select "VC++ Directories"
- Set up the "Executable files" - Add the following directories in the following order:
- <default directories>
- <base dir of directx sdk>\Utilities\x86\Bin - [C:\Program Files\Microsoft DirectX SDK (November 2007)\Utilities\x86\Bin]
- <base dir of 3ds max> - [C:\Program Files\Autodesk\3ds Max 2008]
- <base dir of external_vs90>\bin - [C:\projects\external_x86_vs90\bin]
- <base dir of opennel>\nel\lib - [C:\projects\opennel\nel\lib]
- Set up the ''Include files'' - Add the following directories in the following order:
- <default directories>
- <base dir of directx sdk>\Include - [C:\Program Files\Microsoft DirectX SDK (November 2007)\Include]
- <base dir of 3ds max sdk>\maxsdk\include - [C:\Program Files\Autodesk\3ds Max 2008 SDK\maxsdk\include]
- <base dir of 3ds max sdk>\maxsdk\include\CS - [C:\Program Files\Autodesk\3ds Max 2008 SDK\maxsdk\include\CS]
- <base dir of 3ds max sdk>\maxsdk\include\maxscrpt - [C:\Program Files\Autodesk\3ds Max 2008 SDK\maxsdk\include\CS\maxscrpt]
- <base dir of external_vs90>\include - [C:\projects\external_x86_vs90\include]
- <base dir of external_vs90>\include\AL - [C:\projects\external_x86_vs90\include\AL]
- <base dir of opennel>\nel\src\3d - [C:\projects\opennel\nel\src\3d]
- <base dir of opennel>\nel\include - [C:\projects\opennel\nel\include]
- <base dir of opennel>\nel\src\ - [C:\projects\opennel\nel\src]
- Set up the ''Library files'' - Add the following directories in the following order:
- <default directories>
- <base dir of directx sdk>\Lib\x86 - [C:\Program Files\Microsoft DirectX SDK (November 2007)\Lib\x86]
- <base dir of 3ds max sdk>\maxsdk\lib - [C:\Program Files\Autodesk\3ds Max 2008 SDK\maxsdk\lib]
- <base dir of external_vs90>\lib - [C:\projects\external_x86_vs90\lib]
- <base dir of opennel>\nel\lib - [C:\projects\opennel\nel\lib]
Your directory structure will look a little like:
- C:\
- Program Files\Autodesk\3ds Max 2008 SDK - installed by 3DStudio MAX 2008 SDK
- maxsdk
- maxscrpt
- CS
- maxsdk
- projects - created by you
- external8 or external_x86_vs90
- bin
- lib
- include
- opennel - checked out using Subversion
- nel - checked out
- lib - checked out, contains compiled stuff
- src - checked out
- include - checked out
- nel - checked out
- external8 or external_x86_vs90
- Program Files\Autodesk\3ds Max 2008 SDK - installed by 3DStudio MAX 2008 SDK
Compile NeL libraries
- Menu "File->Open->Project/Solution..."
- Select "C:\projects\opennel\nel\nel_8.sln" if you use Visual Studio 2005, or "C:\projects\opennel\nel\nel_vs90.sln" if you use Visual Studio 2008
- Accept to convert the project
- In the toolbar, select "ReleaseDebug" instead of "Debug"
- Menu "Build->Build Solution"
Compile NeL Network Service (NeLNS)
- Menu "File->Open->Project/Solution..."
- Select "C:\projects\opennel\nelns\services_8.sln" if you use Visual Studio 2005, or "C:\projects\opennel\nelns\services_vs90.sln" if you use Visual Studio 2008
- Accept to convert the project
- In the toolbar, select "ReleaseDebug"
- Menu "Build->Build Solution"
Compile NeL Samples
- Menu "File->Open->Project/Solution..."
- Select "C:\projects\opennel\nel\samples\all_8.sln" if you use Visual Studio 2005, or "C:\projects\opennel\nel\samples\all_vs90.sln" if you use Visual Studio 2008
- Accept to convert the project
- In the toolbar, select "ReleaseDebug"
- Menu "Build->Build Solution"
Compile NeL Tools
- Menu "File->Open->Project/Solution..."
- Select "C:\projects\opennel\nel\tools\all_8.sln" if you use Visual Studio 2005, or "C:\projects\opennel\nel\tools\all_vs90.sln" if you use Visual Studio 2008
- Accept to convert the project
- In the toolbar, select "ReleaseDebug"
- Menu "Build->Build Solution"
Compile Snowballs
- Menu "File->Open->Project/Solution..."
- Select "C:\projects\opennel\snowballs2\snowballs2_8.sln" if you use Visual Studio 2005, or "C:\projects\opennel\snowballs2\snowballs2_vs90.sln" if you use Visual Studio 2008
- Accept to convert the project
- In the toolbar, select "ReleaseDebug"
- Menu "Build->Build Solution"
FOLLOWING IS OUT OF DATE - DON'T READ IT
A Quick Start to Setting Up MS Visual C++ 2005 Express
First you need to download it from Microsoft website, next you need to upgrade it with service pack 1 which fixes several bugs.
If you are under Windows Vista, you will also need another upgrade
Since express version doesn't include a Windows SDK, you need to download it from the MS website.
You will also need the last DirectX SDK
Before launching Visual C++ for the first time, you need to modify some config files :
- in the file "C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops", replace :
AdditionalDependencies="kernel32.lib"
by
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
- in the file "C:\Program Files\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1036\AppSettings.htm", comment lines 441 to 444, so you must have something like :
// WIN_APP.disabled = true; // WIN_APP_LABEL.disabled = true; // DLL_APP.disabled = true; // DLL_APP_LABEL.disabled = true;
Other libraries needed by NeL can be downloaded from Sourceforge, unpack the "external8.rar" archive into "C:\Projects\code\external8".
Finally, you can launch VC++ and configure its paths (some folders may be slightly different) :
- Open C:\Projects\code\nel\nel_8.sln
- Open the MSVC Project Directories Dialog
- Click on Tools
- Click on Options
- Click on the ''Projects'' folder
- Click on ''VC++ Directories''
- Set up the ''Executable files'' - add the following directories are in the following order:
- C:\Program Files\Microsoft DirectX 9.0 SDK (August 2007)\Utilities\x86\Bin
- C:\Program Files\Microsoft Windows Platform SDK\Bin
- C:\3dsmax7
- C:\Projects\code\external8\bin
- Finally C:\Projects\code\nel\lib
- Set up the ''Include files'' - add the following directories are in the following order:
- C:\Projects\code\external8\include\stlport - this directory must be first.
- C:\Program Files\Microsoft DirectX 9.0 SDK (August 2007)\Include
- C:\Program Files\Microsoft Windows Platform SDK\Include
- C:\3dsmax7\maxsdk\include - (These must be before Visual Studios' because you'll get a 'parser' error otherwise)
- C:\3dsmax7\maxsdk\include\maxscrpt
- C:\3dsmax7\maxsdk\include\CS
- C:\Projects\code\external8\include
- C:\Projects\code\nel\src\3d
- C:\Projects\code\nel\include
- C:\Projects\code\nel\src
- Set up the ''Library files'' - add the following directories are in the following order:
- C:\Projects\code\external8\lib
- C:\Program Files\Microsoft Windows Platform SDK\Lib
- C:\Program Files\Microsoft DirectX 9.0 SDK (Augustr 2007)\Lib\x86
- C:\3dsmax7\maxsdk\lib
- C:\Projects\code\nel\lib - you may have to create this directory yourself, it is not checked out by Subversion.