diff options
| -rw-r--r-- | indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl | 2 | ||||
| -rw-r--r-- | indra/newview/llviewerregion.h | 488 | ||||
| -rw-r--r-- | indra/newview/llvovolume.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/pipeline.cpp | 8 | 
4 files changed, 255 insertions, 248 deletions
diff --git a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl index 3b87c70932..414ba3236a 100644 --- a/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl +++ b/indra/newview/app_settings/shaders/class2/windlight/atmosphericsVarsV.glsl @@ -75,7 +75,7 @@ void setAdditiveColor(vec3 v)  {      // SL-1491 clamp additive term to something reasonable to prevent      // lens flares over non-reflective surfaces -    v = clamp(v, vec3(0), vec3(0.2)); +    v = clamp(v, vec3(0), vec3(0.8));  	additive_color = v;  	vary_AdditiveColor = v;  } diff --git a/indra/newview/llviewerregion.h b/indra/newview/llviewerregion.h index d74b77c880..302647215f 100644 --- a/indra/newview/llviewerregion.h +++ b/indra/newview/llviewerregion.h @@ -74,311 +74,311 @@ class LLVOCachePartition;  class LLViewerRegion: public LLCapabilityProvider // implements this interface  {  public: -    //MUST MATCH THE ORDER OF DECLARATION IN CONSTRUCTOR +	//MUST MATCH THE ORDER OF DECLARATION IN CONSTRUCTOR  	typedef enum  -    { +	{  		PARTITION_HUD=0, -        PARTITION_TERRAIN, -        PARTITION_VOIDWATER, -        PARTITION_WATER, -        PARTITION_TREE, -        PARTITION_PARTICLE, -        PARTITION_GRASS, -        PARTITION_VOLUME, -        PARTITION_BRIDGE, -        PARTITION_HUD_PARTICLE, -        PARTITION_VO_CACHE, -        PARTITION_NONE, -        NUM_PARTITIONS -    } eObjectPartitions; - -    typedef boost::signals2::signal<void(const LLUUID& region_id)> caps_received_signal_t; - -    LLViewerRegion(const U64 &handle, -        const LLHost &host, -        const U32 surface_grid_width, -        const U32 patch_grid_width, -        const F32 region_width_meters); -    ~LLViewerRegion(); - -    // Call this after you have the region name and handle. -    void loadObjectCache(); -    void saveObjectCache(); - -    void sendMessage(); // Send the current message to this region's simulator -    void sendReliableMessage(); // Send the current message to this region's simulator - -    void setOriginGlobal(const LLVector3d &origin); -    //void setAgentOffset(const LLVector3d &offset); -    void updateRenderMatrix(); - -    void setAllowDamage(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_DAMAGE, b); } -    void setAllowLandmark(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_LANDMARK, b); } -    void setAllowSetHome(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_SET_HOME, b); } -    void setResetHomeOnTeleport(BOOL b) { setRegionFlag(REGION_FLAGS_RESET_HOME_ON_TELEPORT, b); } -    void setSunFixed(BOOL b) { setRegionFlag(REGION_FLAGS_SUN_FIXED, b); } -    //void setBlockFly(BOOL b) { setRegionFlag(REGION_FLAGS_BLOCK_FLY, b); }		Never used -    void setAllowDirectTeleport(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_DIRECT_TELEPORT, b); } - - -    inline BOOL getAllowDamage()			const; -    inline BOOL getAllowLandmark()			const; -    inline BOOL getAllowSetHome()			const; -    inline BOOL getResetHomeOnTeleport()	const; -    inline BOOL getSunFixed()				const; -    inline BOOL getBlockFly()				const; -    inline BOOL getAllowDirectTeleport()	const; -    inline BOOL isPrelude()					const; -    inline BOOL getAllowTerraform() 		const; -    inline BOOL getRestrictPushObject()		const; -    inline BOOL getReleaseNotesRequested()		const; - -    bool isAlive(); // can become false if circuit disconnects - -    void setWaterHeight(F32 water_level); -    F32 getWaterHeight() const; - -    BOOL isVoiceEnabled() const; - -    void setBillableFactor(F32 billable_factor) { mBillableFactor = billable_factor; } -    F32 getBillableFactor() 		const 	{ return mBillableFactor; } - -    // Maximum number of primitives allowed, regardless of object -    // bonus factor. -    U32 getMaxTasks() const { return mMaxTasks; } -    void setMaxTasks(U32 max_tasks) { mMaxTasks = max_tasks; } - -    // Draw lines in the dirt showing ownership. Return number of  -    // vertices drawn. -    S32 renderPropertyLines(); - -    // Call this whenever you change the height data in the region. -    // (Automatically called by LLSurfacePatch's update routine) -    void dirtyHeights(); - -    LLViewerParcelOverlay *getParcelOverlay() const +		PARTITION_TERRAIN, +		PARTITION_VOIDWATER, +		PARTITION_WATER, +		PARTITION_TREE, +		PARTITION_PARTICLE, +		PARTITION_GRASS, +		PARTITION_VOLUME, +		PARTITION_BRIDGE, +		PARTITION_HUD_PARTICLE, +		PARTITION_VO_CACHE, +		PARTITION_NONE, +		NUM_PARTITIONS +	} eObjectPartitions; + +	typedef boost::signals2::signal<void(const LLUUID& region_id)> caps_received_signal_t; + +	LLViewerRegion(const U64 &handle, +				   const LLHost &host, +				   const U32 surface_grid_width, +				   const U32 patch_grid_width, +				   const F32 region_width_meters); +	~LLViewerRegion(); + +	// Call this after you have the region name and handle. +	void loadObjectCache(); +	void saveObjectCache(); + +	void sendMessage(); // Send the current message to this region's simulator +	void sendReliableMessage(); // Send the current message to this region's simulator + +	void setOriginGlobal(const LLVector3d &origin); +	//void setAgentOffset(const LLVector3d &offset); +	void updateRenderMatrix(); + +	void setAllowDamage(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_DAMAGE, b); } +	void setAllowLandmark(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_LANDMARK, b); } +	void setAllowSetHome(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_SET_HOME, b); } +	void setResetHomeOnTeleport(BOOL b) { setRegionFlag(REGION_FLAGS_RESET_HOME_ON_TELEPORT, b); } +	void setSunFixed(BOOL b) { setRegionFlag(REGION_FLAGS_SUN_FIXED, b); } +	//void setBlockFly(BOOL b) { setRegionFlag(REGION_FLAGS_BLOCK_FLY, b); }		Never used +	void setAllowDirectTeleport(BOOL b) { setRegionFlag(REGION_FLAGS_ALLOW_DIRECT_TELEPORT, b); } + + +	inline BOOL getAllowDamage()			const; +	inline BOOL getAllowLandmark()			const; +	inline BOOL getAllowSetHome()			const; +	inline BOOL getResetHomeOnTeleport()	const; +	inline BOOL getSunFixed()				const; +	inline BOOL getBlockFly()				const; +	inline BOOL getAllowDirectTeleport()	const; +	inline BOOL isPrelude()					const; +	inline BOOL getAllowTerraform() 		const; +	inline BOOL getRestrictPushObject()		const; +	inline BOOL getReleaseNotesRequested()		const; + +	bool isAlive(); // can become false if circuit disconnects + +	void setWaterHeight(F32 water_level); +	F32 getWaterHeight() const; + +	BOOL isVoiceEnabled() const; + +	void setBillableFactor(F32 billable_factor) { mBillableFactor = billable_factor; } +	F32 getBillableFactor() 		const 	{ return mBillableFactor; } + +	// Maximum number of primitives allowed, regardless of object +	// bonus factor. +	U32 getMaxTasks() const { return mMaxTasks; } +	void setMaxTasks(U32 max_tasks) { mMaxTasks = max_tasks; } + +	// Draw lines in the dirt showing ownership. Return number of  +	// vertices drawn. +	S32 renderPropertyLines(); + +	// Call this whenever you change the height data in the region. +	// (Automatically called by LLSurfacePatch's update routine) +	void dirtyHeights(); + +	LLViewerParcelOverlay *getParcelOverlay() const  			{ return mParcelOverlay; } -    inline void setRegionFlag(U64 flag, BOOL on); -    inline BOOL getRegionFlag(U64 flag) const; -    void setRegionFlags(U64 flags); -    U64 getRegionFlags() const					{ return mRegionFlags; } +	inline void setRegionFlag(U64 flag, BOOL on); +	inline BOOL getRegionFlag(U64 flag) const; +	void setRegionFlags(U64 flags); +	U64 getRegionFlags() const					{ return mRegionFlags; } -    inline void setRegionProtocol(U64 protocol, BOOL on); -    BOOL getRegionProtocol(U64 protocol) const; -    void setRegionProtocols(U64 protocols)			{ mRegionProtocols = protocols; } -    U64 getRegionProtocols() const					{ return mRegionProtocols; } +	inline void setRegionProtocol(U64 protocol, BOOL on); +	BOOL getRegionProtocol(U64 protocol) const; +	void setRegionProtocols(U64 protocols)			{ mRegionProtocols = protocols; } +	U64 getRegionProtocols() const					{ return mRegionProtocols; } -    void setTimeDilation(F32 time_dilation); -    F32  getTimeDilation() const				{ return mTimeDilation; } +	void setTimeDilation(F32 time_dilation); +	F32  getTimeDilation() const				{ return mTimeDilation; } -    // Origin height is at zero. -    const LLVector3d &getOriginGlobal() const; -    LLVector3 getOriginAgent() const; +	// Origin height is at zero. +	const LLVector3d &getOriginGlobal() const; +	LLVector3 getOriginAgent() const; -    // Center is at the height of the water table. -    const LLVector3d &getCenterGlobal() const; -    LLVector3 getCenterAgent() const; +	// Center is at the height of the water table. +	const LLVector3d &getCenterGlobal() const; +	LLVector3 getCenterAgent() const; -    void setRegionNameAndZone(const std::string& name_and_zone); -    const std::string& getName() const				{ return mName; } -    const std::string& getZoning() const			{ return mZoning; } +	void setRegionNameAndZone(const std::string& name_and_zone); +	const std::string& getName() const				{ return mName; } +	const std::string& getZoning() const			{ return mZoning; } -    void setOwner(const LLUUID& owner_id); -    const LLUUID& getOwner() const; +	void setOwner(const LLUUID& owner_id); +	const LLUUID& getOwner() const; -    // Is the current agent on the estate manager list for this region? -    void setIsEstateManager(BOOL b) { mIsEstateManager = b; } -    BOOL isEstateManager() const { return mIsEstateManager; } -    BOOL canManageEstate() const; +	// Is the current agent on the estate manager list for this region? +	void setIsEstateManager(BOOL b) { mIsEstateManager = b; } +	BOOL isEstateManager() const { return mIsEstateManager; } +	BOOL canManageEstate() const; -    void setSimAccess(U8 sim_access)			{ mSimAccess = sim_access; } -    U8 getSimAccess() const						{ return mSimAccess; } -    const std::string getSimAccessString() const; +	void setSimAccess(U8 sim_access)			{ mSimAccess = sim_access; } +	U8 getSimAccess() const						{ return mSimAccess; } +	const std::string getSimAccessString() const; -    // Homestead-related getters; there are no setters as nobody should be -    // setting them other than the individual message handler which is a member -    S32 getSimClassID()                    const { return mClassID; } -    S32 getSimCPURatio()                   const { return mCPURatio; } -    const std::string& getSimColoName()    const { return mColoName; } -    const std::string& getSimProductSKU()  const { return mProductSKU; } -    std::string getLocalizedSimProductName() const; - -    // Returns "Sandbox", "Expensive", etc. -    static std::string regionFlagsToString(U64 flags); - -    // Returns translated version of "Mature", "PG", "Adult", etc. -    static std::string accessToString(U8 sim_access); - -    // Returns "M", "PG", "A" etc. -    static std::string accessToShortString(U8 sim_access); -    static U8          shortStringToAccess(const std::string &sim_access); - -    // Return access icon name -    static std::string getAccessIcon(U8 sim_access); +	// Homestead-related getters; there are no setters as nobody should be +	// setting them other than the individual message handler which is a member +	S32 getSimClassID()                    const { return mClassID; } +	S32 getSimCPURatio()                   const { return mCPURatio; } +	const std::string& getSimColoName()    const { return mColoName; } +	const std::string& getSimProductSKU()  const { return mProductSKU; } +	std::string getLocalizedSimProductName() const; + +	// Returns "Sandbox", "Expensive", etc. +	static std::string regionFlagsToString(U64 flags); + +	// Returns translated version of "Mature", "PG", "Adult", etc. +	static std::string accessToString(U8 sim_access); + +	// Returns "M", "PG", "A" etc. +	static std::string accessToShortString(U8 sim_access); +	static U8          shortStringToAccess(const std::string &sim_access); + +	// Return access icon name +	static std::string getAccessIcon(U8 sim_access); -    // helper function which just makes sure all interested parties -    // can process the message. -    static void processRegionInfo(LLMessageSystem* msg, void**); +	// helper function which just makes sure all interested parties +	// can process the message. +	static void processRegionInfo(LLMessageSystem* msg, void**); -    //check if the viewer camera is static -    static BOOL isViewerCameraStatic(); -    static void calcNewObjectCreationThrottle(); +	//check if the viewer camera is static +	static BOOL isViewerCameraStatic(); +	static void calcNewObjectCreationThrottle(); -    void setCacheID(const LLUUID& id); +	void setCacheID(const LLUUID& id); -    F32	getWidth() const						{ return mWidth; } +	F32	getWidth() const						{ return mWidth; } -    void idleUpdate(F32 max_update_time); -    void lightIdleUpdate(); -    bool addVisibleGroup(LLViewerOctreeGroup* group); -    void addVisibleChildCacheEntry(LLVOCacheEntry* parent, LLVOCacheEntry* child); -    void addActiveCacheEntry(LLVOCacheEntry* entry); +	void idleUpdate(F32 max_update_time); +	void lightIdleUpdate(); +	bool addVisibleGroup(LLViewerOctreeGroup* group); +	void addVisibleChildCacheEntry(LLVOCacheEntry* parent, LLVOCacheEntry* child); +	void addActiveCacheEntry(LLVOCacheEntry* entry);  	void removeActiveCacheEntry(LLVOCacheEntry* entry, LLDrawable* drawablep);	 -    void killCacheEntry(U32 local_id); //physically delete the cache entry	 +	void killCacheEntry(U32 local_id); //physically delete the cache entry	 -    // Like idleUpdate, but forces everything to complete regardless of -    // how long it takes. -    void forceUpdate(); +	// Like idleUpdate, but forces everything to complete regardless of +	// how long it takes. +	void forceUpdate(); -    void connectNeighbor(LLViewerRegion *neighborp, U32 direction); +	void connectNeighbor(LLViewerRegion *neighborp, U32 direction); -    void updateNetStats(); +	void updateNetStats(); -    U32	getPacketsLost() const; +	U32	getPacketsLost() const; -    S32 getHttpResponderID() const; +	S32 getHttpResponderID() const; -    // Get/set named capability URLs for this region. -    void setSeedCapability(const std::string& url); -    S32 getNumSeedCapRetries(); -    void setCapability(const std::string& name, const std::string& url); -    void setCapabilityDebug(const std::string& name, const std::string& url); -    bool isCapabilityAvailable(const std::string& name) const; -    // implements LLCapabilityProvider +	// Get/set named capability URLs for this region. +	void setSeedCapability(const std::string& url); +	S32 getNumSeedCapRetries(); +	void setCapability(const std::string& name, const std::string& url); +	void setCapabilityDebug(const std::string& name, const std::string& url); +	bool isCapabilityAvailable(const std::string& name) const; +	// implements LLCapabilityProvider      virtual std::string getCapability(const std::string& name) const;      std::string getCapabilityDebug(const std::string& name) const; -    // has region received its final (not seed) capability list? -    bool capabilitiesReceived() const; -    void setCapabilitiesReceived(bool received); -    boost::signals2::connection setCapabilitiesReceivedCallback(const caps_received_signal_t::slot_type& cb); +	// has region received its final (not seed) capability list? +	bool capabilitiesReceived() const; +	void setCapabilitiesReceived(bool received); +	boost::signals2::connection setCapabilitiesReceivedCallback(const caps_received_signal_t::slot_type& cb); -    static bool isSpecialCapabilityName(const std::string &name); -    void logActiveCapabilities() const; +	static bool isSpecialCapabilityName(const std::string &name); +	void logActiveCapabilities() const;      /// implements LLCapabilityProvider -    /*virtual*/ const LLHost& getHost() const; -    const U64 		&getHandle() const 			{ return mHandle; } +	/*virtual*/ const LLHost& getHost() const; +	const U64 		&getHandle() const 			{ return mHandle; } -    LLSurface		&getLand() const; +	LLSurface		&getLand() const; -    // set and get the region id -    const LLUUID& getRegionID() const; -    void setRegionID(const LLUUID& region_id); +	// set and get the region id +	const LLUUID& getRegionID() const; +	void setRegionID(const LLUUID& region_id); -    BOOL pointInRegionGlobal(const LLVector3d &point_global) const; -    LLVector3	getPosRegionFromGlobal(const LLVector3d &point_global) const; -    LLVector3	getPosRegionFromAgent(const LLVector3 &agent_pos) const; -    LLVector3	getPosAgentFromRegion(const LLVector3 ®ion_pos) const; -    LLVector3d	getPosGlobalFromRegion(const LLVector3 &offset) const; +	BOOL pointInRegionGlobal(const LLVector3d &point_global) const; +	LLVector3	getPosRegionFromGlobal(const LLVector3d &point_global) const; +	LLVector3	getPosRegionFromAgent(const LLVector3 &agent_pos) const; +	LLVector3	getPosAgentFromRegion(const LLVector3 ®ion_pos) const; +	LLVector3d	getPosGlobalFromRegion(const LLVector3 &offset) const; -    LLVLComposition *getComposition() const; -    F32 getCompositionXY(const S32 x, const S32 y) const; +	LLVLComposition *getComposition() const; +	F32 getCompositionXY(const S32 x, const S32 y) const; -    BOOL isOwnedSelf(const LLVector3& pos); +	BOOL isOwnedSelf(const LLVector3& pos); -    // Owned by a group you belong to?  (officer OR member) -    BOOL isOwnedGroup(const LLVector3& pos); +	// Owned by a group you belong to?  (officer OR member) +	BOOL isOwnedGroup(const LLVector3& pos); -    // deal with map object updates in the world. -    void updateCoarseLocations(LLMessageSystem* msg); +	// deal with map object updates in the world. +	void updateCoarseLocations(LLMessageSystem* msg); -    F32 getLandHeightRegion(const LLVector3& region_pos); +	F32 getLandHeightRegion(const LLVector3& region_pos); -    U8 getCentralBakeVersion() { return mCentralBakeVersion; } +	U8 getCentralBakeVersion() { return mCentralBakeVersion; } -    void getInfo(LLSD& info); +	void getInfo(LLSD& info); -    bool meshRezEnabled() const; -    bool meshUploadEnabled() const; +	bool meshRezEnabled() const; +	bool meshUploadEnabled() const; -    // has region received its simulator features list? Requires an additional query after caps received. -    void setSimulatorFeaturesReceived(bool); -    bool simulatorFeaturesReceived() const; -    boost::signals2::connection setSimulatorFeaturesReceivedCallback(const caps_received_signal_t::slot_type& cb); +	// has region received its simulator features list? Requires an additional query after caps received. +	void setSimulatorFeaturesReceived(bool); +	bool simulatorFeaturesReceived() const; +	boost::signals2::connection setSimulatorFeaturesReceivedCallback(const caps_received_signal_t::slot_type& cb);  	void getSimulatorFeatures(LLSD& info) const;	 -    void setSimulatorFeatures(const LLSD& info); +	void setSimulatorFeatures(const LLSD& info); -    bool dynamicPathfindingEnabled() const; - -    bool avatarHoverHeightEnabled() const; - -    typedef enum -    { -        CACHE_MISS_TYPE_FULL = 0, -        CACHE_MISS_TYPE_CRC, -        CACHE_MISS_TYPE_NONE -    } eCacheMissType; - -    typedef enum -    { -        CACHE_UPDATE_DUPE = 0, -        CACHE_UPDATE_CHANGED, -        CACHE_UPDATE_ADDED, -        CACHE_UPDATE_REPLACED -    } eCacheUpdateResult; - -    // handle a full update message -    eCacheUpdateResult cacheFullUpdate(LLDataPackerBinaryBuffer &dp, U32 flags); +	bool dynamicPathfindingEnabled() const; + +	bool avatarHoverHeightEnabled() const; + +	typedef enum +	{ +		CACHE_MISS_TYPE_FULL = 0, +		CACHE_MISS_TYPE_CRC, +		CACHE_MISS_TYPE_NONE +	} eCacheMissType; + +	typedef enum +	{ +		CACHE_UPDATE_DUPE = 0, +		CACHE_UPDATE_CHANGED, +		CACHE_UPDATE_ADDED, +		CACHE_UPDATE_REPLACED +	} eCacheUpdateResult; + +	// handle a full update message +	eCacheUpdateResult cacheFullUpdate(LLDataPackerBinaryBuffer &dp, U32 flags);  	eCacheUpdateResult cacheFullUpdate(LLViewerObject* objectp, LLDataPackerBinaryBuffer &dp, U32 flags);	 -    LLVOCacheEntry* getCacheEntryForOctree(U32 local_id); -    LLVOCacheEntry* getCacheEntry(U32 local_id, bool valid = true); -    bool probeCache(U32 local_id, U32 crc, U32 flags, U8 &cache_miss_type); -    U64 getRegionCacheHitCount() { return mRegionCacheHitCount; } -    U64 getRegionCacheMissCount() { return mRegionCacheMissCount; } -    void requestCacheMisses(); -    void addCacheMissFull(const U32 local_id); -    //update object cache if the object receives a full-update or terse update -    LLViewerObject* updateCacheEntry(U32 local_id, LLViewerObject* objectp, U32 update_type); -    void findOrphans(U32 parent_id); -    void clearCachedVisibleObjects(); -    void dumpCache(); - -    void unpackRegionHandshake(); - -    void calculateCenterGlobal(); -    void calculateCameraDistance(); - -    friend std::ostream& operator<<(std::ostream &s, const LLViewerRegion ®ion); +	LLVOCacheEntry* getCacheEntryForOctree(U32 local_id); +	LLVOCacheEntry* getCacheEntry(U32 local_id, bool valid = true); +	bool probeCache(U32 local_id, U32 crc, U32 flags, U8 &cache_miss_type); +	U64 getRegionCacheHitCount() { return mRegionCacheHitCount; } +	U64 getRegionCacheMissCount() { return mRegionCacheMissCount; } +	void requestCacheMisses(); +	void addCacheMissFull(const U32 local_id); +	//update object cache if the object receives a full-update or terse update +	LLViewerObject* updateCacheEntry(U32 local_id, LLViewerObject* objectp, U32 update_type); +	void findOrphans(U32 parent_id); +	void clearCachedVisibleObjects(); +	void dumpCache(); + +	void unpackRegionHandshake(); + +	void calculateCenterGlobal(); +	void calculateCameraDistance(); + +	friend std::ostream& operator<<(std::ostream &s, const LLViewerRegion ®ion);      /// implements LLCapabilityProvider      virtual std::string getDescription() const;      std::string getViewerAssetUrl() const { return mViewerAssetUrl; } -    U32 getNumOfVisibleGroups() const; -    U32 getNumOfActiveCachedObjects() const; -    LLSpatialPartition* getSpatialPartition(U32 type); -    LLVOCachePartition* getVOCachePartition(); +	U32 getNumOfVisibleGroups() const; +	U32 getNumOfActiveCachedObjects() const; +	LLSpatialPartition* getSpatialPartition(U32 type); +	LLVOCachePartition* getVOCachePartition(); -    bool objectIsReturnable(const LLVector3& pos, const std::vector<LLBBox>& boxes) const; +	bool objectIsReturnable(const LLVector3& pos, const std::vector<LLBBox>& boxes) const;  	bool childrenObjectReturnable( const std::vector<LLBBox>& boxes ) const; -    bool objectsCrossParcel(const std::vector<LLBBox>& boxes) const; +	bool objectsCrossParcel(const std::vector<LLBBox>& boxes) const;  	void getNeighboringRegions( std::vector<LLViewerRegion*>& uniqueRegions );  	void getNeighboringRegionsStatus( std::vector<S32>& regions ); -    const LLViewerRegionImpl * getRegionImpl() const { return mImpl; } -    LLViewerRegionImpl * getRegionImplNC() { return mImpl; } +	const LLViewerRegionImpl * getRegionImpl() const { return mImpl; } +	LLViewerRegionImpl * getRegionImplNC() { return mImpl; } -    // implements the materials capability throttle -    bool materialsCapThrottled() const { return !mMaterialsCapThrottleTimer.hasExpired(); } -    void resetMaterialsCapThrottle(); +	// implements the materials capability throttle +	bool materialsCapThrottled() const { return !mMaterialsCapThrottleTimer.hasExpired(); } +	void resetMaterialsCapThrottle(); -    U32 getMaxMaterialsPerTransaction() const; +	U32 getMaxMaterialsPerTransaction() const; -    void removeFromCreatedList(U32 local_id); +	void removeFromCreatedList(U32 local_id);  	void addToCreatedList(U32 local_id);	  	BOOL isPaused() const {return mPaused;} diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index d4c8d4f923..f046a903ed 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -2194,8 +2194,9 @@ bool LLVOVolume::notifyAboutMissingAsset(LLViewerTexture *texture)  				mat->setSpecularID(LLUUID::null);  			} break; -        default: -            break; +		case LLRender::NUM_TEXTURE_CHANNELS: +				//nothing to do, make compiler happy +			break;  		} //switch  	} //for diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 9531e0a349..a513588568 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -9820,16 +9820,20 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)  		//plane params  		LLVector3 pnorm; +		F32 plane_d; +  		S32 water_clip = 0;  		if (!LLViewerCamera::getInstance()->cameraUnderWater())  		{ //camera is above water, clip plane points up  			pnorm.setVec(0,0,1); +            plane_d = -water_height;  			plane.setVec(pnorm, -distance_to_water);  			water_clip = -1;  		}  		else  		{	//camera is below water, clip plane points down  			pnorm = LLVector3(0,0,-1); +            plane_d = water_height;  			plane.setVec(pnorm, distance_to_water);  			water_clip = 1;  		} @@ -9862,6 +9866,7 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)  			stop_glerror(); +            gGL.matrixMode(LLRender::MM_MODELVIEW);  			gGL.pushMatrix();  			glh::matrix4f current = get_current_modelview(); @@ -9981,6 +9986,7 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)              LLPipeline::sRenderingWaterReflection = false;  			glCullFace(GL_BACK); +            gGL.matrixMode(LLRender::MM_MODELVIEW);  			gGL.popMatrix();  			mWaterRef.flush();  			set_current_modelview(current); @@ -10089,7 +10095,7 @@ void LLPipeline::generateWaterReflection(LLCamera& camera_in)  		gPipeline.popRenderTypeMask();  		LLDrawPoolWater::sNeedsReflectionUpdate = FALSE;  		LLDrawPoolWater::sNeedsDistortionUpdate = FALSE; -		LLPlane npnorm(-pnorm, -distance_to_water); +		LLPlane npnorm(-pnorm, -plane_d);  		LLViewerCamera::getInstance()->setUserClipPlane(npnorm);  		LLGLState::checkStates();  | 
