View Single Post
Old 04-14-2005, 04:48 PM   #6 (permalink)
Valmont
[code][/code] enforcer
 
Valmont's Avatar
 
Join Date: Mar 2003
Location: Netherlands
Posts: 1,544
Valmont is on a distinguished road
I can't get the irrlicht library to work so I can't compile to test. However, this is the setup basically:

main.cpp:
Code:
#include "CTerrainNodes.h" #include <irrlicht.h>

#pragma comment(lib, "Irrlicht.lib");

int main()
{
  video::IVideoDriver* driver = device->getVideoDriver();
  scene::ITerrainSceneNode* smgr =  device->getSceneManager();
  
  CTerrainNodes TNodes(driver, smgr);
  TNodes.RenderTerrain();
}
CTerrainNodes.h:
Code:
#ifndef CTerrainNodes_h
#define CTerrainNodes_h

using namespace irr;

class CTerrainNodes
{
public:
   CTerrainNodes(video::IVideoDriver*, scene::ITerrainSceneNode*);
);
   void RenderTerrain();
private:
   scene::ITerrainSceneNode* terrain;
   scene::ITerrainSceneNode* smgr;
   video::IVideoDriver* driver;
};

#endif
CTerrainNodes.cpp:
Code:
#include <stdio.h>
#include <wchar.h>
#include <irrlicht.h>
#include "CTerrainNodes.h" using namespace irr;

#pragma comment(lib, "Irrlicht.lib")


CTerrainNodes::CTerrainNodes(video::IVideoDriver* driver, scene::ITerrainSceneNode* smgr) 
  : smgr(smgr), driver(driver);
{ }

void CTerrainNodes::RenderTerrain( )
{
   // add terrain(center) scene node
   terrain = smgr->addTerrainSceneNode( "tiles/tile.bmp");
   
   terrain->setScale(core::vector3df(10, 2, 10));
   terrain->setPosition(core::vector3df(0,0,0));
   terrain->setMaterialFlag(video::EMF_LIGHTING, false);
   terrain->setMaterialTexture(0, driver->getTexture("textures/grassdark.bmp"));
   terrain->scaleTexture(1.0f);
}
__________________
Valmont is offline   Reply With Quote