Game Development Community

MS4 compiling shadows troubles

by Erik Madison · in Torque Game Engine Advanced · 09/08/2006 (4:04 am) · 2 replies

Head compiles fine for me. Porting all of it to our project produces an error, but for the life of me, I can't find any relevant differences.

sgObjectShadows.cc
../engine\game/shapebase.h(618) : error C2146: syntax error : missing ';' before identifier 'shadows'

relevant (?) line:
protected:
sgObjectShadows shadows;

Oddly, shapebase alone compiles fine. I only get the above error on sgFormatManager.cc and sgObjectShadows.cc

#1
09/08/2006 (6:54 am)
That usually happens when you have circular header references, where Header A includes Header B, but Header B includes Header A (assuming that both have classes that are dependent on each other).

It sounds like one of the changes you made to TSE added ShapeBase's header (or a header that includes it) to one of the headers included by the sgObjectShadows header. A good place to start looking is in these header files that are directly included by sgObjectShadows:

#include "collision/depthSortList.h"
#include "materials/shaderData.h"
#include "sim/sceneObject.h"
#include "ts/tsShapeInstance.h"


Also try doing a dif between your merged TSE and a clean head to see where any changes were made.
#2
09/08/2006 (7:51 am)
That's it, thank you! I searched the error online, and came up with a couple hundred things it _could_ mean, none of which applied. I'd forgotten about some minor additions to tsShapeInstance.