ogrepaginglandscapetexture_instantbasetexture.cpp

来自「使用stl技术,(还没看,是听说的)」· C++ 代码 · 共 80 行

CPP
80
字号
/***************************************************************************
OgrePagingLandScapeTexture_InstantBaseTexture.cpp  -  description
-------------------
begin                : Mon Apr 26 2004
copyright            : (C) 2003 by Jose A Milan
email                : spoke@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.                                   *
*                                                                         *
***************************************************************************/



#include "OgreVector3.h"
#include "OgreColourValue.h"

#include "OgreStringConverter.h"
#include "OgreMaterialManager.h"
#include "OgreTextureManager.h"
#include "OgreTechnique.h"
#include "OgrePass.h"

#include "OgrePagingLandScapeOptions.h"
#include "OgrePagingLandScapeTexture.h"
#include "OgrePagingLandScapeTexture_InstantBaseTexture.h"
#include "OgrePagingLandScapeData2DManager.h"

namespace Ogre
{

    PagingLandScapeTexture_InstantBaseTexture::PagingLandScapeTexture_InstantBaseTexture() : PagingLandScapeTexture()
    {
    }

    //-----------------------------------------------------------------------
    PagingLandScapeTexture_InstantBaseTexture::~PagingLandScapeTexture_InstantBaseTexture()
    {
    }

    //-----------------------------------------------------------------------
    void PagingLandScapeTexture_InstantBaseTexture::_loadMaterial()
    {
	    if ( mMaterial == 0 )
	    {
		    mMaterial = reinterpret_cast<Material *>(MaterialManager::getSingleton().getByName("InstantBaseMaterial"));

		    // Create a new texture using the base image
		    //String commonName = StringConverter::toString(mDataX) + String(".") + StringConverter::toString(mDataZ);

		    //String matname = String("SplattingMaterial.") + commonName;
		    //mMaterial = mMaterial->clone(matname);

		    // Now that we have all the resources in place, we load the material
		    mMaterial->load();
	        mMaterial->setLightingEnabled( PagingLandScapeOptions::getSingleton().lit );
	    }
    }

    //-----------------------------------------------------------------------
    void PagingLandScapeTexture_InstantBaseTexture::_unloadMaterial()
    {
	    if ( mMaterial != 0 )
	    {
		    mMaterial->unload();
		    // We can磘 destroy de material here.
		    //mMaterial -> destroy();
		    //delete mMaterial;
		    //mMaterial = 0;
	    }
    }


} //namespace

⌨️ 快捷键说明

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