You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
153 lines
4.4 KiB
C
153 lines
4.4 KiB
C
13 years ago
|
// Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
|
||
5 years ago
|
// Copyright (C) 2010-2017 Winch Gate Property Limited
|
||
|
//
|
||
|
// This source file has been modified by the following contributors:
|
||
|
// Copyright (C) 2013-2019 Jan BOON (Kaetemi) <jan.boon@kaetemi.be>
|
||
13 years ago
|
//
|
||
|
// This program is free software: you can redistribute it and/or modify
|
||
|
// it under the terms of the GNU Affero General Public License as
|
||
|
// published by the Free Software Foundation, either version 3 of the
|
||
|
// License, or (at your option) any later version.
|
||
|
//
|
||
|
// This program is distributed in the hope that it will be useful,
|
||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
// GNU Affero General Public License for more details.
|
||
|
//
|
||
|
// You should have received a copy of the GNU Affero General Public License
|
||
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
|
|
||
|
|
||
|
#ifndef CL_GLOBAL_H
|
||
|
#define CL_GLOBAL_H
|
||
|
|
||
|
#include "nel/misc/types_nl.h"
|
||
|
#include "3d_notes.h"
|
||
|
#include "progress.h"
|
||
|
|
||
|
|
||
|
// tmp
|
||
|
#define USE_WATER_ENV_MAP
|
||
|
|
||
|
|
||
|
// ***************************************************************************
|
||
5 years ago
|
namespace NLWEB
|
||
5 years ago
|
{
|
||
|
class CHttpPackageProvider;
|
||
|
}
|
||
|
|
||
13 years ago
|
namespace NL3D
|
||
|
{
|
||
|
class UDriver;
|
||
|
class USCene;
|
||
|
class UInstanceGroup;
|
||
|
class ULandscape;
|
||
|
class UCloudScape;
|
||
|
class UCamera;
|
||
|
class UVisualCollisionManager;
|
||
|
class UMaterial;
|
||
|
class UTextContext;
|
||
|
class UWaterEnvMap;
|
||
12 years ago
|
class IStereoDisplay;
|
||
|
class IStereoHMD;
|
||
10 years ago
|
class CFXAA;
|
||
13 years ago
|
}
|
||
|
|
||
|
class CEntityAnimationManager;
|
||
|
class CSoundManager;
|
||
|
class CContinent;
|
||
|
class CWaterEnvMapRdr;
|
||
|
|
||
|
|
||
|
// ***************************************************************************
|
||
|
|
||
|
enum TBackground
|
||
|
{
|
||
|
StartBackground = 0,
|
||
|
ElevatorBackground,
|
||
|
TeleportKamiBackground,
|
||
|
TeleportKaravanBackground,
|
||
|
ResurectKamiBackground,
|
||
|
ResurectKaravanBackground,
|
||
|
EndBackground,
|
||
7 years ago
|
CustomBackground,
|
||
13 years ago
|
IntroNVidia,
|
||
|
LoadBackground,
|
||
|
};
|
||
|
|
||
|
// Camera Setup
|
||
|
const float SceneRootCameraZNear = 20.0f;
|
||
|
const float SceneRootCameraZFar = 20000.0f;
|
||
|
const float SkyCameraZFar = 500.0f;
|
||
|
const float CameraSetupZNear = 0.15f;
|
||
|
|
||
|
// Misc
|
||
|
const float ExtraZoneLoadingVision = 100.f;
|
||
|
|
||
|
|
||
|
// ***************************************************************************
|
||
5 years ago
|
// Data
|
||
5 years ago
|
extern NLWEB::CHttpPackageProvider *HttpPackageProvider; // Http provider from on-the-fly downloaded game data
|
||
5 years ago
|
|
||
13 years ago
|
// Main System
|
||
|
extern NL3D::UDriver *Driver; // The main 3D Driver
|
||
12 years ago
|
extern NL3D::IStereoDisplay *StereoDisplay; // Stereo display
|
||
|
extern NL3D::IStereoHMD *StereoHMD; // Head mount display
|
||
10 years ago
|
extern bool StereoDisplayAttached; // Is stereo display handling the display mode
|
||
13 years ago
|
extern CSoundManager *SoundMngr; // the sound manager
|
||
|
extern NL3D::UMaterial GenericMat; // Generic Material
|
||
|
extern NL3D::UTextContext *TextContext; // Context for all the text in the client.
|
||
|
|
||
10 years ago
|
// Effects
|
||
|
extern NL3D::CFXAA *FXAA;
|
||
|
|
||
13 years ago
|
// Main 3D Objects
|
||
|
extern NL3D::UScene *Scene;
|
||
|
extern NL3D::UScene *SceneRoot;
|
||
|
extern NL3D::UInstanceGroup *BackgroundIG;
|
||
|
extern NL3D::ULandscape *Landscape;
|
||
|
extern NL3D::UCloudScape *CloudScape;
|
||
|
extern NL3D::UCamera MainCam;
|
||
|
extern NL3D::UVisualCollisionManager *CollisionManager;
|
||
|
#ifdef USE_WATER_ENV_MAP
|
||
|
extern CWaterEnvMapRdr WaterEnvMapRdr;
|
||
|
extern NL3D::UWaterEnvMap *WaterEnvMap;
|
||
|
extern uint WaterEnvMapRefCount;
|
||
|
extern NL3D::UCamera WaterEnvMapSkyCam;
|
||
|
extern NL3D::UCamera WaterEnvMapCanopyCam;
|
||
|
#endif
|
||
|
|
||
|
// Network Walls
|
||
|
extern bool UserCharPosReceived;
|
||
|
extern bool SabrinaPhraseBookLoaded;
|
||
|
|
||
|
// Main scene matrices.
|
||
|
extern NLMISC::CMatrix MainSceneViewMatrix; // Matrix to transform from world space to camera space
|
||
|
extern NLMISC::CMatrix InvMainSceneViewMatrix; // Matrix to transform from camera space to world space
|
||
|
|
||
|
// Misc
|
||
|
extern bool InitCloudScape; // tells that the cloud scape must be reinitialized
|
||
|
extern CEntityAnimationManager *EAM;
|
||
|
extern CProgress ProgressBar;
|
||
|
extern TBackground LoadingBackground;
|
||
7 years ago
|
extern std::string LoadingBackgroundBG;
|
||
13 years ago
|
extern std::string LoadingMusic;
|
||
|
extern CContinent *LoadingContinent;
|
||
|
extern bool ConnectionReadySent;
|
||
|
extern bool PermanentlyBanned;
|
||
|
extern bool IgnoreEntityDbUpdates;
|
||
|
|
||
11 years ago
|
// VR
|
||
|
extern std::vector<std::pair<
|
||
|
std::string, std::string> > VRDeviceCache;
|
||
|
|
||
13 years ago
|
extern std::string Cookie, FSAddr;
|
||
|
extern std::string RingMainURL;
|
||
|
extern bool FreeTrial;
|
||
|
|
||
|
void resetTextContext (const char *font, bool resetInterfaceManager);
|
||
|
|
||
|
#endif // CL_GLOBAL_H
|
||
|
|
||
|
/* End of global.h */
|