14class Terrain :
public Object {
20 void drawOutline(Object*);
22 void handleCollision(Object* temp) {}
23 void animate(
const float&, Object*);
26 void calcTerrainNorm(
Vector*);
27 void calcViewableTerrainNorm();
35 float getHeight(
const float&,
const float&);
37 void printTypeName() { PRINT_DEBUG(
"Terrain\n"); }
38 virtual void buildLuaObjectTable(lua_State *L);
39 virtual void transferLuaObjectTable(lua_State *L);
42 void setVertexHeight(
const int&,
const int&,
const float&);
43 void setVertexType(
const int&,
const int&,
const int&);
44 void setVertexColor(
const int&,
const int&,
const Vector&);
45 float getVertexHeight(
const int&,
const int&);
46 int getVertexType(
const int&,
const int&);
47 Vector getVertexColor(
const int&,
const int&);
49 DisplayList* getDisplayList() {
return displayList_; }
50 void setDisplayList(
DisplayList* displayList) { displayList_ = displayList; }
52 int getXSize() {
return xSize_; }
53 int getZSize() {
return zSize_; }
54 int getScaleFactor() {
return scaleFactor_; }
56 void setCurveDistance(
const GLfloat &curveDistance) { curveDistance_ = curveDistance; }
57 void setCurveRate(
const GLfloat &curveRate) { curveRate_ = curveRate; }
58 void setIsCurveEnabled(
const bool &isCurveEnabled) { isCurveEnabled_ = isCurveEnabled; }
59 GLfloat getCurveDistance() {
return curveDistance_; };
60 GLfloat getCurveRate() {
return curveRate_; };
61 GLfloat getIsCurveEnabled() {
return isCurveEnabled_; }
70 GLfloat** lightIntensity_;
75 GLfloat curveDistance_;