|
From: <cn...@us...> - 2009-06-19 04:21:41
|
Revision: 345
http://hgengine.svn.sourceforge.net/hgengine/?rev=345&view=rev
Author: cnlohr
Date: 2009-06-19 04:21:37 +0000 (Fri, 19 Jun 2009)
Log Message:
-----------
beginnings of a fonter
Added Paths:
-----------
Mercury2/tools/fonter/
Mercury2/tools/fonter/Makefile
Mercury2/tools/fonter/main.cpp
Added: Mercury2/tools/fonter/Makefile
===================================================================
--- Mercury2/tools/fonter/Makefile (rev 0)
+++ Mercury2/tools/fonter/Makefile 2009-06-19 04:21:37 UTC (rev 345)
@@ -0,0 +1,7 @@
+all : hgfonter
+
+CFLAGS= -I/usr/include/freetype2
+CXXFLAGS=$(CFLAGS)
+
+hgfonter : main.o
+ g++ -o $@ $^ -lpng -lfreetype
Added: Mercury2/tools/fonter/main.cpp
===================================================================
--- Mercury2/tools/fonter/main.cpp (rev 0)
+++ Mercury2/tools/fonter/main.cpp 2009-06-19 04:21:37 UTC (rev 345)
@@ -0,0 +1,167 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <png.h>
+#include <ft2build.h>
+#include <freetype/freetype.h>
+
+#ifndef png_jmpbuf
+# define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
+#endif
+
+
+FILE * fout;
+
+int my_write_png( const char * fname, unsigned char * imagedata, int x, int y );
+int my_read_font( const char * fname, unsigned char * imagedata, int xpp, int ypp, int xq, int yq );
+
+int main( int argc, char ** argv )
+{
+ unsigned char imagedata[1024*1024*4];
+ int x, y;
+
+ if( argc != 3 )
+ {
+ fprintf( stderr, "Mercury Fonter\n" );
+ fprintf( stderr, "Usage: %s [font file] [output png]\n", argv[0] );
+ exit( -1 );
+ }
+
+ for( int x = 0; x < 1024; x++ )
+ for( int y = 0; y < 1024; y++ )
+ {
+ imagedata[(x+y*1024)*2+0] = 255; //red
+ imagedata[(x+y*1024)*2+1] = 255; //alpha
+// imagedata[(x+y*1024)*4+2] = 255; //blue
+// imagedata[(x+y*1024)*4+3] = 255; //alpha
+ }
+
+ my_read_font( argv[1], imagedata, 64, 64, 16, 16 );
+ my_write_png( argv[2], imagedata, 1024, 1024 );
+}
+
+int my_read_font( const char * fname, unsigned char * imagedata, int xpp, int ypp, int xq, int yq )
+{
+ FT_Library library;
+ FT_Face face;
+ int error;
+ int glyph_index;
+ int x;
+ int y;
+
+ error = FT_Init_FreeType( &library );
+ if( error )
+ {
+ fprintf( stderr, "Error. Could not initialize freetype\n" );
+ exit( -1 );
+ }
+
+ error = FT_New_Face( library, fname, 0, &face );
+
+ if ( error == FT_Err_Unknown_File_Format )
+ {
+ fprintf( stderr, "Error. FT_Err_Unknown_File_Format\n" );
+ exit( -1 );
+ }
+ else if ( error )
+ {
+ fprintf( stderr, "Error. Something went wrong with FT_NewFace.\n" );
+ exit( -1 );
+ }
+
+ error = FT_Set_Pixel_Sizes( face, 0, 64 );
+ if( error )
+ {
+ fprintf( stderr, "Error with FT_Set_Pixel_Sizes\n" );
+ exit( -3 );
+ }
+
+ glyph_index = FT_Get_Char_Index( face, 65 );
+
+ error = FT_Load_Glyph( face,
+ glyph_index, 0 ); //FT_LOAD_NO_BITMAP (try as last thing)
+
+ if( error )
+ {
+ fprintf( stderr, "FT_Load_Glyph had a problem.\n" );
+ exit( -4 );
+ }
+
+ error = FT_Render_Glyph( face->glyph, FT_RENDER_MODE_NORMAL );
+ if( error )
+ {
+ fprintf( stderr, "FT_Render_Glyph had a problem.\n" );
+ exit( -4 );
+ }
+
+ FT_Bitmap l_bitmap = face->glyph->bitmap;
+
+ for( int x = 0; x < 1024; x++ )
+ for( int y = 0; y < 1024; y++ )
+ {
+ if( x > l_bitmap.width ) continue;
+ if( y > l_bitmap.rows ) continue;
+ imagedata[(x+y*1024)*2+1] = face->glyph->bitmap.buffer[x+y*l_bitmap.width ];
+ }
+
+}
+
+int my_write_png( const char * fname, unsigned char * imagedata, int width, int height )
+{
+ png_structp png_ptr;
+ png_infop info_ptr;
+ png_uint_32 k;
+ png_bytep row_pointers[height];
+
+ memset( &info_ptr, 0, sizeof( info_ptr ) );
+
+ fout = fopen( fname, "wb" );
+ if( !fout )
+ {
+ fprintf( stderr, "Error. Could not open output file.\n" );
+ exit( -1 );
+ }
+
+ png_ptr = png_create_write_struct( PNG_LIBPNG_VER_STRING, 0, 0, 0 );
+
+ if (png_ptr == NULL)
+ {
+ fclose(fout);
+ fprintf( stderr, "png_create_write_struct error.\n" );
+ exit( -1 );
+ }
+
+ info_ptr = png_create_info_struct(png_ptr);
+ if (info_ptr == NULL)
+ {
+ fclose(fout);
+ fprintf( stderr, "png_create_info_struct error.\n" );
+ png_destroy_write_struct(&png_ptr, png_infopp_NULL);
+ exit( -2 );
+ }
+
+ png_set_IHDR( png_ptr, info_ptr, width, height, 8, PNG_COLOR_TYPE_GRAY_ALPHA,
+ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE );
+
+ if (setjmp(png_jmpbuf(png_ptr)))
+ {
+ /* If we get here, we had a problem reading the file */
+ fclose(fout);
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ fprintf( stderr, "Something bad happened.\n" );
+ exit( -3 );
+ }
+
+ png_init_io( png_ptr, fout );
+ png_write_info( png_ptr, info_ptr );
+
+
+ for (k = 0; k < height; k++)
+ row_pointers[k] = imagedata + k*width*2;
+
+ png_write_image( png_ptr, row_pointers );
+
+ png_write_end( png_ptr, info_ptr );
+
+ return 0;
+
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2009-08-31 05:11:02
|
Revision: 531
http://hgengine.svn.sourceforge.net/hgengine/?rev=531&view=rev
Author: cnlohr
Date: 2009-08-31 05:10:52 +0000 (Mon, 31 Aug 2009)
Log Message:
-----------
add collada tool (NOT WORKING)
Added Paths:
-----------
Mercury2/tools/collada2hgmdl/
Mercury2/tools/collada2hgmdl/ColladaConvert.cpp
Mercury2/tools/collada2hgmdl/Makefile
Mercury2/tools/collada2hgmdl/XMLCog.cpp
Mercury2/tools/collada2hgmdl/XMLCog.h
Mercury2/tools/collada2hgmdl/guntheronly.dae
Added: Mercury2/tools/collada2hgmdl/ColladaConvert.cpp
===================================================================
--- Mercury2/tools/collada2hgmdl/ColladaConvert.cpp (rev 0)
+++ Mercury2/tools/collada2hgmdl/ColladaConvert.cpp 2009-08-31 05:10:52 UTC (rev 531)
@@ -0,0 +1,106 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include "XMLCog.h"
+
+int main( int argc, char ** argv )
+{
+ if( argc != 3 )
+ {
+ fprintf( stderr, "Mercury Game Engine Collada Converter\n" );
+ fprintf( stderr, " (C) 2009 Charles Lohr under the NewBSD License\n" );
+ fprintf( stderr, " Invalid usage. Usage: %s (Collada .dae File) (Mercury .hgmdl File)\n" );
+ return -1;
+ }
+ XMLCog c;
+ if( !LoadXML( argv[1], c ) )
+ {
+ fprintf( stderr, "Could not load/parse Collada file.\n" );
+ return -2;
+ }
+
+ if( !c.leaves["version"].length() )
+ {
+ fprintf( stderr, "Could not find version of Collada.\n" );
+ return -3;
+ }
+
+ printf( "Collada file, version %s opened as expected.\n", c.leaves["version"].c_str() );
+
+ int lcontrol = c.FindChild( "library_controllers" );
+ int lgeometries = c.FindChild( "library_geometries" );
+ int lvscenes = c.FindChild( "library_visual_scenes" );
+ int lvanimations = c.FindChild( "library_animations" );
+
+ if( lgeometries == -1 )
+ {
+ fprintf( stderr, "Could not find library_geometries section.\n" );
+ return -3;
+ }
+
+ int geometriesgeometry = c.children[lgeometries].FindChild( "geometry" );
+ if( geometriesgeometry == -1 )
+ {
+ fprintf( stderr, "Could not find any geometry in the library_geometries section.\n" );
+ return -3;
+ }
+
+ int geomesh = c.children[lgeometries].children[geometriesgeometry].FindChild( "mesh" );
+ if( geomesh == -1 )
+ {
+ fprintf( stderr, "Could not find any mesh in the geometry section in the library_geometries section.\n" );
+ return -3;
+ }
+
+ XMLCog & geometry = c.children[lgeometries].children[geometriesgeometry].children[geomesh];
+
+ map< string, vector< float > > sourcevalues;
+ map< string, map< string, string > > synonyms;
+
+ for( unsigned i = 0; i < geometry.children.size(); i++ )
+ {
+ XMLCog & geoitem = geometry.children[i];
+ if( geoitem.data == "source" )
+ {
+ string name = geoitem.leaves["name"];
+ int floatvalspos = geoitem.FindChild( "float_array" );
+ if( floatvalspos == -1 )
+ {
+ fprintf( stderr, "Source: %s does not have a float_array for values. Cannot operate.\n", name.c_str() );
+ return -3;
+ }
+
+ const char * payload = geoitem.children[floatvalspos].payload.c_str();
+ int payloadlen = geoitem.children[floatvalspos].payload.length();
+ vector < float > & out = sourcevalues[name];
+ string thisval = "";
+ for( unsigned i = 0; i < payloadlen; i++ )
+ {
+ if( payload[i] == ' ' )
+ {
+ out.push_back( atof( thisval.c_str() ) );
+ thisval = "";
+ }
+ else
+ thisval += payload[i];
+ }
+ }
+ else if( geoitem.data == "vertices" )
+ {
+ string sSynonym = geoitem.leaves["name"];
+ //Information about how to map things toegether.
+ for( int i = 0; i < geoitem.children.size(); i++ )
+ {
+ XMLCog & idata = geoitem.children[i];
+ if( idata.data == "input" )
+ synonyms[sSynonym][idata.leaves["semantic"]] = idata.leaves["source"].substr(1);
+ }
+ }
+ }
+
+
+// printf( "%d %d\n", lvanimations, ltest );
+// for( int i = 0; i < c.children.size(); i++ )
+// {
+// printf( "%d %s\n", i, c.children[i].data.c_str() );
+// }
+}
\ No newline at end of file
Added: Mercury2/tools/collada2hgmdl/Makefile
===================================================================
--- Mercury2/tools/collada2hgmdl/Makefile (rev 0)
+++ Mercury2/tools/collada2hgmdl/Makefile 2009-08-31 05:10:52 UTC (rev 531)
@@ -0,0 +1,9 @@
+all : ColladaConvert
+
+CFLAGS=-g
+
+ColladaConvert : ColladaConvert.o XMLCog.o
+ g++ -o $@ $^
+
+clean :
+ rm -rf *.o *~ ColladaConvert
\ No newline at end of file
Added: Mercury2/tools/collada2hgmdl/XMLCog.cpp
===================================================================
--- Mercury2/tools/collada2hgmdl/XMLCog.cpp (rev 0)
+++ Mercury2/tools/collada2hgmdl/XMLCog.cpp 2009-08-31 05:10:52 UTC (rev 531)
@@ -0,0 +1,286 @@
+#include "XMLCog.h"
+#include <string.h>
+#include <stdlib.h>
+void XMLCog::Clear()
+{
+ children.clear();
+ leaves.clear();
+}
+
+int XMLCog::FindChild( const string & sName )
+{
+ for ( int i = 0; i < children.size(); i++ )
+ if ( sName == children[i].data )
+ return i;
+ return -1;
+}
+
+//Start at first character
+void ReadLeafVal( const char * start, string & pin, int & chars )
+{
+ pin = "";
+ const char * place = start;
+ while ( place[0] != '=' && place[0] != '\0' && place[0] != ' ' )
+ place++;
+ pin.append( start, place-start );
+ chars = place-start;
+}
+
+//Start after an opening "
+void ReadString( const char * start, string & pin, int & chars )
+{
+ pin = "";
+ const char * place = start;
+ while ( place[0] != '\"' && place[0] != '\0' )
+ {
+ if ( place[0] == '\\' )
+ place++;
+ pin.append( place, 1 );
+ place++;
+ }
+ chars = place-start;
+}
+
+int ReadElem( const char * & loc, map< string, string > & pin, string & name )
+{
+ string sTmp;
+ string sTmp2;
+ int iTmp;
+
+
+ //Remove leading whitespace
+ while ( loc[0] == ' ' || loc[0] == '\n' || loc[0] == '\r' || loc[0] == '\t' )
+ loc++;
+
+ //If we see a <, strip it.
+ if ( loc[0] == '<' )
+ loc++;
+
+ //Get rid of any whitespace, i.e. < asdf>
+ while( loc[0] == ' ' )
+ loc++;
+
+ //If we see a /, we know we're closing.
+ if ( loc[0] == '/' )
+ {
+ if ( loc[0] != '\0' )
+ loc++;
+
+ while ( loc[0] == ' ' || loc[0] == '\n' || loc[0] == '\r' || loc[0] == '\t' )
+ loc++;
+
+ while ( loc[0] != '>' && loc[0] != '\0' )
+ {
+ name += *loc;
+ loc++;
+ }
+
+ if ( loc[0] != '\0' )
+ loc++;
+ return 3;
+ }
+
+ //If we've reached the end escape with error.
+ if( loc[0] == 0 )
+ return 0;
+
+ //Append to the name until we hit a space.
+ while( loc[0] != ' ' && loc[0] != '>' && loc[0] != '/' )
+ {
+ name.append( loc,1 );
+ loc++;
+ }
+
+// if ( loc[0] == '>' )
+// {
+// printf( "*" );
+// loc++;
+// return 1;
+// }
+
+ while ( true )
+ {
+ //If in error, escape with error.
+ if ( loc[0] == '\0' )
+ return 0;
+
+ //Remove any whitespace in this clip.
+ while ( loc[0] == ' ' )
+ loc++;
+
+ //we're in the body of a block, and it terminates with an ending />
+ if ( loc[0] == '/' )
+ {
+ loc++;
+ if ( loc[0] == '\0' )
+ return 0;
+
+ //To get rid of the trailing > after the /
+ loc++;
+ return 2;
+ }
+
+ //Ending normally.
+ if ( loc[0] == '>' )
+ {
+ loc++;
+ return 1;
+ }
+
+ ReadLeafVal( loc, sTmp, iTmp );
+ loc += iTmp;
+ while ( loc[0] == ' ' )
+ loc++;
+
+ if ( loc[0] != '=' )
+ {
+ pin[sTmp] = "";
+ continue;
+ }
+
+ loc++;
+
+ while ( loc[0] == ' ' )
+ loc++;
+
+ //We've read a leaf, i.e. tseq=, we're expecting a " as per required by XML
+ if ( loc[0] != '\"' )
+ {
+ printf("Warning. After leaf value %s, there was no starting \" beginner.\n", sTmp.c_str() );
+ return 0;
+ }
+
+ loc++;
+
+ ReadString( loc, sTmp2, iTmp );
+ loc += iTmp + 1;
+
+ pin[sTmp] = sTmp2;
+ }
+}
+
+int DoXML( const char * ¤t, XMLCog & cog )
+{
+ static int fd = 0;
+ int depth = 0;
+
+ fd++;
+
+ int ret = ReadElem( current, cog.leaves, cog.data );
+ //0: FAIL
+ //1: OPEN
+ //2: OPEN-AND-CLOSED
+ //3: CLOSE
+
+ while ( current[0] == ' ' || current[0] == '\n' || current[0] == '\r' || current[0] == '\t' )
+ {
+ current++;
+ }
+
+
+ //There is a payload, rip it out.
+ if( ret == 1 && current[0] != '<' )
+ {
+ while( *current != '<' && *current != 0 )
+ cog.payload += *current++;
+ if( *current == 0 )
+ {
+ fd--;
+ return 0; //Error!
+ }
+ else
+ {
+ while( *current != '>' && *current != 0 )
+ current++;
+
+ if( *current == 0 )
+ {
+ fd--;
+ return 0;
+ }
+
+ current++;
+
+ while ( current[0] == ' ' || current[0] == '\n' || current[0] == '\r' || current[0] == '\t' )
+ {
+ current++;
+ }
+
+ if( *current == 0 )
+ {
+ fd--;
+ return 0;
+ }
+
+ fd--;
+ return 2;
+ }
+ }
+
+ switch( ret )
+ {
+ case 0: //error
+ fd--;
+ return 0;
+ case 1: //open
+ {
+START_LOOP:
+ cog.children.resize( cog.children.size() + 1 );
+ int rlocal = DoXML(current, cog.children[cog.children.size()-1] );
+
+ if( rlocal == 0 || rlocal == 3 )
+ {
+ cog.children.resize( cog.children.size() - 1 );
+ }
+
+ switch( rlocal )
+ {
+ case 0:
+ fd--;
+ return 0;
+ case 1:
+ fd--;
+ return 0;
+ case 2:
+ goto START_LOOP;
+ case 3:
+ fd--;
+ return 2;
+ default:
+ fd--;
+ return 0;
+ };
+ }
+ case 2: //open-and-close
+ fd--;
+ return 2;
+
+ case 3: //close (strictly)
+ fd--;
+ return 3;
+
+ default:
+ fd--;
+ return 0;
+ }
+}
+
+bool LoadXML( const char * file, XMLCog & cog )
+{
+ FILE * f = fopen( file, "rb" );
+ if ( f == NULL )
+ return false;
+ fseek( f, 0, SEEK_END );
+ int len = ftell( f );
+ fseek( f, 0, SEEK_SET );
+ char * buff = (char*)malloc(len+1);
+ fread( buff, 1, len, f );
+ buff[len] = '\0';
+ fclose( f );
+
+ char * backup = buff;
+ int dxresult = DoXML( (const char*&)buff, cog );
+ free( backup );
+// return dxresult != 0;
+ return 1;
+}
Added: Mercury2/tools/collada2hgmdl/XMLCog.h
===================================================================
--- Mercury2/tools/collada2hgmdl/XMLCog.h (rev 0)
+++ Mercury2/tools/collada2hgmdl/XMLCog.h 2009-08-31 05:10:52 UTC (rev 531)
@@ -0,0 +1,23 @@
+#ifndef _XML_COG_H
+#define _XML_COG_H
+
+#pragma warning (disable : 4786) // turn off broken debugger warning
+#include <vector>
+#include <string>
+#include <map>
+
+using namespace std;
+
+struct XMLCog
+{
+ void Clear();
+ vector< XMLCog > children;
+ int FindChild( const string & sName );
+ map< string, string > leaves;
+ string data;
+ string payload;
+};
+
+bool LoadXML( const char * file, XMLCog & cog );
+
+#endif
\ No newline at end of file
Added: Mercury2/tools/collada2hgmdl/guntheronly.dae
===================================================================
--- Mercury2/tools/collada2hgmdl/guntheronly.dae (rev 0)
+++ Mercury2/tools/collada2hgmdl/guntheronly.dae 2009-08-31 05:10:52 UTC (rev 531)
@@ -0,0 +1,2019 @@
+<?xml version="1.0" encoding="utf-8"?>
+<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">
+ <asset>
+ <contributor>
+ <author>Charles</author>
+ <authoring_tool>COLLADA Maya2009</authoring_tool>
+ <comments>ColladaMaya export options: bakeTransforms=1;exportPolygonMeshes=1;bakeLighting=0;isSampling=0;
+curveConstrainSampling=0;removeStaticCurves=1;exportCameraAsLookat=0;
+exportLights=1;exportCameras=1;exportJointsAndSkin=1;
+exportAnimations=1;exportTriangles=1;exportInvisibleNodes=0;
+exportNormals=1;exportTexCoords=1;
+exportVertexColors=1;exportVertexColorsAnimation=0;exportTangents=0;
+exportTexTangents=0;
+exportConstraints=1;exportPhysics=1;
+exportXRefs=1;dereferenceXRefs=1;
+cameraXFov=0;cameraYFov=1</comments>
+ <source_data>file:///C:/gunther/artassets/gunther/gunther_merged.mb</source_data>
+ </contributor>
+ <created>2009-08-24T20:04:37</created>
+ <modified>2009-08-24T20:04:37</modified>
+ <unit name="centimeter" meter="0.01"/>
+ <up_axis>Y_UP</up_axis>
+ </asset>
+ <library_materials>
+ <material id="lambert15" name="lambert15">
+ <instance_effect url="#lambert15-fx"/>
+ </material>
+ <material id="lambert16" name="lambert16">
+ <instance_effect url="#lambert16-fx"/>
+ </material>
+ <material id="lambert1" name="lambert1">
+ <instance_effect url="#lambert1-fx"/>
+ </material>
+ </library_materials>
+ <library_effects>
+ <effect id="lambert1-fx">
+ <profile_COMMON>
+ <technique sid="common">
+ <lambert>
+ <emission>
+ <color>0 0 0 1</color>
+ </emission>
+ <ambient>
+ <color>0 0 0 1</color>
+ </ambient>
+ <diffuse>
+ <color>0.4 0.4 0.4 1</color>
+ </diffuse>
+ <transparent opaque="RGB_ZERO">
+ <color>0 0 0 1</color>
+ </transparent>
+ <transparency>
+ <float>1</float>
+ </transparency>
+ </lambert>
+ </technique>
+ </profile_COMMON>
+ </effect>
+ <effect id="lambert15-fx">
+ <profile_COMMON>
+ <newparam sid="file1-surface">
+ <surface type="2D">
+ <init_from>file1</init_from>
+ <format>A8R8G8B8</format>
+ </surface>
+ </newparam>
+ <newparam sid="file1-sampler">
+ <sampler2D>
+ <source>file1-surface</source>
+ </sampler2D>
+ </newparam>
+ <technique sid="common">
+ <lambert>
+ <emission>
+ <color>0 0 0 1</color>
+ </emission>
+ <ambient>
+ <color>0 0 0 1</color>
+ </ambient>
+ <diffuse>
+ <texture texture="file1-sampler" texcoord="CHANNEL2">
+ <extra>
+ <technique profile="MAYA">
+ <blend_mode>NONE</blend_mode>
+ <coverageU>1</coverageU>
+ <coverageV>1</coverageV>
+ <fast>0</fast>
+ <mirrorU>0</mirrorU>
+ <mirrorV>0</mirrorV>
+ <noiseU>0</noiseU>
+ <noiseV>0</noiseV>
+ <offsetU>0</offsetU>
+ <offsetV>0</offsetV>
+ <repeatU>1</repeatU>
+ <repeatV>1</repeatV>
+ <rotateFrame>0</rotateFrame>
+ <rotateUV>0</rotateUV>
+ <stagger>0</stagger>
+ <translateFrameU>0</translateFrameU>
+ <translateFrameV>0</translateFrameV>
+ <wrapU>1</wrapU>
+ <wrapV>1</wrapV>
+ </technique>
+ </extra>
+ </texture>
+ </diffuse>
+ <transparent opaque="RGB_ZERO">
+ <color>0 0 0 1</color>
+ </transparent>
+ <transparency>
+ <float>1</float>
+ </transparency>
+ </lambert>
+ </technique>
+ </profile_COMMON>
+ </effect>
+ <effect id="lambert16-fx">
+ <profile_COMMON>
+ <technique sid="common">
+ <lambert>
+ <emission>
+ <color>0 0 0 1</color>
+ </emission>
+ <ambient>
+ <color>0 0 0 1</color>
+ </ambient>
+ <diffuse>
+ <color>0.4 0.4 0.4 1</color>
+ </diffuse>
+ <transparent opaque="RGB_ZERO">
+ <color>0 0 0 1</color>
+ </transparent>
+ <transparency>
+ <float>1</float>
+ </transparency>
+ </lambert>
+ </technique>
+ </profile_COMMON>
+ </effect>
+ </library_effects>
+ <library_images>
+ <image id="file1" name="file1">
+ <init_from>file:///C:/Documents%20and%20Settings/Tommy/Desktop/3D/Gunther/Gunther%20color%20map.png</init_from>
+ <extra>
+ <technique profile="MAYA">
+ <dgnode_type>kFile</dgnode_type>
+ <image_sequence>0</image_sequence>
+ </technique>
+ </extra>
+ </image>
+ </library_images>
+ <library_controllers>
+ <controller id="polySurfaceShape2-skin" name="skinCluster1">
+ <skin source="#polySurface17Shape">
+ <bind_shape_matrix>1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1</bind_shape_matrix>
+ <source id="polySurfaceShape2-skin-joints" name="polySurfaceShape2-skin-joints">
+ <Name_array id="polySurfaceShape2-skin-joints-array" count="23">hip belly mid_back upper_bitties clavicle neck head left_shoulder left_elbow left_wrist left_hand right_shoulder right_elbow right_wrist right_hand left_leg left_knee left_foot left_toe right_leg right_knee right_foot right_toe</Name_array>
+ <technique_common>
+ <accessor source="#polySurfaceShape2-skin-joints-array" count="23" stride="1">
+ <param name="JOINT" type="name"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="polySurfaceShape2-skin-bind_poses" name="polySurfaceShape2-skin-bind_poses">
+ <float_array id="polySurfaceShape2-skin-bind_poses-array" count="368">0.0238028 0.999717 0 1.6037 -0.999717 0.0238028 0 0.0153545 0 0 1 2.53438 0 0 0 1 -0.0299286 0.999552 0 -1.29677 0.999552 0.0299286 0 -0.0851297 0 0 -1 -2.12181 0 0 0 1 0.0344623 0.999406 0 -4.06869 -0.999406 0.0344623 0 -0.177089 0 0 1 2.88802 0 0 0 1 0 1 0 -6.69944 -1 0 0 0.0538213 0 0 1 3.7721 0 0 0 1 -0.0454077 0.998969 0 -9.1433 0.998969 0.0454077 0 -0.469481 0 0 -1 -3.71316 0 0 0 1 0 1 0 -10.4409 1 0 0 0.0367673 0 0 -1 -1.59136 0 0 0 1 0.024383 0.999703 0 -12.4423 -0.999703 0.024383 0 -0.340249 0 0 1 0.353635 0 0 0 1 0.935948 -0.352139 0 -1.77304 0.352139 0.935948 0 -9.20792 0 0 1 3.66216 0 0 0 1 0.961971 -0.273152 0 -7.52215 0.273152 0.961971 0 -8.61268 0 0 1 5.99836 0 0 0 1 0.985212 -0.171341 0 -12.2653 0.171341 0.985212 0 -7.37378 0 0 1 6.38034 0 0 0 1 1 0 0 -15.343 0 1 0 -4.60635 0 0 1 6.86649 0 0 0 1 -0.947073 -0.321018 0 -2.09401 -0.321018 0.947073 0 -9.0523 0 0 -1 -3.06143 0 0 0 1 -0.962788 -0.270256 0 -7.35721 -0.270256 0.962788 0 -8.74173 0 0 -1 -5.89219 0 0 0 1 -0.962964 -0.26963 0 -11.5399 -0.26963 0.962964 0 -8.69587 0 0 -1 -6.52678 0 0 0 1 1 0 0 15.2787 0 1 0 -4.75227 0 0 1 6.99214 0 0 0 1 0.0766965 -0.997054 0 -3.01664 0.997054 0.0766965 0 -2.54762 0 0 1 2.70325 0 0 0 1 0.0905357 -0.995893 0 -7.77579 0.995893 0.0905357 0 -2.43987 0 0 1 2.55713 0 0 0 1 1 0 0 -3.58678 0 1 0 12.5053 0 0 1 3.21467 0 0 0 1 1 0 0 -4.0045 0 1 0 12.5426 0 0 1 1.13462 0 0 0 1 0.0766965 -0.997054 0 -2.58587 0.997054 0.0766965 0 3.05233 0 0 1 2.70325 0 0 0 1 0.0905357 -0.995893 0 -7.21268 0.995893 0.0905357 0 3.75432 0 0 1 2.55713 0 0 0 1 1 0 0 3.49869 0 1 0 12.5053 0 0 1 3.21467 0 0 0 1 1 0 0 4.00537 0 1 0 12.5426 0 0 1 1.13462 0 0 0 1</float_array>
+ <technique_common>
+ <accessor source="#polySurfaceShape2-skin-bind_poses-array" count="23" stride="16">
+ <param name="TRANSFORM" type="float4x4"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="polySurfaceShape2-skin-weights" name="polySurfaceShape2-skin-weights">
+ <float_array id="polySurfaceShape2-skin-weights-array" count="4710">1 0.902806 0.00645181 0.00147309 0.0462198 0.0430482 0.871345 0.00795576 0.0016807 0.079509 0.0395091 0.68661 0.000574613 0.310811 0.00192083 0.906472 0.00770517 0.00114543 0.0442596 0.0404182 0.000117487 0.00140223 0.998452 0.000476356 0.999471 0.999847 0.999847 0.000170734 0.99981 0.000185892 0.00209004 0.997667 0.000155026 0.00177529 0.998024 0.000488464 0.999458 0.000350467 0.000499193 0.999054 0.000142266 0.00080945 0.00115078 0.997836 0.000163764 0.000782879 0.000963016 0.998025 0.000219509 0.00128566 0.00157453 0.996832 0.000145394 0.00108868 0.00124599 0.997473 0.0127914 0.149411 0.167865 0.667272 0.00266115 0.00488291 0.0651207 0.0692746 0.859669 0.00105307 0.000360899 0.000505201 0.999058 0.00202983 0.012643 0.0159175 0.968399 0.00101082 0.000246708 0.000513978 0.999189 0.00214222 0.0131857 0.0148121 0.968735 0.00112525 0.999838 0.000435146 0.0043938 0.995032 0.000176398 0.000749801 0.00760198 0.991393 0.000250449 0.99971 0.000420453 0.999487 0.000130075 0.000422587 0.00280478 0.996603 0.000629692 0.99926 0.000105943 0.000422556 0.00317237 0.996252 0.000932806 0.00320832 0.0173273 0.978134 0.00039706 0.000290712 0.00170122 0.997884 0.000329435 0.000885001 0.00334486 0.995343 0.000190879 0.000504122 0.00192447 0.997333 0.000245458 0.000689264 0.00258298 0.996394 0.999836 0.00469693 0.0148241 0.0198855 0.960162 0.000431778 0.00823063 0.0255772 0.0334557 0.932188 0.000548356 0.000717845 0.00264129 0.00387335 0.992621 0.000146393 0.00328559 0.0111177 0.0156064 0.969493 0.000497464 0.000348405 0.00173817 0.00291444 0.994918 0.000252139 0.000581478 0.999125 0.000207916 0.999694 0.00153838 0.0136194 0.0185324 0.96577 0.000540142 0.00217895 0.0237495 0.0350174 0.938545 0.000509069 0.000196075 0.00118093 0.00215588 0.996405 0.000342665 0.000772007 0.998826 0.000246041 0.000368501 0.999339 0.000119952 0.999767 0.00253241 0.0230596 0.0235847 0.94997 0.000853664 0.00036071 0.999518 0.00342279 0.0503669 0.0581567 0.887281 0.000772152 0.00827069 0.0711384 0.0810287 0.836679 0.00288292 0.000364882 0.000548351 0.999011 0.0001213 0.999786 0.00042264 0.00248696 0.00272716 0.994166 0.000197405 0.000156323 0.000200064 0.999611 0.000455732 0.00290718 0.00303689 0.993355 0.000245638 0.000109834 0.00069387 0.00073338 0.998402 0.00950349 0.175503 0.181755 0.631365 0.00187387 0.000124756 0.00018536 0.999669 0.000138304 0.000205697 0.99962 0.000549125 0.000632432 0.9987 0.0120762 0.131345 0.147871 0.706373 0.00233449 0.000173313 0.00164126 0.0351737 0.481506 0.481506 0.00025327 0.00233606 0.0438177 0.476797 0.476797 0.000293898 0.00268758 0.0482236 0.474397 0.474397 0.000374695 0.00347111 0.0626342 0.46676 0.46676 0.000603207 0.015699 0.491817 0.491817 0.000213388 0.00168949 0.0270524 0.485522 0.485522 0.000116446 0.000990171 0.0183295 0.490282 0.490282 0.000180625 0.00563695 0.497082 0.497082 0.00045329 0.0157197 0.491892 0.491892 0.000812433 0.0188193 0.49014 0.49014 0.000219744 0.00177436 0.0300159 0.483995 0.483995 0.000741214 0.0203618 0.48941 0.48941 0.000186609 0.00165102 0.0305582 0.483802 0.483802 0.000234321 0.00214642 0.0404179 0.478601 0.478601 0.000221289 0.00196057 0.0362411 0.480789 0.480789 0.000372255 0.0029471 0.0440443 0.476318 0.476318 0.000189624 0.0016659 0.0319324 0.483106 0.483106 0.000272762 0.00239873 0.044378 0.476475 0.476475 0.000512908 0.00423613 0.0630171 0.466117 0.466117 0.00050966 0.00422564 0.0611422 0.467061 0.467061 0.000325657 0.00285332 0.0470716 0.474875 0.474875 0.000268031 0.00220197 0.0342168 0.481657 0.481657 0.000373363 0.00291169 0.0412029 0.477756 0.477756 0.000299725 0.00271167 0.0510892 0.47295 0.47295 0.000400641 0.00358673 0.0624091 0.466802 0.466802 0.000674647 0.0155306 0.491861 0.491861 0.00271701 0.498606 0.498606 0.000104274 0.00111603 0.0271682 0.485806 0.485806 0.000146941 0.00161608 0.0376223 0.480307 0.480307 0.00019203 0.00201163 0.0411944 0.478301 0.478301 0.000188516 0.00206979 0.0479798 0.474881 0.474881 0.000154784 0.00478649 0.497522 0.497522 0.000799283 0.0150194 0.492046 0.492046 0.000752155 0.0150085 0.49208 0.49208 0.000121069 0.00426744 0.4978 0.4978 0.000165684 0.00165427 0.0321631 0.483008 0.483008 0.000132084 0.00143425 0.0332583 0.482588 0.482588 0.000140005 0.00138088 0.0276534 0.485413 0.485413 0.0002222 0.00211625 0.0374676 0.480097 0.480097 0.000186678 0.00188001 0.0362839 0.480825 0.480825 0.000149675 0.00144991 0.0271161 0.485642 0.485642 0.000207724 0.00182286 0.0291922 0.484389 0.484389 0.000617983 0.0125067 0.493404 0.493404 0.00144976 0.499253 0.499253 0.000191769 0.00166273 0.027515 0.485315 0.485315 0.000176592 0.00168471 0.0324425 0.482848 0.482848 0.000158094 0.00157482 0.033103 0.482582 0.482582 0.000167512 0.00170876 0.0370706 0.480527 0.480527 0.000165585 0.00151837 0.0278857 0.485215 0.485215 0.000144544 0.00140205 0.0285319 0.484961 0.484961 0.000421405 0.0101233 0.494706 0.494706 0.000446151 0.0114493 0.494031 0.494031 0.000158969 0.499919 0.499919 0.00122422 0.499375 0.499375 0.122198 0.875627 0.00210506 0.000280765 0.172553 0.818569 0.0085866 0.000450078 0.0985886 0.828937 0.0720019 0.000202074 0.073223 0.889154 0.0374108 0.000468539 0.0148368 0.492324 0.492324 0.00023466 0.00794522 0.495899 0.495899 0.000316099 0.0384469 0.739718 0.221499 0.000761694 0.0750586 0.637739 0.286388 0.00123884 0.292995 0.666083 0.0396337 0.00146847 0.318427 0.620391 0.0596511 0.00170021 0.144734 0.612558 0.240914 0.00165721 0.1603 0.63057 0.207385 0.000839539 0.00760486 0.120989 0.435283 0.435283 0.000680715 0.00601914 0.0975549 0.447873 0.447873 0.000597996 0.00545693 0.0967804 0.448582 0.448582 0.989792 0.0102008 0.00368383 0.585264 0.411 0.001019 0.0403983 0.484564 0.473945 0.00112464 0.0394811 0.479883 0.479426 0.00095756 0.0293367 0.484814 0.484814 0.000790295 0.0277883 0.48568 0.48568 0.00019409 0.00710114 0.496344 0.496344 0.000867339 0.0298024 0.484623 0.484623 0.000334067 0.0146105 0.492513 0.492513 0.000825113 0.254402 0.68892 0.0558089 0.00032644 0.182538 0.792842 0.0242787 0.000325118 0.3757 0.615278 0.00868415 0.000812341 0.419367 0.559831 0.0199533 0.000965869 0.280521 0.66968 0.0487919 0.0012272 0.459829 0.520529 0.0183726 0.000745972 0.439737 0.545733 0.013757 0.000407901 0.153485 0.833491 0.0126001 0.000284234 0.363961 0.631814 0.00393087 0.00087221 0.479183 0.509153 0.0107635 0.0014556 0.476031 0.501471 0.0209821 0.00133126 0.367738 0.582714 0.0481488 0.00114134 0.470055 0.509965 0.018789 0.000595196 0.496843 0.496852 0.00568879 0.000296323 0.115021 0.841218 0.0434489 0.000776419 0.15466 0.735699 0.108822 0.00194201 0.423659 0.529608 0.0446998 0.0015445 0.674408 0.324029 0.000365348 0.0241352 0.532559 0.442913 0.00104089 0.086827 0.587264 0.324792 0.0011805 0.0984343 0.585676 0.314624 0.000781043 0.0433633 0.505488 0.450304 0.000146195 0.0026636 0.328456 0.556237 0.112497 0.00147169 0.166186 0.632152 0.200101 0.000326745 0.00401735 0.138305 0.457961 0.39939 0.000578596 0.00720361 0.206755 0.437214 0.348249 0.000112592 0.00137699 0.0691846 0.495724 0.433601 0.000154908 0.00205846 0.128117 0.527675 0.341995 0.000347725 0.00389575 0.118178 0.449397 0.428181 0.000260545 0.00284928 0.0856723 0.457109 0.454109 0.000534223 0.0051464 0.102898 0.44571 0.44571 0.000683539 0.00666233 0.124966 0.433844 0.433844 0.00055244 0.00653116 0.185984 0.437029 0.369903 0.000208944 0.00325532 0.266112 0.537925 0.192499 0.000349809 0.00338565 0.0741144 0.461075 0.461075 0.000461304 0.00428049 0.082802 0.456228 0.456228 0.00052843 0.00484669 0.084427 0.455099 0.455099 0.000361724 0.00355249 0.0747312 0.460677 0.460677 0.000221361 0.00255682 0.0856469 0.461753 0.449822 0.00085643 0.0539447 0.531984 0.41315 0.000744457 0.00662518 0.102914 0.444858 0.444858 0.000505114 0.00506099 0.101796 0.446319 0.446319 0.000676479 0.00676181 0.127265 0.432648 0.432648 0.000783719 0.00725317 0.117854 0.437055 0.437055 0.000115902 0.00210419 0.349375 0.564975 0.0834301 0.0013374 0.526937 0.465407 0.0062757 0.000417953 0.778128 0.21963 0.00181148 0.000386713 0.701163 0.296928 0.00151218 0.412952 0.585895 0.00108546 0.000157163 0.758194 0.24085 0.000793954 0.000437282 0.809111 0.18843 0.00201037 0.00105605 0.551016 0.442162 0.00573699 0.00049263 0.537558 0.458885 0.00304962 0.000953854 0.53093 0.463101 0.00498572 0.00021176 0.00602237 0.496872 0.496872 0.000635493 0.0195629 0.489874 0.489874 0.000581026 0.0219967 0.488688 0.488688 0.000388207 0.0170577 0.491428 0.491097 0.000421052 0.0219775 0.506854 0.470718 0.0011747 0.103544 0.62872 0.266492 0.00138521 0.165578 0.663534 0.169432 0.162241 0.835294 0.00236465 0.000118971 0.320718 0.677578 0.00158057 0.00011688 0.00126539 0.0277178 0.48545 0.48545 0.00102713 0.0238849 0.487497 0.487497 0.000165893 0.00191204 0.0460601 0.475931 0.475931 0.000179692 0.00204365 0.0466296 0.475574 0.475574 0.000222514 0.00250865 0.0538584 0.471705 0.471705 0.000255011 0.00283181 0.0583444 0.469284 0.469284 0.000138428 0.00131822 0.0236842 0.48743 0.48743 0.000148212 0.00147076 0.0272413 0.48557 0.48557 0.000134564 0.00147853 0.0335034 0.482442 0.482442 0.000153586 0.0016614 0.0351952 0.481495 0.481495 0.000164625 0.00181231 0.0394939 0.479265 0.479265 0.000143163 0.00160059 0.0372499 0.480503 0.480503 0.000274164 0.00277046 0.0482363 0.47436 0.47436 0.00022108 0.00234364 0.0452462 0.476095 0.476095 0.000201947 0.00204171 0.0370234 0.480366 0.480366 0.000211392 0.0020441 0.0349575 0.481394 0.481394 0.000134582 0.00136024 0.031571 0.483467 0.483467 0.0002913 0.00289944 0.0571695 0.46982 0.46982 0.000120549 0.00101739 0.0178622 0.4905 0.4905 0.000108941 0.0010641 0.0239401 0.487443 0.487443 0.000363483 0.00321371 0.0507917 0.472816 0.472816 0.000282218 0.00228276 0.0334204 0.482007 0.482007 0.115937 0.00186667 0.00100253 0.876514 0.00467873 0.181069 0.00464197 0.00241361 0.803276 0.00859855 0.0216403 0.000703043 0.971543 0.00529044 0.00082374 0.263835 0.00674741 0.655975 0.0656311 0.00781148 0.23985 0.00176105 0.751011 0.00670894 0.000668996 0.246878 0.00506983 0.00240494 0.73046 0.0151866 0.187768 0.00633933 0.706717 0.0908802 0.00829552 0.201816 0.00790267 0.672791 0.109537 0.00795349 0.0355979 0.487547 0.017912 0.00518587 0.453756 0.0795426 0.00319727 0.893057 0.0212341 0.00296922 0.0445864 0.505858 0.0166203 0.00352085 0.429413 0.00281112 0.968753 0.0011346 0.000164368 0.0271365 0.23311 0.000105041 0.764583 0.00207612 0.000125893 0.311229 0.00191239 0.66424 0.0204303 0.00218815 0.0273085 0.920631 0.0455407 0.0048946 0.00162521 0.0131446 0.95929 0.0247867 0.0020916 0.000686649 0.00437839 0.970472 0.0234295 0.00130863 0.000411242 0.000876679 0.985713 0.012901 0.000390412 0.000118823 0.00293601 0.988861 0.00725738 0.000710986 0.000234847 0.00721044 0.767334 0.216564 0.0068966 0.00199528 0.00123848 0.983653 0.0139352 0.000903224 0.000269751 0.00719221 0.690563 0.294168 0.00653388 0.00154248 0.00578687 0.734 0.254666 0.00446222 0.00108482 0.0037649 0.630989 0.359616 0.00456185 0.00106798 0.999858 0.000141557 0.00436652 0.54583 0.441057 0.00711507 0.00163101 0.00398685 0.445801 0.539325 0.00892199 0.00196581 0.000238167 0.0517388 0.944921 0.0027145 0.000387378 0.000112239 0.0215349 0.976678 0.00146608 0.000209133 0.00309495 0.996649 0.000218098 0.0128654 0.985793 0.00114103 0.000143406 0.000532809 0.999414 0.00113882 0.998614 0....
[truncated message content] |