//	Darkstar Engine  (c) UnderWorld Interactive Studio (all coding by Svarog    2009)
//
//      Данный файл является частью Darkstar Engine. Любое использование кода файла
//      без согласия компании, является нарушением закона об авторском праве (в слу-
//      чае если не оговорено обратное).
//
//      Имя файла: skybox.cpp
//      Краткое описание: darkstar skybox representation
//

#include <Darkstar/Nature/Sky/skybox.hpp>

using namespace nature;

Skybox::Skybox(const shared_ptr<rs::StaticModel>& skydome, const shared_ptr<rs::BaseTexture>& cubemap)
{
	this->skydome = skydome;
	this->cubemap = cubemap;
	shared_ptr<rs::Material> mat = skydome->getMesh(0)->getMaterial();
	mat->addTexture("sky_cube", cubemap);
};

Skybox::~Skybox()
{

};

shared_ptr<rs::BaseTexture> Skybox::getSkybox() const
{
	return cubemap;
};

void Skybox::draw(const shared_ptr<gs::Camera>& camera)
{
	for(unsigned int i = 0; i < skydome->getMeshesNumber(); ++i)
	{
		skydome->drawMesh(i, camera);
	};
};