Index: branches/new_class_id/src/lib/graphics/text_engine/font.cc
===================================================================
--- branches/new_class_id/src/lib/graphics/text_engine/font.cc	(revision 9838)
+++ branches/new_class_id/src/lib/graphics/text_engine/font.cc	(revision 9839)
@@ -35,5 +35,4 @@
 {
   this->init();
-
 }
 
@@ -119,4 +118,5 @@
   Material::operator=(font);
   this->data = font.data;
+  this->setTexture(this->data->textureData());
 
   return *this;
Index: branches/new_class_id/src/lib/graphics/text_engine/resource_font.cc
===================================================================
--- branches/new_class_id/src/lib/graphics/text_engine/resource_font.cc	(revision 9838)
+++ branches/new_class_id/src/lib/graphics/text_engine/resource_font.cc	(revision 9839)
@@ -6,20 +6,24 @@
 
 
-ResourceFont::ResourceFont(const std::string& imageName, GLenum target)
-    : NewResource(&ResourceFont::type)
+ResourceFont::ResourceFont(const std::string& fontName, unsigned int renderSize)
+  : Font(), NewResource(&ResourceFont::type)
 {
-  Resources::StorePointer* ptr = this->acquireResource(imageName + ',' + "TEST");
+  assert(!fontName.empty());
+  Resources::StorePointer* ptr = this->acquireResource(fontName + ',' + MultiType((int)renderSize).getString());
 
   if (ptr)
   {
-    PRINTF(5)("FOUND FONT: %s\n", imageName.c_str());
-    this->acquireData(static_cast<ResourceFont::FontResourcePointer*>(ptr)->ptr());
+    PRINTF(5)("FOUND FONT: %s\n", fontName.c_str());
+    this->Font::acquireData(static_cast<ResourceFont::FontResourcePointer*>(ptr)->ptr());
   }
   else
   {
-    PRINTF(5)("NOT FOUND FONT: %s\n", imageName.c_str());
-    std::string fileName = this->NewResource::locateFile(imageName);
-    this->Font::loadImage(fileName, target);
-    this->NewResource::addResource(new ResourceFont::FontResourcePointer(imageName + ',' + "TEST", Resources::KeepLevel(0), this->Font::dataPointer()));
+    PRINTF(5)("NOT FOUND FONT: %s\n", fontName.c_str());
+    std::string fileName = this->NewResource::locateFile(fontName);
+
+    printf("FONTFILE %s TO %s\n", fontName.c_str(), fileName.c_str());
+
+    this->Font::loadFontFromTTF(fileName, renderSize);
+    this->NewResource::addResource(new ResourceFont::FontResourcePointer(fontName + ',' + MultiType((int)renderSize).getString(), Resources::KeepLevel(0), this->Font::dataPointer()));
   }
 }
@@ -28,12 +32,12 @@
 {
   SubString loadValues(loadString, ',');
-  std::string imageName;
-  GLenum target = GL_FONT_2D;
+  std::string fontName;
+  unsigned int renderSize = 20;
   if (loadValues.size() > 0)
-    imageName = loadValues[0];
+    fontName = loadValues[0];
   if (loadValues.size() > 1)
-    target = (GLenum)MultiType(loadValues[2]).getInt();
+    renderSize = (unsigned int)MultiType(loadValues[2]).getInt();
 
-  return ResourceFont(imageName, target);
+  return ResourceFont(fontName, renderSize);
 }
 
Index: branches/new_class_id/src/lib/graphics/text_engine/resource_font.h
===================================================================
--- branches/new_class_id/src/lib/graphics/text_engine/resource_font.h	(revision 9838)
+++ branches/new_class_id/src/lib/graphics/text_engine/resource_font.h	(revision 9839)
@@ -15,5 +15,5 @@
 {
 public:
-  ResourceFont(const std::string& imageName, GLenum target = GL_FONT_2D);
+  ResourceFont(const std::string& fontName, unsigned int renderSize);
   static ResourceFont createFromString(const std::string& loadString);
 
Index: branches/new_class_id/src/lib/graphics/text_engine/text.cc
===================================================================
--- branches/new_class_id/src/lib/graphics/text_engine/text.cc	(revision 9838)
+++ branches/new_class_id/src/lib/graphics/text_engine/text.cc	(revision 9839)
@@ -17,6 +17,6 @@
 
 #include "text.h"
+#include "resource_font.h"
 #include "font.h"
-#include "loading/old_resource_manager.h"
 #include "debug.h"
 
@@ -29,10 +29,13 @@
  */
 Text::Text(const std::string& fontFile, unsigned int textSize)
-    // : _font(fontFile, FONT_DEFAULT_RENDER_SIZE)
+// : _font(fontFile, FONT_DEFAULT_RENDER_SIZE)
 {
   this->registerObject(this, Text::_objectList);
 
   // initialize this Text
-  this->setFont(fontFile, FONT_DEFAULT_RENDER_SIZE);
+  if (!fontFile.empty())
+    this->setFont(fontFile, FONT_DEFAULT_RENDER_SIZE);
+  else
+    this->setFont("fonts/final_frontier.ttf", FONT_DEFAULT_RENDER_SIZE);
   this->_size = textSize;
   this->setSizeY2D(textSize);
@@ -170,22 +173,5 @@
 void Text::setFont(const std::string& fontFile, unsigned int fontSize)
 {
-  Font* newFont = NULL;
-  //  Font* oldFont = this->_font;
-
-  // load a new Font
-  if (!fontFile.empty())
-  {
-    newFont = (Font*)ResourceManager::getInstance()->load(fontFile, TTF, RP_GAME, (int)fontSize);
-    if (newFont == NULL)
-    {
-      //      newFont = &Font::();
-      PRINTF(2)("Font %s could not be loaded, probably file not found\n", fontFile.c_str());
-    }
-  }
-
-  if (newFont == NULL)
-    this->_font = Font();
-  else
-    this->_font = *newFont;
+  this->_font = ResourceFont(fontFile, fontSize);
 
   this->setupTextWidth();
