29 #ifndef __TR_LOCAL_H__
30 #define __TR_LOCAL_H__
109 static const int DSF_VIEW_INSIDE_SHADOW = 1;
498 int x,
y, imageWidth, imageHeight;
650 float lightTextureMatrix[16];
684 static const int MAX_RENDER_CROPS = 8;
695 virtual void Init(
void );
709 virtual void SetColor4(
float r,
float g,
float b,
float a );
711 bool clip =
true,
float x = 0.0
f,
float y = 0.0
f,
float w = 640.0
f,
float h = 0.0
f );
712 virtual void DrawStretchPic (
float x,
float y,
float w,
float h,
float s1,
float t1,
float s2,
float t2,
const idMaterial *material );
725 virtual void BeginFrame(
int windowWidth,
int windowHeight );
726 virtual void EndFrame(
int *frontEndMsec,
int *backEndMsec );
728 virtual void CropRenderSize(
int width,
int height,
bool makePowerOfTwo =
false,
bool forceDimensions =
false );
732 virtual void GetCardCaps(
bool &oldCard,
bool &nv10or20 );
733 virtual bool UploadImage(
const char *imageName,
const byte *
data,
int width,
int height );
1097 unsigned short green[256],
1098 unsigned short blue[256] );
1467 #define USE_TRI_DATA_ALLOCATOR
idRenderWorldLocal * world
~idRenderSystemLocal(void)
void R_ModulateLights_f(const idCmdArgs &args)
virtual void ForceUpdate()=0
virtual void FreeRenderWorld(idRenderWorld *rw)
void R_InitFrameData(void)
const int GLS_DSTBLEND_ONE
const idMaterial * lightShader
idRenderModel * dynamicModel
deformInfo_t * R_BuildDeformInfo(int numVerts, const idDrawVert *verts, int numIndexes, const int *indexes, bool useUnsmoothedTangents)
idCVar r_lightSourceRadius
void RB_ScanStencilBuffer(void)
void RB_ClearDebugPolygons(int time)
const int GLS_SRCBLEND_ONE_MINUS_DST_ALPHA
void R_ShutdownFrameData(void)
void CleanupOptimizedShadowTris(srfTriangles_t *tri)
const srfTriangles_t * geo
void R_CreateLightDefFogPortals(idRenderLightLocal *ldef)
const int GLS_DEPTHFUNC_LESS
void RB_ShowLights(drawSurf_t **drawSurfs, int numDrawSurfs)
struct doublePortal_s * foggedPortals
void RB_RenderDrawSurfChainWithFunction(const drawSurf_t *drawSurfs, void(*triFunc_)(const drawSurf_t *))
void GL_ClearStateDelta(void)
void R_RegenerateWorld_f(const idCmdArgs &args)
void RB_BindVariableStageImage(const textureStage_t *texture, const float *shaderRegisters)
srfTriangles_t * R_MergeTriangles(const srfTriangles_t *tri1, const srfTriangles_t *tri2)
virtual void RemoveDecals()=0
idScreenRect R_ScreenRectFromViewFrustumBounds(const idBounds &bounds)
bool viewSeesGlobalLightOrigin
const int GLS_DSTBLEND_ONE_MINUS_DST_ALPHA
void R_FreeEntityDefDecals(idRenderEntityLocal *def)
virtual void WriteDemoPics()
struct viewEntity_s viewEntity_t
struct viewEntity_s * viewEntity
const int GLS_DSTBLEND_DST_ALPHA
void RB_STD_FillDepthBuffer(drawSurf_t **drawSurfs, int numDrawSurfs)
const int GLS_SRCBLEND_SRC_ALPHA
const int GLS_POLYMODE_LINE
const int GLS_SRCBLEND_ONE_MINUS_DST_COLOR
stageVertexColor_t vertexColor
virtual bool UploadImage(const char *imageName, const byte *data, int width, int height)
GLenum GLsizei GLenum format
idCVar r_useEntityCulling
class idGuiModel * guiModel
idCVar r_useInteractionScissors
virtual void FreeRenderEntity()
const int GLS_SRCBLEND_ALPHA_SATURATE
virtual void ProjectOverlay(const idPlane localTextureAxis[2], const idMaterial *material)=0
const int GLS_DSTBLEND_SRC_COLOR
void R_ClearCommandChain(void)
void R_ListRenderLightDefs_f(const idCmdArgs &args)
const int FALLOFF_TEXTURE_SIZE
bool R_CreateAmbientCache(srfTriangles_t *tri, bool needsLighting)
struct deformInfo_s deformInfo_t
virtual void UpdateRenderLight(const renderLight_t *re, bool forceUpdate=false)
srfTriangles_t * R_PolytopeSurface(int numPlanes, const idPlane *planes, idWinding **windings)
GLenum GLenum GLenum GLenum GLenum scale
areaReference_t * entityRefs
virtual void SetColor4(float r, float g, float b, float a)
idCVar r_shadowPolygonFactor
void R_ReloadARBPrograms_f(const idCmdArgs &args)
virtual void FreeRenderEntity()=0
void RB_ARB_DrawInteractions(void)
const int MAX_GUI_SURFACES
void RB_AddDebugPolygon(const idVec4 &color, const idWinding &winding, const int lifeTime, const bool depthTest)
void R_CreateEntityRefs(idRenderEntityLocal *def)
idCVar r_useTwoSidedStencil
idCVar r_showTexturePolarity
void R_RemoveUnusedVerts(srfTriangles_t *tri)
drawSurfsCommand_t lockSurfacesCmd
virtual void CaptureRenderToImage(const char *imageName)
void * GLimp_BackEndSleep(void)
const int GLS_DSTBLEND_SRC_ALPHA
struct drawSurf_s * subviewSurface
srfTriangles_t * R_CreateVertexProgramTurboShadowVolume(const idRenderEntityLocal *ent, const srfTriangles_t *tri, const idRenderLightLocal *light, srfCullInfo_t &cullInfo)
void RB_NV20_DrawInteractions(void)
idCVar r_showInteractions
void R_RemoveUnecessaryViewLights(void)
void R_FreeStaticTriSurfSilIndexes(srfTriangles_t *tri)
virtual ~idRenderEntity()
const struct drawSurf_s * localShadows
void Union(const idScreenRect &rect)
idRenderSystemLocal(void)
virtual void GetRenderEntity(renderEntity_t *re)=0
void R_CreatePrivateShadowCache(srfTriangles_t *tri)
void GLimp_WakeBackEnd(void *data)
const int GLS_DEPTHFUNC_ALWAYS
void R_CreateVertexProgramShadowCache(srfTriangles_t *tri)
GLint GLint GLsizei GLsizei GLsizei depth
virtual void UpdateRenderLight(const renderLight_t *re, bool forceUpdate=false)=0
struct frameMemoryBlock_s frameMemoryBlock_t
void R_LockSurfaceScene(viewDef_t *parms)
const struct drawSurf_s * globalInteractions
idRenderWorldLocal * primaryWorld
unsigned short gammaTable[256]
void RB_EnterWeaponDepthHack()
void SetBackEndRenderer()
idCVar r_skipInteractions
void R_DeriveTangents(srfTriangles_t *tri, bool allocFacePlanes=true)
void RB_EnterModelDepthHack(float depth)
idRenderLightLocal * lightDef
void R_ResizeStaticTriSurfShadowVerts(srfTriangles_t *tri, int numVerts)
class idGuiModel * demoGuiModel
srfTriangles_t * R_AllocStaticTriSurf(void)
idList< idRenderWorldLocal * > worlds
const struct viewEntity_s * space
void RB_ShowDestinationAlpha(void)
idCVar r_useInteractionTable
idCVar r_useCombinerDisplayLists
idCVar r_debugLineDepthTest
const idMaterial * material
void RB_LoadShaderTextureMatrix(const float *shaderRegisters, const textureStage_t *texture)
float projectionMatrix[16]
bool R_CheckExtension(char *name)
void R_FreeDeformInfo(deformInfo_t *deformInfo)
void R_ResizeStaticTriSurfVerts(srfTriangles_t *tri, int numVerts)
void RB_STD_FogAllLights(void)
idCVar r_ext_vertex_array_range
const int MAX_MULTITEXTURE_UNITS
virtual void UpdateRenderEntity(const renderEntity_t *re, bool forceUpdate=false)
void RB_GetShaderTextureMatrix(const float *shaderRegisters, const textureStage_t *texture, float matrix[16])
const viewEntity_t * currentSpace
void RB_ExecuteBackEndCommands(const emptyCommand_t *cmds)
struct drawSurf_s drawSurf_t
srfTriangles_t * R_CopyStaticTriSurf(const srfTriangles_t *tri)
void * R_ClearedFrameAlloc(int bytes)
shadowFrustum_t shadowFrustums[6]
bool R_CullLocalBox(const idBounds &bounds, const float modelMatrix[16], int numPlanes, const idPlane *planes)
const idMaterial * lightShader
idCVar r_useInteractionCulling
virtual bool IsFullScreen(void) const
void R_ReferenceStaticTriSurfVerts(srfTriangles_t *tri, const srfTriangles_t *reference)
idInteraction * lastInteraction
bool GLimp_SetScreenParms(glimpParms_t parms)
idCVar r_showUnsmoothedTangents
void RB_BeginDrawingView(void)
virtual void GetRenderEntity(renderEntity_t *re)
virtual void ForceUpdate()=0
void RB_DrawShaderPasses(drawSurf_t **drawSurfs, int numDrawSurfs)
virtual void CropRenderSize(int width, int height, bool makePowerOfTwo=false, bool forceDimensions=false)
backEndName_t backEndRenderer
void R_RemoveDegenerateTriangles(srfTriangles_t *tri)
srfTriangles_t * R_MergeSurfaceList(const srfTriangles_t **surfaces, int numSurfaces)
const int GLS_DEPTHFUNC_EQUAL
bool R_IssueEntityDefCallback(idRenderEntityLocal *def)
void RB_CreateSingleDrawInteractions(const drawSurf_t *surf, void(*DrawInteraction)(const drawInteraction_t *))
virtual void GetRenderLight(renderLight_t *re)
void R_FreeDerivedData(void)
struct viewLight_s * next
void RB_RenderDrawSurfListWithFunction(drawSurf_t **drawSurfs, int numDrawSurfs, void(*triFunc_)(const drawSurf_t *))
bool GLimp_SpawnRenderThread(void(*function)(void))
virtual void DrawStretchPic(const idDrawVert *verts, const glIndex_t *indexes, int vertCount, int indexCount, const idMaterial *material, bool clip=true, float x=0.0f, float y=0.0f, float w=640.0f, float h=0.0f)
struct viewLight_s * viewLights
void RB_DetermineLightScale(void)
idScreenRect R_CalcIntersectionScissor(const idRenderLightLocal *lightDef, const idRenderEntityLocal *entityDef, const viewDef_t *viewDef)
virtual void BeginFrame(int windowWidth, int windowHeight)
idCVar r_useShadowCulling
const int MAX_CLIP_PLANES
void RB_NV10_DrawInteractions(void)
bool backEndRendererHasVertexPrograms
int dynamicModelFrameCount
void R_FreeEntityDefOverlay(idRenderEntityLocal *def)
void RB_LogComment(const char *comment,...) id_attribute((format(printf
int viewSeesShadowPlaneBits
void R_ListRenderEntityDefs_f(const idCmdArgs &args)
virtual void DrawBigChar(int x, int y, int ch, const idMaterial *material)
bool R_GenerateSubViews(void)
const int GLS_SRCBLEND_BITS
void R_DeriveLightData(idRenderLightLocal *light)
idCVar r_useTripleTextureARB
const shaderStage_t * RB_SetLightTexture(const idRenderLightLocal *light)
void * R_GetCommandBuffer(int bytes)
void R_CheckForEntityDefsUsingModel(idRenderModel *model)
void AddPoint(float x, float y)
void R_InitTriSurfData(void)
void R_LocalVectorToGlobal(const float modelMatrix[16], const idVec3 &in, idVec3 &out)
void RB_DrawElementsImmediate(const srfTriangles_t *tri)
virtual void PrintMemInfo(MemInfo_t *mi)
virtual void Shutdown(void)
const float DEFAULT_FOG_DISTANCE
idRenderModelDecal * decals
bool R_RadiusCullLocalBox(const idBounds &bounds, const float modelMatrix[16], int numPlanes, const idPlane *planes)
const idMaterial * R_RemapShaderBySkin(const idMaterial *shader, const idDeclSkin *customSkin, const idMaterial *customShader)
GLubyte GLubyte GLubyte GLubyte w
srfTriangles_t * firstDeferredFreeTriSurf
virtual void TakeScreenshot(int width, int height, const char *fileName, int downSample, renderView_t *ref)
idImage * ambientCubeImage
struct viewEntity_s * next
idRenderModel * R_EntityDefDynamicModel(idRenderEntityLocal *def)
virtual bool RegisterFont(const char *fontName, fontInfoEx_t &font)
void R_SurfaceToTextureAxis(const srfTriangles_t *tri, idVec3 &origin, idVec3 axis[3])
void R_CreateVertexNormals(srfTriangles_t *tri)
idRenderWorldLocal * world
void R_SetColorMappings(void)
void R_FreeEntityDefDerivedData(idRenderEntityLocal *def, bool keepDecals, bool keepCachedDynamicModel)
void GL_State(int stateVector)
void R_AllocStaticTriSurfPlanes(srfTriangles_t *tri, int numIndexes)
void GL_Cull(int cullType)
areaReference_t * references
localTrace_t R_LocalTrace(const idVec3 &start, const idVec3 &end, const float radius, const srfTriangles_t *tri)
idImage * lightFalloffImage
viewEntity_t identitySpace
void R_CleanupTriangles(srfTriangles_t *tri, bool createNormals, bool identifySilEdges, bool useUnsmoothedTangents)
idCVar r_skipDynamicTextures
virtual int GetScreenHeight(void) const
bool R_PreciseCullSurface(const drawSurf_t *drawSurf, idBounds &ndcBounds)
virtual int GetScreenWidth(void) const
idCVar r_useEntityScissors
idCVar r_useNodeCommonChildren
const int GLS_ATEST_EQ_255
virtual void UpdateRenderEntity(const renderEntity_t *re, bool forceUpdate=false)=0
void GL_CheckErrors(void)
void R_DeriveFacePlanes(srfTriangles_t *tri)
const int GLS_DSTBLEND_ONE_MINUS_SRC_COLOR
struct vertCache_s * dynamicTexCoords
GLsizei GLsizei GLenum GLenum const GLvoid * data
idInteraction * firstInteraction
idCVar r_showTangentSpace
idCVar r_shadowPolygonOffset
const int GLS_SRCBLEND_ONE
int R_FindARBProgram(GLenum target, const char *program)
virtual void GetGLSettings(int &width, int &height)
struct areaReference_s * ownerNext
struct frameMemoryBlock_s * next
idCVar r_useExternalShadows
idCVar r_useShadowProjectedCull
frameMemoryBlock_t * alloc
virtual void GetRenderLight(renderLight_t *re)=0
void R_MakeShadowFrustums(idRenderLightLocal *def)
idCVar r_showEntityScissors
idCVar r_lightAllBackFaces
virtual void CaptureRenderToFile(const char *fileName, bool fixAlpha)
idCVar r_useShadowSurfaceScissor
void Intersect(const idScreenRect &rect)
void R_FreeStaticTriSurf(srfTriangles_t *tri)
void GLimp_DeactivateContext(void)
virtual void EndFrame(int *frontEndMsec, int *backEndMsec)
void R_OrderIndexes(int numIndexes, glIndex_t *indexes)
bool R_GlobalShaderOverride(const idMaterial **shader)
void R_AllocStaticTriSurfShadowVerts(srfTriangles_t *tri, int numVerts)
viewEntity_t * R_SetEntityDefViewEntity(idRenderEntityLocal *def)
void R_AddDrawSurf(const srfTriangles_t *tri, const viewEntity_t *space, const renderEntity_t *renderEntity, const idMaterial *shader, const idScreenRect &scissor)
float backEndRendererMaxLight
void R_ReCreateWorldReferences(void)
const struct drawSurf_s * translucentInteractions
void RB_T_RenderTriangleSurface(const drawSurf_t *surf)
void R_ClearEntityDefDynamicModel(idRenderEntityLocal *def)
void R_GlobalToNormalizedDeviceCoordinates(const idVec3 &global, idVec3 &ndc)
virtual void DrawBigStringExt(int x, int y, const char *string, const idVec4 &setColor, bool forceColor, const idMaterial *material)
void R_ReverseTriangles(srfTriangles_t *tri)
void R_TransformClipToDevice(const idPlane &clip, const viewDef_t *view, idVec3 &normalized)
virtual void GetCardCaps(bool &oldCard, bool &nv10or20)
void R_FrameFree(void *data)
void RenderViewToViewport(const renderView_t *renderView, idScreenRect *viewport)
void R_GlobalVectorToLocal(const float modelMatrix[16], const idVec3 &in, idVec3 &out)
idRenderEntityLocal * entityDef
GLubyte GLubyte GLubyte a
void RB_BakeTextureMatrixIntoTexgen(idPlane lightProject[3], const float textureMatrix[16])
bool R_CornerCullLocalBox(const idBounds &bounds, const float modelMatrix[16], int numPlanes, const idPlane *planes)
void RB_DrawShadowElementsWithCounters(const srfTriangles_t *tri, int numIndexes)
void R_BoundTriSurf(srfTriangles_t *tri)
idCVar r_useLightPortalFlow
void R_RenderGuiSurf(idUserInterface *gui, drawSurf_t *drawSurf)
float RB_DrawTextLength(const char *text, float scale, int len)
void R_SetViewMatrix(viewDef_t *viewDef)
void RB_DrawElementsWithCounters(const srfTriangles_t *tri)
void R_RemoveDuplicatedTriangles(srfTriangles_t *tri)
idCVar r_useDepthBoundsTest
void R_TransposeGLMatrix(const float in[16], float out[16])
const int GLS_SRCBLEND_DST_ALPHA
idCVar r_useNV20MonoLights
idCVar r_showInteractionScissors
void GLimp_EnableLogging(bool enable)
void RB_ShowOverdraw(void)
const int GLS_ATEST_GE_128
GLenum GLsizei GLsizei height
idRenderModel * cachedDynamicModel
idCVar r_useShadowVertexProgram
srfTriangles_t * R_CreateShadowVolume(const idRenderEntityLocal *ent, const srfTriangles_t *tri, const idRenderLightLocal *light, shadowGen_t optimize, srfCullInfo_t &cullInfo)
const int GLS_DSTBLEND_ZERO
idCVar r_usePreciseTriangleInteractions
void R_TransformModelToClip(const idVec3 &src, const float *modelMatrix, const float *projectionMatrix, idPlane &eye, idPlane &dst)
virtual void FreeRenderLight()=0
const float * shaderRegisters
srfTriangles_t * frustumTris
void R_FreeEntityDefFadedDecals(idRenderEntityLocal *def, int time)
void R_ScreenShot_f(const idCmdArgs &args)
virtual void ProjectOverlay(const idPlane localTextureAxis[2], const idMaterial *material)
virtual void ForceUpdate()
idCVar r_useOptimizedShadows
void void RB_ShowImages(void)
virtual void SetColor(const idVec4 &rgba)
renderCrop_t renderCrops[MAX_RENDER_CROPS]
void R_ReferenceStaticTriSurfIndexes(srfTriangles_t *tri, const srfTriangles_t *reference)
void myGlMultMatrix(const float *a, const float *b, float *out)
idCVar r_materialOverride
void R_FreeDeferredTriSurfs(frameData_t *frame)
void RB_PolygonClear(void)
void R_GlobalPointToLocal(const float modelMatrix[16], const idVec3 &in, idVec3 &out)
void R_ShutdownTriSurfData(void)
void R_RenderView(viewDef_t *parms)
void R_ReloadGuis_f(const idCmdArgs &args)
void R_AddDrawViewCmd(viewDef_t *parms)
struct viewDef_s viewDef_t
void RB_R200_DrawInteractions(void)
GLdouble GLdouble GLdouble r
const int GLS_DSTBLEND_ONE_MINUS_SRC_ALPHA
void R_ListGuis_f(const idCmdArgs &args)
void RB_ARB2_DrawInteractions(void)
struct viewEntity_s * viewEntitys
textureType_t textureType
idCVar r_useVertexBuffers
idCVar r_cgFragmentProfile
void R_ReallyFreeStaticTriSurf(srfTriangles_t *tri)
frameMemoryBlock_t * memory
idCVar r_showLightScissors
idCVar r_useClippedLightScissors
idCVar r_debugRenderToTexture
const struct drawSurf_s * globalShadows
const int GLS_ATEST_LT_128
const int INITIAL_DRAWSURFS
void RB_STD_LightScale(void)
void * R_ClearedStaticAlloc(int bytes)
void RB_RenderDebugTools(drawSurf_t **drawSurfs, int numDrawSurfs)
idCVar r_showInteractionFrustums
srfTriangles_t * R_CreateTurboShadowVolume(const idRenderEntityLocal *ent, const srfTriangles_t *tri, const idRenderLightLocal *light, srfCullInfo_t &cullInfo)
const struct drawSurf_s * localInteractions
bool GLimp_Init(glimpParms_t parms)
void R_LocalPlaneToGlobal(const float modelMatrix[16], const idPlane &in, idPlane &out)
void * R_StaticAlloc(int bytes)
optimizedShadow_t SuperOptimizeOccluders(idVec4 *verts, glIndex_t *indexes, int numIndexes, idPlane projectionPlane, idVec3 projectionOrigin)
void RB_ShowTrace(drawSurf_t **drawSurfs, int numDrawSurfs)
bool R_CreateLightingCache(const idRenderEntityLocal *ent, const idRenderLightLocal *light, srfTriangles_t *tri)
idInteraction * lastInteraction
void RB_DrawView(const void *data)
void RB_SetDefaultGLState(void)
int R_CountFrameData(void)
idCVar r_skipRenderContext
const struct drawSurf_s * nextOnLight
virtual void DrawDemoPics()
virtual void DrawSmallStringExt(int x, int y, const char *string, const idVec4 &setColor, bool forceColor, const idMaterial *material)
void GL_SelectTexture(int unit)
const int GLS_SRCBLEND_ZERO
idRenderModelOverlay * overlay
void GLimp_Shutdown(void)
float modelViewMatrix[16]
idWinding * frustumWindings[6]
struct areaReference_s areaReference_t
void RB_ShowLightCount(drawSurf_t **drawSurfs, int numDrawSurfs)
struct portalArea_s * area
idRenderEntityLocal * entity
void R_AddLightSurfaces(void)
void RB_FinishStageTexture(const textureStage_t *texture, const drawSurf_t *surf)
void R_PurgeTriSurfData(frameData_t *frame)
void * R_FrameAlloc(int bytes)
idCVar r_useFrustumFarDistance
idCVar r_useDeferredTangents
const int GLS_SRCBLEND_DST_COLOR
struct areaReference_s * areaNext
void R_AllocStaticTriSurfIndexes(srfTriangles_t *tri, int numIndexes)
virtual void DrawSmallChar(int x, int y, int ch, const idMaterial *material)
idRenderLightLocal * light
idVec3 initialViewAreaOrigin
void R_FreeLightDefDerivedData(idRenderLightLocal *light)
virtual bool IsOpenGLRunning(void) const
virtual idRenderWorld * AllocRenderWorld(void)
idInteraction * firstInteraction
idRenderWorldLocal * renderWorld
srfTriangles_t * lastDeferredFreeTriSurf
const srfTriangles_t * frustumTris
virtual void ForceUpdate()
void R_LinkLightSurf(const drawSurf_t **link, const srfTriangles_t *tri, const viewEntity_t *space, const idRenderLightLocal *light, const idMaterial *shader, const idScreenRect &scissor, bool viewInsideShadow)
void RB_AddDebugLine(const idVec4 &color, const idVec3 &start, const idVec3 &end, const int lifeTime, const bool depthTest)
virtual void InitOpenGL(void)
void R_StaticFree(void *data)
void R_ResizeStaticTriSurfIndexes(srfTriangles_t *tri, int numIndexes)
virtual void BeginLevelLoad(void)
void R_CreateSilIndexes(srfTriangles_t *tri)
void R_LocalPointToGlobal(const float modelMatrix[16], const idVec3 &in, idVec3 &out)
void R_ToggleSmpFrame(void)
void GLimp_FrontEndSleep(void)
void R_FreeEntityDefCachedDynamicModel(idRenderEntityLocal *def)
void RB_BindStageTexture(const float *shaderRegisters, const textureStage_t *texture, const drawSurf_t *surf)
void GLimp_ActivateContext(void)
void RB_DrawBounds(const idBounds &bounds)
int R_TriSurfMemory(const srfTriangles_t *tri)
virtual void EndLevelLoad(void)
idVec4 ambientLightVector
struct viewLight_s viewLight_t
void RB_RenderTriangleSurface(const srfTriangles_t *tri)
void R_AxisToModelMatrix(const idMat3 &axis, const idVec3 &origin, float modelMatrix[16])
idScreenRect currentScissor
void R_ShowTriSurfMemory_f(const idCmdArgs &args)
void R_CreateLightRefs(idRenderLightLocal *light)
void R_AddModelSurfaces(void)
idCVar r_showTextureVectors
void R_AllocStaticTriSurfVerts(srfTriangles_t *tri, int numVerts)
virtual void ShutdownOpenGL(void)
viewLight_t * R_SetLightDefViewLight(idRenderLightLocal *def)
void R_DeformDrawSurf(drawSurf_t *drawSurf)
idPlane clipPlanes[MAX_CLIP_PLANES]
void R_ShowColoredScreenRect(const idScreenRect &rect, int colorIndex)
int R_DeformInfoMemoryUsed(deformInfo_t *deformInfo)
void R_RangeCheckIndexes(const srfTriangles_t *tri)
struct viewDef_s * superView
idCVar r_useConstantMaterials
const int GLS_DSTBLEND_BITS
void GLimp_SwapBuffers(void)
virtual void FreeRenderLight()
void RB_ClearDebugLines(int time)
void R_GlobalPlaneToLocal(const float modelMatrix[16], const idPlane &in, idPlane &out)
void R_FreeStaticTriSurfVertexCaches(srfTriangles_t *tri)
const float * shaderRegisters
renderView_t primaryRenderView
virtual void GlobalToNormalizedDeviceCoordinates(const idVec3 &global, idVec3 &ndc)
idCVar r_useEntityCallbacks
virtual void RemoveDecals()
const idMaterial * defaultMaterial
const int GLS_SRCBLEND_ONE_MINUS_SRC_ALPHA
void R_DoneFreeType(void)
void RB_ShutdownDebugTools(void)
void R_SetLightProject(idPlane lightProject[4], const idVec3 origin, const idVec3 targetPoint, const idVec3 rightVector, const idVec3 upVector, const idVec3 start, const idVec3 stop)
void R_PointTimesMatrix(const float modelMatrix[16], const idVec4 &in, idVec4 &out)
virtual void DrawStretchTri(idVec2 p1, idVec2 p2, idVec2 p3, idVec2 t1, idVec2 t2, idVec2 t3, const idMaterial *material)
struct areaReference_s * areaPrev
idCVar r_useLightScissors
bool Equals(const idScreenRect &rect) const
void GLimp_SetGamma(unsigned short red[256], unsigned short green[256], unsigned short blue[256])
void R_TransformEyeZToWin(float src_z, const float *projectionMatrix, float &dst_z)
GLint GLenum GLboolean normalized
struct viewLight_s * viewLight
void RB_ClearDebugText(int time)
void RB_STD_DrawView(void)
idCVar r_useCachedDynamicModels
idCVar r_debugPolygonFilled
void RB_AddDebugText(const char *text, const idVec3 &origin, float scale, const idVec4 &color, const idMat3 &viewAxis, const int align, const int lifetime, const bool depthTest)
void RB_StencilShadowPass(const drawSurf_t *drawSurfs)
const viewDef_t * viewDef