⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ogrepaginglandscapeoptions.h

📁 使用stl技术,(还没看,是听说的)
💻 H
字号:
/***************************************************************************
	OgrePagingLandScapeOptions.h  -  description
	-------------------
  begin                : Sun Mar 02 2003
	copyright            : (C) 2003 by Jose A Milan
	email                : spoke2@supercable.es
***************************************************************************/

/***************************************************************************
*                                                                         *
*   This program is free software; you can redistribute it and/or modify  *
*   it under the terms of the GNU Lesser General Public License as        *
*   published by the Free Software Foundation; either version 2 of the    *
*   License, or (at your option) any later version.                       *
*                                                                         *
***************************************************************************/

#ifndef PAGINGLANDSCAPEOPTIONS_H
#define PAGINGLANDSCAPEOPTIONS_H

#include "OgrePagingLandScapePrerequisites.h"
#include "OgreSingleton.h"

namespace Ogre
{

/**
  * A simple class for encapsulating parameters passed in when initializing *
  * a LandScapeRenderable
  */

class PagingLandScapeOptions : public Singleton<PagingLandScapeOptions>
{
public:
	PagingLandScapeOptions();

	~PagingLandScapeOptions();

	void load( const String& filename );
	bool setOption( const String& strKey, const void* pValue );
	bool getOption( const String& strKey, void* pDestValue );
	bool hasOption( const String& strKey );
	bool getOptionValues( const String& strKey, std::list<SDDataChunk>& refValueList );
	bool getOptionKeys( std::list<String>& refKeys );
	static PagingLandScapeOptions& getSingleton(void);
	static PagingLandScapeOptions* getSingletonPtr(void);

	String data2DFormat;
	String textureFormat;

	String landscape_filename;
    String landscape_extension;

    String image_filename;
    bool ImageNameLoad;

    // MAP TOOL OPTIONS
    String Splat_Filename_0;
    String Splat_Filename_1;
    String Splat_Filename_2;
    String Splat_Filename_3;

    String OutDirectory;

    bool Paged;
    bool PVSMap;
    bool BaseMap;
    bool RGBMaps;
    bool ColorMapSplit;
    bool ColorMapGenerate;
    bool LightMap;
    bool NormalMap;
    bool HeightMap;
    bool AlphaMaps;
    bool ShadowMap;
    bool HorizonMap;
    bool LitBaseMap;
    bool LitColorMapSplit;
    bool LitColorMapGenerate;
    bool InfiniteMap;
    bool CoverageMap;
    bool ElevationMap;
    bool HeightNormalMap;
    bool AlphaSplatRGBAMaps;
    bool AlphaSplatLightMaps;

    Real HeightMapBlurFactor;
    
    String ColorMapName;

    Vector3 Sun;
    Real    Amb;
    Real    Diff;
    int    Blur;
    // end of MAP TOOL OPTIONS

	uint maxValue;						//Compression range for the TC height field
	uint minValue;

    uint TileSize;
	uint PageSize;						//size of the page.
	uint world_height;					//world page height, from 0 to height
	uint world_width;					//world page width, from 0 to width

	Real change_factor;				//Determines the value of the change factor for loading/unloading LandScape Pages
	uint max_adjacent_pages;
	uint max_preload_pages;
	Real visible_renderables;			//Numbers of visible renderables surrounding the camera
	Real renderable_factor;			//Determines the distance of loading and unloading of renderables in renderable numbers

	Vector3 scale;

	Real distanceLOD;					//Distance for the LOD change
	Real LOD_factor;


	uint num_renderables;				//Max number of renderables to use.
	uint num_renderables_increment;		//Number of renderables to add in case we run out of renderables
	uint num_tiles;						//Max number of tiles to use.
	uint num_tiles_increment;			//Number of renderables to add in case we run out of renderables

	Real cameraThreshold;				//If the last camera position is >= the the scene is transverse again.
#if defined(_VisibilityCheck)
	Real visibilityAngle;				//Angle to discard renderables
#endif
	uint num_renderables_loading;		//Max number of renderable to load in a single Frame.
    uint maxRenderLevel;
	ColourValue matColor[4];
	Real matHeight[2];

	bool lit;
	bool colored;
    bool coverage_vertex_color;
    bool base_vertex_color;
    bool vertex_shadowed;
    bool vertex_instant_colored;

private:

	ColourValue _getAvgColor(const String tex);

};

}

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -