Full v2.6 renderer.
This commit is contained in:
@@ -212,12 +212,18 @@ public:
|
||||
void renderGeomDeferred(LLCamera& camera);
|
||||
void renderGeomPostDeferred(LLCamera& camera);
|
||||
void renderGeomShadow(LLCamera& camera);
|
||||
void bindDeferredShader(LLGLSLShader& shader, U32 light_index = 0);
|
||||
void bindDeferredShader(LLGLSLShader& shader, U32 light_index = 0, LLRenderTarget* gi_source = NULL, LLRenderTarget* last_gi_post = NULL, U32 noise_map = 0xFFFFFFFF);
|
||||
void setupSpotLight(LLGLSLShader& shader, LLDrawable* drawablep);
|
||||
|
||||
void unbindDeferredShader(LLGLSLShader& shader);
|
||||
void renderDeferredLighting();
|
||||
|
||||
void generateWaterReflection(LLCamera& camera);
|
||||
void generateSunShadow(LLCamera& camera);
|
||||
|
||||
|
||||
void renderShadow(glh::matrix4f& view, glh::matrix4f& proj, LLCamera& camera, LLCullResult& result, BOOL use_shader = TRUE, BOOL use_occlusion = TRUE);
|
||||
void generateGI(LLCamera& camera, LLVector3& lightDir, std::vector<LLVector3>& vpc);
|
||||
void renderHighlights();
|
||||
void renderDebug();
|
||||
|
||||
@@ -254,6 +260,9 @@ public:
|
||||
|
||||
BOOL hasRenderDebugFeatureMask(const U32 mask) const { return (mRenderDebugFeatureMask & mask) ? TRUE : FALSE; }
|
||||
BOOL hasRenderDebugMask(const U32 mask) const { return (mRenderDebugMask & mask) ? TRUE : FALSE; }
|
||||
|
||||
|
||||
|
||||
BOOL hasRenderType(const U32 type) const;
|
||||
BOOL hasAnyRenderType(const U32 type, ...) const;
|
||||
|
||||
@@ -459,17 +468,43 @@ public:
|
||||
static F32 sMinRenderSize;
|
||||
|
||||
//screen texture
|
||||
|
||||
LLRenderTarget mScreen;
|
||||
LLRenderTarget mDeferredScreen;
|
||||
LLRenderTarget mDeferredLight[2];
|
||||
LLRenderTarget mEdgeMap;
|
||||
LLRenderTarget mDeferredDepth;
|
||||
LLRenderTarget mDeferredLight[3];
|
||||
LLMultisampleBuffer mSampleBuffer;
|
||||
LLRenderTarget mGIMap;
|
||||
LLRenderTarget mGIMapPost[2];
|
||||
LLRenderTarget mLuminanceMap;
|
||||
|
||||
//sun shadow map
|
||||
LLRenderTarget mSunShadow[4];
|
||||
LLRenderTarget mShadow[6];
|
||||
std::vector<LLVector3> mShadowFrustPoints[4];
|
||||
LLVector4 mShadowError;
|
||||
LLVector4 mShadowFOV;
|
||||
LLVector3 mShadowFrustOrigin[4];
|
||||
LLCamera mShadowCamera[8];
|
||||
LLVector3 mShadowExtents[4][2];
|
||||
glh::matrix4f mSunShadowMatrix[4];
|
||||
glh::matrix4f mSunShadowMatrix[6];
|
||||
glh::matrix4f mShadowModelview[6];
|
||||
glh::matrix4f mShadowProjection[6];
|
||||
glh::matrix4f mGIMatrix;
|
||||
glh::matrix4f mGIMatrixProj;
|
||||
glh::matrix4f mGIModelview;
|
||||
glh::matrix4f mGIProjection;
|
||||
glh::matrix4f mGINormalMatrix;
|
||||
glh::matrix4f mGIInvProj;
|
||||
LLVector2 mGIRange;
|
||||
F32 mGILightRadius;
|
||||
|
||||
LLPointer<LLDrawable> mShadowSpotLight[2];
|
||||
F32 mSpotLightFade[2];
|
||||
LLPointer<LLDrawable> mTargetShadowSpotLight[2];
|
||||
|
||||
LLVector4 mSunClipPlanes;
|
||||
LLVector4 mSunOrthoClipPlanes;
|
||||
|
||||
LLVector2 mScreenScale;
|
||||
|
||||
@@ -484,6 +519,8 @@ public:
|
||||
|
||||
//noise map
|
||||
U32 mNoiseMap;
|
||||
U32 mTrueNoiseMap;
|
||||
U32 mLightFunc;
|
||||
|
||||
LLColor4 mSunDiffuse;
|
||||
LLVector3 mSunDir;
|
||||
|
||||
Reference in New Issue
Block a user