Table of contents
Sample Maps
- Download the sample maps as datasrcs.zip from Tuan's web site.
- Extract the directory datasrcs that you find in your datasrcs.zip into the PLSM/Samples/media/paginglandscape2 directory that you will create in the next section.
- Once you have extracted them, you can enable the terrains in paginglandscape2.cfg and maptools.cfg if needed. CVS users: You are required to do this.
Prebuilt Demo Binaries
- Download the binaries here and extract all files into a directory. It doesn't matter how you call it, but here we shall call it the PLSM directory.
- Download and extract the Sample Maps as described in the previous section. Now you should have several *.raw and *.png textures in this directory: PLSM/Samples/Media/paginglandscape2/datasrcs/.
- Change the resources.cfg in the base directory to the following:
# Resource locations to be added to the 'boostrap' path # This also contains the minimum you need to use the Ogre example framework [Bootstrap] Zip=./OgreCore.zip # Resource locations to be added to the default path [General] FileSystem=./ FileSystem=./fonts FileSystem=./programs FileSystem=./scripts FileSystem=./textures FileSystem=./models FileSystem=./overlays FileSystem=./particle FileSystem=./gui [PLSM2] FileSystem:=./Samples/media/paginglandscape2/ FileSystem:=./Samples/media/paginglandscape2/terrains FileSystem:=./Samples/media/paginglandscape2/materials\textures FileSystem:=./Samples/media/paginglandscape2/models FileSystem:=./Samples/media/paginglandscape2/overlays FileSystem:=./Samples/media/paginglandscape2/materials FileSystem:=./Samples/media/paginglandscape2/materials/scripts FileSystem:=./Samples/media/paginglandscape2/materials/programs FileSystem:=./Samples/media/paginglandscape2/datasrcs
- Run MapSplitter.exe to generate data.
- Change the resources_plsm2.cfg in the base directory to this:
# Resource locations to be added to the 'boostrap' path # This also contains the minimum you need to use the Ogre example framework [Bootstrap] Zip=./OgreCore.zip # Resource locations to be added to the default path [General] FileSystem=./ FileSystem=./fonts FileSystem=./programs FileSystem=./scripts FileSystem=./textures FileSystem=./models FileSystem=./overlays FileSystem=./particle FileSystem=./gui [PLSM2] FileSystem:=./Samples/media/paginglandscape2/ FileSystem:=./Samples/media/paginglandscape2/terrains FileSystem:=./Samples/media/paginglandscape2/materials\textures FileSystem:=./Samples/media/paginglandscape2/models FileSystem:=./Samples/media/paginglandscape2/overlays FileSystem:=./Samples/media/paginglandscape2/materials FileSystem:=./Samples/media/paginglandscape2/materials/scripts FileSystem:=./Samples/media/paginglandscape2/materials/programs FileSystem:=./Samples/media/paginglandscape2/datasrcs
- In the file PLSM\Samples\Media\paginglandscape2\paginglandscape2.cfg change the first line of the file to be
DefaultMap=European_Alpes
- Run Demo_PagingLandScape2.exe from PLSM directory. Use the demo controls to move around. PLSM2 should be succesfully installed now.
WARNING: do not use any of the dll's from the binary pack to compile/run your own plsm2 applications, use the source package.
Ogre SDK Compatible Install
First of all you need the stable Ogre SDK from ogre website.
- Unpack/install the SDK
If you want stable, Ogre 1.4 SDK compatible plsm2. Download source from here
VC9.0 + Ogre1.6RC1 Install
- Download/checkout the PLSM2 Source
- Unpack/move the PLSM2 source so it resides OgreSDK-Directory\paginglandscape
- Open the plsm2_vc8 with Visual C++ 2008
- Right click on the __Plugin_PagingLandScapeSceneManager2'''-project and select properties
- On Configuration, select "All the configurations" so both "Release" and "Debug" modes are configured
- Goto Configuration Properties > C/C++ > General and add ".", "OgreSDK-Directory\include" and "OgreSDK-Directory\include\opt" at the Additional Include Directories option
- Goto Configuration Properties > Linker > General and add "OgreSDK-Directory\lib\opt", "." and "OgreSDK-Directory\lib" at the Additional Library Directories
- Goto Configuration Properties > Linker > Input and add "Plugin_OctreeSceneManager_d.lib" at the Additional Dependencies option
- Click Ok
- Right click on the ''Plugin_PagingLandScapeSceneManager2__-project select "Project Only" and the "Build Only..."-option
VC8.0 Install
You will need :
- Get Paging landscape 2 source from here.
- Extract it so that paginglandscape is in the same directory as OgreSDK.
- build the plsm2 Solution. (the _SDK.sln)
VC7.1 Install
You will need :
- Get Paging landscape 2 source from here.
- Extract it so that paginglandscape is in the same directory as OgreSDK.
- build the plsm2 Solution. (the _SDK.sln)
Linux Install
In ogreaddons/paginglandscape/ directory:
- execute bootstrap && ./configure && make && su && make install
- edit Tools/Common/bin/maptools.cfg and Tools/Common/resources.cfg according to you directory structure. (mainly where are the Media)
- cd Sample/Common/bin
- edit maptools.cfg and resources.cfg according to you directory structure.(mainly where are the Media)
- ./Mapsplitter
- Resulting map splitted may be in directory no listed in resources.cgf. add them. (or uncomment them.)
- ./PagingLandScape
Ogre CVS HEAD (Dagon) Compatible Install
If you want latest PLSM2 code, CVS ogre HEAD compatible (Dagon).
Use plsm2 CVS.
Visual Studio Install
Install
VC 7.1 & VC8 Install
You will need :
- latest Ogre CVS update.
- \ogreaddons\paginglandscape from Ogre CVS.
If compiling against CVS :
- build the Ogre Solution. (the _CVS.sln)
Run
- Now you can run demo_paginglandscape2.exe from Samples/common/Debug or Samples/common/Release
Linux Install
In ogreaddons/paginglandscape/ directory:
- execute bootstrap && ./configure && make && su && make install
- edit Tools/Common/bin/maptools.cfg and Tools/Common/resources.cfg according to you directory structure. (mainly where are the Media)
- cd Sample/Common/bin
- edit maptools.cfg and resources.cfg according to you directory structure.(mainly where are the Media)
- ./Mapsplitter
- Resulting map splitted may be in directory no listed in resources.cgf. add them. (or uncomment them.)
- ./PagingLandScape
Subsection
If the above method didn't work try this.
I'm a newbie Ogre & C++ user so what I'm about to describe may not be by the book, some may not be neccessary but at the very least it did install a working system. Hopefully somebody with more experience will correct my errors.
If you haven't already done so you need to download Ogre & Paginglandscape from CVS. Copy Paginglandscape into the same directory where you unpacked Ogre, eg. /home/someone/Ogre/ogrenew & /home/someone/Ogre/paginglandscape.
Install Ogrenew with the usual bootstrap, ./configure&&make&&make install routine. I like to use checkinstall ( http://asic-linux.com.mx/~izto/checkinstall/ ) as this keeps track of all the files and builds a package for your system & installs that, which is an easy way to keep your box tidy.
a) In /paginglandscape/configure.in,
below "AM_CONFIG_HEADER(config.h)"
add:-
dnl Next line added
AC_LANG_CPLUSPLUS
above the "AC_CHECK_LIB" statements
add:-
dnl Next line added
PKG_CHECK_MODULES(OGRE, OGRE >= 1.2)
below the "AC_CHECK_FUNC" statements
add:-
dnl added checks
AC_CHECK_FUNCS(floor)
AC_CHECK_FUNCS(memset)
AC_CHECK_FUNCS(pow)
AC_CHECK_FUNCS(sqrt)
AC_CHECK_HEADERS(malloc.h)
AC_CHECK_HEADERS(sys/param.h)
AC_C_CONST
AC_FUNC_MEMCMP
AC_HEADER_STDBOOL
AC_PROG_RANLIB
AC_TYPE_SIZE_T
AC_C_INLINE
dnl end of added checks
above the "dnl Detect endianness" statement
add:-
dnl Next 2 lines added
AC_SUBST(OGRE_CFLAGS)
AC_SUBST(OGRE_LIBS)
b) In paginglandscape/Tools/MapSplitter/Makefile.am
add a new line:-
LDADD = @OGRE_LIBS@
c) In paginglandscape/Tools/MapSplitter/src/Makefile.am.
In the line reading "MapSplitter_LDADD = -lOgreMain"
add $(OGRE_LIBS) so that it reads
MapSplitter_LDADD = -lOgreMain $(OGRE_LIBS)
d) In paginglandscape/Samples/PagingLandScape2/src/Makefile.am.
In the line reading "PagingLandScape2_LDADD = $(top_srcdir)/PlugIns/PagingLandScape2/src/Plugin_PagingLandScape2.la"
add $(OGRE_LIBS) so that it reads
PagingLandScape2_LDADD = $(top_srcdir)/PlugIns/PagingLandScape2/src/Plugin_PagingLandScape2.la $(OGRE_LIBS)
e) Copy ExampleApplication.h & ExampleFrameListener.h from ogrenew/Samples/Common/include to paginglandscape/Samples/Common/include
f) In paginglandscape/Plugins/PagingLandScape2/src/OgrePagingLandScapeAxisAlignedBoxSceneQuery.cpp.
add the following if they are not already included:-
#include "OgrePagingLandScapeTile.h" #include "OgrePagingLandScapePage.h" #include "OgrePagingLandScapePageManager.h" #include "OgrePagingLandScapeData2D.h"
f)Make Bootstrap excutable then do Bootstrap, ./configure, make etc.
Check that everything installed Ok by looking in /usr/local/include for the OGRE & PAGINGLANDSCAPE directories and in /usr/local/lib/OGRE for the PagingLandScape2 libraries.
g) Follow the instructions at http://tuan.kuranes.free.fr/Ogre.html for downloading and installing datasrcs.zip.
h) Find resources.cfg in paginglandscape/Samples/Common/bin and rename it to resources_plsm2.cfg then open it in your favourite text editor and change the default paths according to your setup.
For example, for the setup described here:-
[General] FileSystem=../../../../ogrenew/Samples/Media FileSystem=../../../../ogrenew/Samples/Media/fonts FileSystem=../../../../ogrenew/Samples/Media/materials/programs
and so on
We don't have fonts in fonts in the paginglandscape media directory so you can delete or comment out that line in the PLSM section.
i) cd /paginglandscape/Samples/Common/bin
NB.
Before using ./MapSplitter TsmTerrain needs a colormap named terrain_texture.jpg which doesn't exist in the datasrcs directory. However there is a terrain_texture.0.0.jpg in the material/textures directory which I copied and renamed terrain_texture..jpg, leaving it in the materials/textures directory. The extra "." is needed for some reason.
NB. This has been fixed in the latest CVS
After running ./MapSplitter you should see directories of the split maps in paginglandscape/Samples/Media/paginglandscape2/terrains/
j)
Make sure that the new map directories are listed in resources_plsm2.cfg. If not add them.
NB.
In paginglandscape2.cfg I found that I had to change the line "European_Alpes=Alpes" to "alpes=Alpes" before ./PagingLandScape2 would work with this map.
k) After running ./PagingLandScape2 if all has gone according to plan you shold arrive at the Ogre configure dialogue and then at blue filled Ogre render window.
Press F1 a couple of time to clear the debug & help overlays. Then press K key when a small white speck will appear.
Use the W key to zoom in quickly ( may need to zoom out again with the S key). Press M key to switch to camera mode.
You can now use the mouse to look around and zoom in and out at a more respectable rate.
Xpomjon 06:38, 22 February 2007 (CST)
Faq
- I get no terrain ?
Make sure you did run mapsplitter prior to the demo, and that data splitted is available to Ogre (resources.cfg contains the terrain data directory (media/paginglandscape2/terrains/mylandscapename))