$#include "Graphics/Terrain.h" class Terrain : public Component { void SetPatchSize(int size); void SetSpacing(const Vector3& spacing); void SetMaxLodLevels(unsigned levels); void SetOcclusionLodLevel(unsigned level); void SetSmoothing(bool enable); bool SetHeightMap(Image* image); void SetMaterial(Material* material); void SetNorthNeighbor(Terrain* north); void SetSouthNeighbor(Terrain* south); void SetWestNeighbor(Terrain* west); void SetEastNeighbor(Terrain* east); void SetNeighbors(Terrain* north, Terrain* south, Terrain* west, Terrain* east); void SetDrawDistance(float distance); void SetShadowDistance(float distance); void SetLodBias(float bias); void SetViewMask(unsigned mask); void SetLightMask(unsigned mask); void SetShadowMask(unsigned mask); void SetZoneMask(unsigned mask); void SetMaxLights(unsigned num); void SetCastShadows(bool enable); void SetOccluder(bool enable); void SetOccludee(bool enable); void ApplyHeightMap(); int GetPatchSize() const; const Vector3& GetSpacing() const; const IntVector2& GetNumVertices() const; const IntVector2& GetNumPatches() const; unsigned GetMaxLodLevels() const; unsigned GetOcclusionLodLevel() const; bool GetSmoothing() const; Image* GetHeightMap() const; Material* GetMaterial() const; Terrain* GetNorthNeighbor() const; Terrain* GetSouthNeighbor() const; Terrain* GetWestNeighbor() const; Terrain* GetEastNeighbor() const; TerrainPatch* GetPatch(unsigned index) const; TerrainPatch* GetPatch(int x, int z) const; TerrainPatch* GetNeighborPatch(int x, int z) const; float GetHeight(const Vector3& worldPosition) const; Vector3 GetNormal(const Vector3& worldPosition) const; IntVector2 WorldToHeightMap(const Vector3& worldPosition) const; SharedArrayPtr GetHeightData() const; float GetDrawDistance() const; float GetShadowDistance() const; float GetLodBias() const; unsigned GetViewMask() const; unsigned GetLightMask() const; unsigned GetShadowMask() const; unsigned GetZoneMask() const; unsigned GetMaxLights() const; bool IsVisible() const; bool GetCastShadows() const; bool IsOccluder() const; bool IsOccludee() const; tolua_property__get_set int patchSize; tolua_property__get_set Vector3& spacing; tolua_readonly tolua_property__get_set IntVector2& numVertices; tolua_readonly tolua_property__get_set IntVector2& numPatches; tolua_property__get_set unsigned maxLodLevels; tolua_property__get_set unsigned occlusionLodLevel; tolua_property__get_set bool smoothing; tolua_property__get_set Image* heightMap; tolua_property__get_set Material* material; tolua_property__get_set Terrain* northNeighbor; tolua_property__get_set Terrain* southNeighbor; tolua_property__get_set Terrain* westNeighbor; tolua_property__get_set Terrain* eastNeighbor; tolua_property__get_set float drawDistance; tolua_property__get_set float shadowDistance; tolua_property__get_set float lodBias; tolua_property__get_set unsigned viewMask; tolua_property__get_set unsigned lightMask; tolua_property__get_set unsigned shadowMask; tolua_property__get_set unsigned zoneMask; tolua_property__get_set unsigned maxLights; tolua_readonly tolua_property__is_set bool visible; tolua_property__get_set bool castShadows; tolua_property__is_set bool occluder; tolua_property__is_set bool occludee; };