[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/games/kolf-ng
From:       Huan Zeng <zh.issac () gmail ! com>
Date:       2009-08-14 7:14:55
Message-ID: 1250234095.500268.24523.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1011257 by hzeng:

fill the texture list with a default set of textures, the default textures are stored \
in courses directory now, should look for a better directory for storing.The current \
texture set is very simple, we should find good looking textures and test for \
well-fitting ranges.


 M  +3 -1      courses/CMakeLists.txt  
 AM            courses/default-grass.jpg  
 AM            courses/default-rock.jpg  
 A             courses/default-water.jpg   courses/water.jpg#1010707
 D             courses/water.jpg  
 M  +29 -0     editor/blender-manager.cpp  
 M  +1 -0      editor/blender-manager.h  
 M  +10 -0     editor/blender-model.cpp  
 M  +1 -0      editor/blender-model.h  


--- trunk/playground/games/kolf-ng/courses/CMakeLists.txt #1011256:1011257
@@ -7,7 +7,9 @@
 	test2-heightmap.png
 	test1-texture.bmp
 	grass_256.jpg
-	water.jpg
+	default-grass.jpg
+	default-rock.jpg
+	default-water.jpg
 )
 
 install(FILES ${kolf_COURSES} DESTINATION ${DATA_INSTALL_DIR}/kolf-ng/courses)
** trunk/playground/games/kolf-ng/courses/default-grass.jpg #property svn:mime-type
   + application/octet-stream
** trunk/playground/games/kolf-ng/courses/default-rock.jpg #property svn:mime-type
   + application/octet-stream
--- trunk/playground/games/kolf-ng/editor/blender-manager.cpp #1011256:1011257
@@ -24,9 +24,15 @@
 #include "blender-texture.h"
 #include "hmcreator-drawingboard.h"
 #include <KAction>
+#include <KStandardDirs>
 #include <QFileDialog>
 #include <QListView>
 
+namespace Kolf
+{
+	const QString TextureFileNamePattern("kolf-ng/courses/%1");
+}
+
 Kolf::BlenderManager::BlenderManager(ImageViewer* imageViewer, QObject* parent)
 	: QObject(parent)
 	, m_model(new TextureListModel())
@@ -47,6 +53,7 @@
 	m_imageViewer->setLeftText(tr("No heightmap loaded"));
 	connect(m_model, SIGNAL(texturesModified(bool)),
 		this, SLOT(setTexturesModified(bool)));
+	loadDefaultTextureSet();
 }
 
 Kolf::BlenderManager::~BlenderManager()
@@ -97,6 +104,28 @@
 	}
 }
 
+void Kolf::BlenderManager::loadDefaultTextureSet()
+{
+	QList<BlenderTexture*> textureList;
+	//TODO:should look for a better texture set and a better default range value set.
+	//default rock
+	QString fileName = KStandardDirs::locate("data", \
Kolf::TextureFileNamePattern.arg(QString("default-rock.jpg"))); +	BlenderTexture* \
rock = new BlenderTexture(fileName);  +	rock->setRange(150, 255, 255);
+	textureList << rock;
+	//default grass
+	fileName = KStandardDirs::locate("data", \
Kolf::TextureFileNamePattern.arg(QString("default-grass.jpg"))); +	BlenderTexture* \
grass = new BlenderTexture(fileName);  +	grass->setRange(60, 140, 220);
+	textureList << grass;
+	//default grass
+	fileName = KStandardDirs::locate("data", \
Kolf::TextureFileNamePattern.arg(QString("default-water.jpg"))); +	BlenderTexture* \
water = new BlenderTexture(fileName);  +	water->setRange(0, 0, 80);
+	textureList << water;
+	m_model->appendItems(textureList);
+}
+
 void Kolf::BlenderManager::startBlending()
 {
 	setHeightmap();
--- trunk/playground/games/kolf-ng/editor/blender-manager.h #1011256:1011257
@@ -54,6 +54,7 @@
 			void addTextures();
 			void addTextures(const QStringList& fileNames);
 			void delTextures();
+			void loadDefaultTextureSet();
 			void startBlending();
 			void showHeightmap();
 			void changeBrightness(int value);
--- trunk/playground/games/kolf-ng/editor/blender-model.cpp #1011256:1011257
@@ -47,6 +47,16 @@
 	}
 }
 
+bool Kolf::TextureListModel::appendItems(const QList<BlenderTexture*>& textureList)
+{	
+	int rows = textureList.count();
+	beginInsertRows(QModelIndex(), m_textureList.size(), m_textureList.size() + rows - \
1); +	m_textureList.append(textureList);
+	endInsertRows();
+	emit texturesModified(true);
+	return true;
+}
+
 bool Kolf::TextureListModel::insertRows(const QStringList &fileNames, int position, \
const QModelIndex &index)  {
 	int rows = fileNames.count();
--- trunk/playground/games/kolf-ng/editor/blender-model.h #1011256:1011257
@@ -36,6 +36,7 @@
 			
 			int rowCount(const QModelIndex &parent = QModelIndex()) const;
 			QVariant data(const QModelIndex &index, int role) const;
+			bool appendItems(const QList<BlenderTexture*>& textureList);
 			bool insertRows(const QStringList &fileNames, int position, const QModelIndex \
&index = QModelIndex());  bool removeRows(int position, int rows, const QModelIndex \
&index = QModelIndex());	  Qt::ItemFlags flags(const QModelIndex &index) const;


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic