Help with creating a graphically nice world
Posted: Fri Oct 24, 2008 1:00 pm
I'm programming an RTS/FPS combination game as my independent study for my school. It's coming along fine on that respect, but my game graphically looks like crap, specifically my terrain.
Here's a simple image of what my map looks like with a valley, http://img232.imageshack.us/my.php?image=temp1xm9.jpg.
My game will consist of large outdoor environments, and so my original thought and execution has been to use height maps. Unfortunately, I'm currently just using free one's I've found online since I myself am extremely artistically, creatively, graphically retarded. I was wondering, if there was any assistance I could get. Maybe a recommendation for a program, a recommendation for another file format, recommendation for code that may graphically help such as lighting, or someone that would be willing to help me out (I'm willing to compensate, PM me).
This is the extent of the amount of code I have that deals with graphics.
Here's a simple image of what my map looks like with a valley, http://img232.imageshack.us/my.php?image=temp1xm9.jpg.
My game will consist of large outdoor environments, and so my original thought and execution has been to use height maps. Unfortunately, I'm currently just using free one's I've found online since I myself am extremely artistically, creatively, graphically retarded. I was wondering, if there was any assistance I could get. Maybe a recommendation for a program, a recommendation for another file format, recommendation for code that may graphically help such as lighting, or someone that would be willing to help me out (I'm willing to compensate, PM me).
This is the extent of the amount of code I have that deals with graphics.
Code: Select all
irr::video::E_DRIVER_TYPE driverType = irr::video::EDT_OPENGL;
irr::IrrlichtDevice* device = irr::createDevice(driverType, irr::core::dimension2d<irr::s32>(windowWidth, windowHeight));
irr::video::IVideoDriver* driver = device->getVideoDriver();
irr::scene::ISceneManager* smgr = device->getSceneManager();
irr::gui::IGUIEnvironment* env = device->getGUIEnvironment();
driver->setTextureCreationFlag(irr::video::ETCF_ALWAYS_32_BIT, true);
irr::scene::ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS(0, 100.0f, 1200.f);
camera->setPosition(irr::core::vector3df(7200, 4210, 9000));
camera->setTarget(irr::core::vector3df(2397*2,343*2,2700*2));
camera->setFarValue(120000.0f);
device->getCursorControl()->setVisible(false);
irr::scene::ITerrainSceneNode* terrain = smgr->addTerrainSceneNode(
"heightmap.bmp",
0,
-1,
irr::core::vector3df(0.f, 0.f, 0.f),
irr::core::vector3df(0.f, 0.f, 0.f),
/*irr::core::vector3df(200.f, 15.f, 200.f)*/irr::core::vector3df(80.f, 60.f, 80.f),
irr::video::SColor(255, 255, 255, 255),
500,
irr::scene::ETPS_17,
15
);
terrain->setMaterialFlag(irr::video::EMF_LIGHTING, false);
terrain->setMaterialTexture(0, driver->getTexture("terrain-texture.jpg"));
terrain->setMaterialTexture(1, driver->getTexture("detailmap3.jpg"));
terrain->setMaterialType(irr::video::EMT_DETAIL_MAP);
terrain->scaleTexture(1.0f, 20.0f);