Game Development Community

Blender::blend: Mismatch?

by Joseph Euan · in Torque Game Engine Advanced · 08/18/2005 (4:58 pm) · 13 replies

Okay, I've ported the starter.fps over to the latest TSE... made all the script changes I could find and moved over all the files needed... but when I load the map, I get passed lighting misson and then TSE exits with some errors
Fatal: (c:\tse\tse\engine\gfx\gfxcanon.h @ 159) GFXCanonizer Blender::blend: State was not restored! Check console for specifics.
Fatal: (C:\tse\tse\engine\sim\sceneobject.cpp @ 824) Error, some object isn't properly out of it bin
and the console .log says....

MatInstance::MatInstance() - Unable to find material 'TerrainMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
Blender::blend: Mismatching render state #0: 1 != 0
Blender::blend: Mismatching render state #3: 1 != 0
Blender::blend: Mismatch in (0, 0) of projection!
Blender::blend: Mismatch in (1, 1) of projection!
Blender::blend: Mismatch in (1, 2) of projection!
Blender::blend: Mismatch in (2, 1) of projection!
Blender::blend: Mismatch in (2, 2) of projection!
Blender::blend: Mismatch in (2, 3) of projection!
Blender::blend: Mismatch in (3, 1) of projection!
Blender::blend: Mismatch in (3, 2) of projection!
Blender::blend: Mismatch in (3, 3) of projection!
Blender::blend: Mismatch in (0, 3) of world!
Blender::blend: Mismatch in (1, 3) of world!
Blender::blend: Mismatch in (2, 3) of world!
Blender::blend: mismatched world matrix stack!


I also get:
Error: shape starter.fps/data/shapes/crossbow/ammo.dts-collision detail 0 (Collision-3) bounds box invalid!
Unable to load texture: starter.fps/data/shapes/player/footprint for decal!
Validation required for shape: starter.fps/data/shapes/player/player.dts
Validation required for shape: starter.fps/data/shapes/player/player.dts
and
common/client/missionDownload.cs (67): Unable to find function StartClientReplication
common/client/missionDownload.cs (68): Unable to find function StartFoliageReplication


Anyone got any ideas?

Thanks

Joseph

#1
08/18/2005 (5:11 pm)
It's not finding the terrain blending materials. See the docs.
#2
08/18/2005 (5:15 pm)
Ah... will do :)


Thanks Ben




I feel stupid now :(
#3
08/18/2005 (7:42 pm)
The last two errors (two missing functions) are non-fatal and exist in the terrain_water_demo. Probably should be cleaned up for final but I wouldn't try fixing them until you've got the rest fixed :P
#4
08/18/2005 (8:27 pm)
Thanks Tony.
#5
08/19/2005 (9:11 am)
I've got rid of the Blender::blend: Mismatch in (0, 0) of projection! errors...

But now I just get lots of:

MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11BMaterial'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS20Material'
MatInstance::MatInstance() - Unable to find material 'TerrainBlenderPS11AMaterial'
#6
08/19/2005 (10:42 am)
You need something like this in a materials.cs that's being loaded.

//*****************************************************************************
// Environmental Materials
//*****************************************************************************

new CustomMaterial(AtlasMaterial)
{
   shader = AtlasShader;
   version = 1.1;
};

new CustomMaterial(TerrainMaterial)
{
   shader = TerrShader;
   version = 1.1;
};

new CustomMaterial(TerrainBlenderPS20Material)
{
   shader = TerrBlender20Shader;
   version = 2.0;
};

new CustomMaterial(TerrainBlenderPS11AMaterial)
{
   shader = TerrBlender11AShader;
   pixVersion = 1.1;
};

new CustomMaterial(TerrainBlenderPS11BMaterial)
{
   shader = TerrBlender11BShader;
   pixVersion = 1.1;
};

You'll see this script in example/terrain_water_demo/data/terrains/materials.cs
#7
08/19/2005 (10:56 am)
Tony, i'm not using "terrain_water_demo" I took the materials.cs script from the demo folder..

//*****************************************************************************
// Custom Materials
//*****************************************************************************

// for writing to z buffer
new CustomMaterial( Blank )
{
   shader = BlankShader;
   version = 1.1;
};


//*****************************************************************************
// Environmental Materials
//*****************************************************************************

new CustomMaterial(TerrainMaterial)
{
   shader = TerrShader;
   version = 1.1;
};

new CustomMaterial(TerrainBlenderPS20Material)
{
   shader = TerrBlender20Shader;
   version = 2.0;
};

new CustomMaterial(TerrainBlenderPS11AMaterial)
{
   shader = TerrBlender11AShader;
   pixVersion = 1.1;
};

new CustomMaterial(TerrainBlenderPS11BMaterial)
{
   shader = TerrBlender11BShader;
   pixVersion = 1.1;
};

I'm going to re do it all later and make notes of what I do, to see if someone can spot something I didn't change/add.
#8
08/19/2005 (12:53 pm)
It's not finding those materials; are you sure they're initializing properly?
#9
08/19/2005 (1:28 pm)
Got is working.... well almost:

img394.imageshack.us/img394/6209/tse5ss.jpg

Just need to sort out a few small errors and the terrain textures :)
I'll look at posting it when i'm done.

Thanks for the help everyone!

Joseph
#10
08/19/2005 (1:52 pm)
If you use Legacy terrain You just have to go in the editor and reassign materials (Menu Window-> Terrain painter)
#11
08/19/2005 (1:56 pm)
Vincent, just did that :)

img397.imageshack.us/img397/9101/tse27wd.jpg
#12
08/19/2005 (3:33 pm)
Looks good.
#13
08/19/2005 (5:21 pm)
Thanks Ben