|
From: <axl...@us...> - 2009-04-12 23:37:14
|
Revision: 211
http://hgengine.svn.sourceforge.net/hgengine/?rev=211&view=rev
Author: axlecrusher
Date: 2009-04-12 23:37:04 +0000 (Sun, 12 Apr 2009)
Log Message:
-----------
use glu mipmaps
Modified Paths:
--------------
Mercury2/src/Mercury2.cpp
Mercury2/src/MercuryVBO.cpp
Mercury2/src/MercuryVBO.h
Mercury2/src/Texture.cpp
Modified: Mercury2/src/Mercury2.cpp
===================================================================
--- Mercury2/src/Mercury2.cpp 2009-04-12 22:24:37 UTC (rev 210)
+++ Mercury2/src/Mercury2.cpp 2009-04-12 23:37:04 UTC (rev 211)
@@ -83,8 +83,9 @@
if (fpsTimer.Age() > 1)
{
float batches = MercuryVBO::ResetBatchCount()/(float)m_count;
- float binds = Texture::ReadAndResetBindCount()/(float)m_count;
- printf("FPS: %f, VBO batches %f, TBinds %f\n", m_count/fpsTimer.Age(), batches, binds);
+ float VBinds = MercuryVBO::ResetBindCount()/(float)m_count;
+ float Tbinds = Texture::ReadAndResetBindCount()/(float)m_count;
+ printf("FPS: %f, VBO batches %f, TBinds %f, VBinds %f\n", m_count/fpsTimer.Age(), batches, Tbinds, VBinds);
m_count = 0;
fpsTimer = timer;
}
Modified: Mercury2/src/MercuryVBO.cpp
===================================================================
--- Mercury2/src/MercuryVBO.cpp 2009-04-12 22:24:37 UTC (rev 210)
+++ Mercury2/src/MercuryVBO.cpp 2009-04-12 23:37:04 UTC (rev 211)
@@ -40,7 +40,10 @@
InitVBO();
if ( this != m_lastVBOrendered)
+ {
glVertexPointer(3, GL_FLOAT, stride, BUFFER_OFFSET(sizeof(float)*5));
+ ++m_vboBinds;
+ }
//apply all the active textures
for (uint8_t i = 0; i < numTextures; ++i)
@@ -87,6 +90,7 @@
void* MercuryVBO::m_lastVBOrendered = NULL;
uint32_t MercuryVBO::m_vboBatches;
+uint32_t MercuryVBO::m_vboBinds;
/****************************************************************************
* Copyright (C) 2008 by Joshua Allen *
Modified: Mercury2/src/MercuryVBO.h
===================================================================
--- Mercury2/src/MercuryVBO.h 2009-04-12 22:24:37 UTC (rev 210)
+++ Mercury2/src/MercuryVBO.h 2009-04-12 23:37:04 UTC (rev 211)
@@ -20,6 +20,7 @@
static uint32_t BatchCount() { return m_vboBatches; }
static uint32_t ResetBatchCount() { uint32_t t = m_vboBatches; m_vboBatches = 0; return t; }
+ static uint32_t ResetBindCount() { uint32_t t = m_vboBinds; m_vboBinds = 0; return t; }
private:
virtual void InitVBO();
@@ -33,6 +34,7 @@
AlignedBuffer<uint16_t> m_indexData;
static uint32_t m_vboBatches;
+ static uint32_t m_vboBinds;
};
#endif
Modified: Mercury2/src/Texture.cpp
===================================================================
--- Mercury2/src/Texture.cpp 2009-04-12 22:24:37 UTC (rev 210)
+++ Mercury2/src/Texture.cpp 2009-04-12 23:37:04 UTC (rev 211)
@@ -6,6 +6,7 @@
#include <GL/gl.h>
#include <GL/glext.h>
+#include <GL/glu.h>
using namespace std;
@@ -62,6 +63,7 @@
}
glBindTexture(GL_TEXTURE_2D, m_textureID);
+/*
glTexImage2D(GL_TEXTURE_2D,
0,
ByteType,
@@ -71,8 +73,10 @@
ByteType,
GL_UNSIGNED_BYTE,
m_raw->m_data);
+*/
+ gluBuild2DMipmaps( GL_TEXTURE_2D, 3, m_raw->m_width, m_raw->m_height, ByteType, GL_UNSIGNED_BYTE, m_raw->m_data );
- glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
+ glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR_MIPMAP_NEAREST);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
// glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE );
@@ -80,6 +84,8 @@
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
+// gluBuild2DMipmaps( GL_TEXTURE_2D, 3, m_raw->m_width, m_raw->m_height, ByteType, GL_UNSIGNED_BYTE, m_raw->m_data );
+
};
void Texture::Render(const MercuryNode* node)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|