gl_FragDepth - GLSL ES 3 - docs.gl
文章推薦指數: 80 %
Available only in the fragment language, gl_FragDepth is an output variable that is used to establish the depth value for the current fragment. Light|Darkdocs.GLOpenGL2.1OpenGL3.0OpenGL3.1OpenGL3.2OpenGL3.3OpenGL4.0OpenGL4.1OpenGL4.2OpenGL4.3OpenGL4.4OpenGL4.5OpenGLES2.0OpenGLES3.0OpenGLES3.1GLSL4.0GLSL4.1GLSL4.2GLSL4.3GLSL4.4GLSL4.5GLSLES3.0GLSLES3.1HideunavailableTexturesglActiveTextureglBindImageTextureglBindImageTexturesglBindTextureglBindTextureUnitglBindTexturesglClearTexImageglClearTexSubImageglCompressedTexImage1DglCompressedTexImage2DglCompressedTexImage3DglCompressedTexSubImage1DglCompressedTexSubImage2DglCompressedTexSubImage3DglCopyImageSubDataglCopyTexImage1DglCopyTexImage2DglCopyTexSubImage1DglCopyTexSubImage2DglCopyTexSubImage3DglCreateTexturesglDeleteTexturesglGenTexturesglGetCompressedTexImageglGetCompressedTextureSubImageglGetTexImageglGetTexLevelParameterglGetTexParameterglGetTextureSubImageglInvalidateTexImageglInvalidateTexSubImageglIsTextureglTexBufferglTexBufferRangeglTexImage1DglTexImage2DglTexImage2DMultisampleglTexImage3DglTexImage3DMultisampleglTexParameterglTexStorage1DglTexStorage2DglTexStorage2DMultisampleglTexStorage3DglTexStorage3DMultisampleglTexSubImage1DglTexSubImage2DglTexSubImage3DglTextureViewRenderingglClearglClearBufferglClearColorglClearDepthglClearDepthfglClearStencilglDrawBufferglFinishglFlushglReadBufferglReadPixelsFrameBuffersglBindFramebufferglBindRenderbufferglBlitFramebufferglCheckFramebufferStatusglCreateFramebuffersglCreateRenderbuffersglDeleteFramebuffersglDeleteRenderbuffersglDrawBuffersglFramebufferParameteriglFramebufferRenderbufferglFramebufferTextureglFramebufferTexture2DglFramebufferTextureLayerglGenFramebuffersglGenRenderbuffersglGenerateMipmapglGetFramebufferAttachmentParameterglGetFramebufferAttachmentParameterivglGetFramebufferParameterglGetFramebufferParameterivglGetRenderbufferParameterglGetRenderbufferParameterivglInvalidateFramebufferglInvalidateSubFramebufferglIsFramebufferglIsRenderbufferglRenderbufferStorageglRenderbufferStorageMultisampleglSampleMaskiShadersglAttachShaderglBindAttribLocationglBindFragDataLocationglBindFragDataLocationIndexedglCompileShaderglCreateProgramglCreateShaderglCreateShaderProgramglDeleteProgramglDeleteShaderglDetachShaderglGetActiveAtomicCounterBufferivglGetActiveAttribglGetActiveSubroutineNameglGetActiveSubroutineUniformglGetActiveSubroutineUniformNameglGetActiveUniformglGetActiveUniformBlockglGetActiveUniformBlockNameglGetActiveUniformBlockivglGetActiveUniformNameglGetActiveUniformsivglGetAttachedShadersglGetAttribLocationglGetFragDataIndexglGetFragDataLocationglGetProgramglGetProgramBinaryglGetProgramInfoLogglGetProgramResourceglGetProgramResourceIndexglGetProgramResourceLocationglGetProgramResourceLocationIndexglGetProgramResourceNameglGetProgramStageglGetProgramivglGetShaderglGetShaderInfoLogglGetShaderPrecisionFormatglGetShaderSourceglGetShaderivglGetSubroutineIndexglGetSubroutineUniformLocationglGetUniformglGetUniformBlockIndexglGetUniformIndicesglGetUniformLocationglGetUniformSubroutineglIsProgramglIsShaderglLinkProgramglMinSampleShadingglProgramBinaryglProgramParameterglProgramParameteriglProgramUniformglReleaseShaderCompilerglShaderBinaryglShaderSourceglShaderStorageBlockBindingglUniformglUniformBlockBindingglUniformSubroutinesglUseProgramglUseProgramStagesglValidateProgramBufferObjectsglBindBufferglBindBufferBaseglBindBufferRangeglBindBuffersBaseglBindBuffersRangeglBindVertexBufferglBindVertexBuffersglBufferDataglBufferStorageglBufferSubDataglClearBufferDataglClearBufferSubDataglCopyBufferSubDataglCreateBuffersglCreateVertexArraysglDeleteBuffersglDisableVertexAttribArrayglDrawArraysglDrawArraysIndirectglDrawArraysInstancedglDrawArraysInstancedBaseInstanceglDrawElementsglDrawElementsBaseVertexglDrawElementsIndirectglDrawElementsInstancedglDrawElementsInstancedBaseInstanceglDrawElementsInstancedBaseVertexglDrawElementsInstancedBaseVertexBaseInstanceglDrawRangeElementsglDrawRangeElementsBaseVertexglEnableVertexAttribArrayglFlushMappedBufferRangeglGenBuffersglGetBufferParameterglGetBufferParameterivglGetBufferPointervglGetBufferSubDataglGetVertexArrayIndexedglGetVertexArrayivglGetVertexAttribglGetVertexAttribPointervglInvalidateBufferDataglInvalidateBufferSubDataglIsBufferglMapBufferglMapBufferRangeglMultiDrawArraysglMultiDrawArraysIndirectglMultiDrawElementsglMultiDrawElementsBaseVertexglMultiDrawElementsIndirectglPatchParameterglPrimitiveRestartIndexglProvokingVertexglUnmapBufferglVertexArrayElementBufferglVertexAttribglVertexAttribBindingglVertexAttribDivisorglVertexAttribFormatglVertexAttribPointerglVertexBindingDivisorStateManagementglBlendColorglBlendEquationglBlendEquationSeparateglBlendFuncglBlendFuncSeparateglClampColorglClipControlglColorMaskglCullFaceglDepthFuncglDepthMaskglDepthRangeglDepthRangeArrayglDepthRangeIndexedglDepthRangefglDisableglEnableglFrontFaceglGetglGetErrorglHintglIsEnabledglLineWidthglLogicOpglPixelStoreglPixelStoreiglPointParameterglPointSizeglPolygonModeglPolygonOffsetglSampleCoverageglScissorglScissorArrayglScissorIndexedglStencilFuncglStencilFuncSeparateglStencilMaskglStencilMaskSeparateglStencilOpglStencilOpSeparateglViewportglViewportArrayglViewportIndexedTransformFeedbackglBeginTransformFeedbackglBindTransformFeedbackglCreateTransformFeedbacksglDeleteTransformFeedbacksglDrawTransformFeedbackglDrawTransformFeedbackInstancedglDrawTransformFeedbackStreamglDrawTransformFeedbackStreamInstancedglEndTransformFeedbackglGenTransformFeedbacksglGetTransformFeedbackglGetTransformFeedbackVaryingglIsTransformFeedbackglPauseTransformFeedbackglResumeTransformFeedbackglTransformFeedbackBufferBaseglTransformFeedbackBufferRangeglTransformFeedbackVaryingsUtilityglDispatchComputeglDispatchComputeIndirectglGetGraphicsResetStatusglGetInternalformatglGetInternalformativglGetMultisampleglGetMultisamplefvglGetStringglMemoryBarrierQueriesglBeginConditionalRenderglBeginQueryglBeginQueryIndexedglCreateQueriesglDeleteQueriesglEndConditionalRenderglEndQueryglEndQueryIndexedglGenQueriesglGetQueryIndexedglGetQueryObjectglGetQueryObjectuivglGetQueryivglIsQueryglQueryCounterSyncingglClientWaitSyncglDeleteSyncglFenceSyncglGetSyncglGetSyncivglIsSyncglTextureBarrierglWaitSyncVertexArrayObjectsglBindVertexArrayglDeleteVertexArraysglGenVertexArraysglIsVertexArraySamplersglBindSamplerglBindSamplersglCreateSamplersglDeleteSamplersglGenSamplersglGetSamplerParameterglIsSamplerglSamplerParameterProgramPipelinesglActiveShaderProgramglBindProgramPipelineglCreateProgramPipelinesglDeleteProgramPipelinesglGenProgramPipelinesglGetProgramPipelineglGetProgramPipelineInfoLogglIsProgramPipelineglValidateProgramPipelineImmediateModeglArrayElementglBeginglColorglEndglEvalCoordglEvalMeshglEvalPointglFogCoordglIndexglMaterialglMultiTexCoordglNormalglSecondaryColorglTexCoordglVertexGL2RasterizationglBitmapglClearIndexglClipPlaneglCopyPixelsglDrawPixelsglFeedbackBufferglFogglGetClipPlaneglGetMapglGetPixelMapglGetPolygonStippleglInitNamesglLineStippleglLoadNameglMap1glMap2glMapGridglPassThroughglPixelZoomglPolygonStippleglPopNameglPushNameglRasterPosglRectglRenderModeglSelectBufferglWindowPosClientArraysglColorPointerglDisableClientStateglEnableClientStateglFogCoordPointerglIndexPointerglInterleavedArraysglNormalPointerglPopClientAttribglPushClientAttribglSecondaryColorPointerglTexCoordPointerglVertexPointerFixedFunctionglAccumglAlphaFuncglClearAccumglColorMaterialglEdgeFlagglEdgeFlagPointerglGetLightglGetMaterialglGetTexEnvglGetTexGenglIndexMaskglLightglLightModelglPopAttribglPushAttribglShadeModelglTexEnvglTexGenMatrixStateglFrustumglLoadIdentityglLoadMatrixglLoadTransposeMatrixglMatrixModeglMultMatrixglMultTransposeMatrixglOrthoglPopMatrixglPushMatrixglRotateglScaleglTranslateGL2TexturesglAreTexturesResidentglClientActiveTextureglPixelMapglPixelTransferglPrioritizeTexturesCallListsglCallListglCallListsglDeleteListsglEndListglGenListsglIsListglListBaseglNewListDebugglDebugMessageCallbackglDebugMessageControlglDebugMessageInsertglGetDebugMessageLogglGetObjectLabelglGetObjectPtrLabelglGetPointervglGetProgramInterfaceglObjectLabelglObjectPtrLabelglPopDebugGroupglPushDebugGroupTrigonometryacosacoshasinasinhatanatanhcoscoshdegreesradianssinsinhtantanhMathematicsabsceilclampdFdxdFdyexpexp2floorfloorfmafractfwidthinversesqrtisinfisnanloglog2maxminmixmodmodfnoisepowroundroundEvensignsmoothstepsqrtsteptruncFloating-PointfloatBitsToIntfrexpintBitsToFloatldexppackDouble2x32packHalf2x16packUnormunpackDouble2x32unpackHalf2x16unpackUnormBuilt-InVariablesgl_ClipDistancegl_CullDistancegl_FragCoordgl_FragDepthgl_FrontFacinggl_GlobalInvocationIDgl_HelperInvocationgl_InstanceIDgl_InvocationIDgl_Layergl_LocalInvocationIDgl_LocalInvocationIndexgl_NumSamplesgl_NumWorkGroupsgl_PatchVerticesIngl_PointCoordgl_PointSizegl_Positiongl_PrimitiveIDgl_PrimitiveIDIngl_SampleIDgl_SampleMaskgl_SampleMaskIngl_SamplePositiongl_TessCoordgl_TessLevelInnergl_TessLevelOutergl_VertexIDgl_ViewportIndexgl_WorkGroupIDgl_WorkGroupSizeVectorcrossdistancedotequalfaceforwardlengthnormalizenotEqualreflectrefractComponentComparisonallanygreaterThangreaterThanEquallessThanlessThanEqualnotGeometryShaderEmitStreamVertexEmitVertexEndPrimitiveEndStreamPrimitiveTextureSamplinginterpolateAtCentroidinterpolateAtOffsetinterpolateAtSampletexelFetchtexelFetchOffsettexturetextureGathertextureGatherOffsettextureGatherOffsetstextureGradtextureGradOffsettextureLodtextureLodOffsettextureOffsettextureProjtextureProjGradtextureProjGradOffsettextureProjLodtextureProjLodOffsettextureProjOffsettextureQueryLevelstextureQueryLodtextureSamplestextureSizeMatrixdeterminantgroupMemoryBarrierinversematrixCompMultouterProducttransposeIntegerbitCountbitfieldExtractbitfieldInsertbitfieldReversefindLSBfindMSBuaddCarryumulExtendedusubBorrowImageimageAtomicAddimageAtomicAndimageAtomicCompSwapimageAtomicExchangeimageAtomicMaximageAtomicMinimageAtomicOrimageAtomicXorimageLoadimageSamplesimageSizeimageStoreAtomicatomicAddatomicAndatomicCompSwapatomicCounteratomicCounterDecrementatomicCounterIncrementatomicExchangeatomicMaxatomicMinatomicOratomicXorMemoryBarrierbarriergroupMemoryBarriermemoryBarriermemoryBarrierAtomicCountermemoryBarrierBuffermemoryBarrierImagememoryBarrierSharedGLSL4GLSLES3gl_FragDepthNamegl_FragDepth—establishesadepthvalueforthecurrentfragmentDeclarationouthighpfloatgl_FragDepth;DescriptionAvailableonlyinthefragmentlanguage,gl_FragDepthisanoutputvariablethatisusedtoestablishthedepthvalueforthecurrentfragment.Ifdepthbufferingisenabledandnoshaderwritestogl_FragDepth,thenthefixedvarnamevaluefordepthwillbeused(thisvalueiscontainedinthezcomponentofgl_FragCoord)otherwise,thevaluewrittentogl_FragDepthisused.Ifashaderstaticallyassignstogl_FragDepth,thenthevalueofthefragment'sdepthmaybeundefinedforexecutionsoftheshaderthattakethatpath.Thatis,ifthesetoflinkedfragmentshadersstaticallycontainawritetogl_FragDepth,thenitisresponsibleforalwayswritingit.VersionSupportOpenGLESShadingLanguageVersionVariableName1.003.003.10gl_FragDepth-✔✔SeeAlsogl_FragCoordCopyrightCopyright©2011-2014KhronosGroup.ThismaterialmaybedistributedsubjecttothetermsandconditionssetforthintheOpenPublicationLicense,v1.0,8June1999.https://opencontent.org/openpub/.Thinkyoucanimprovethispage?EditthispageonGitHub.docs.glwaswrittenbyJorgeRodríguez.Eachentryisunderindividualcopyrightdisplayedatthebottomofthatentry.Allothercontentisinthepublicdomain.docs.gliscompletelyunaffiliatedwithOpenGLandKhronos.Thesepageswerelastcompiledon17March2022at15:33:59GMT.
延伸文章資訊
- 1Deceit in Depth
Example 13.4. Depth Correct Fragment Shader ... We write the final depth to a built-in output var...
- 2gl_FragDepth - GLSL ES 3 - docs.gl
Available only in the fragment language, gl_FragDepth is an output variable that is used to estab...
- 3Playing with gl_FragDepth - OpenGL - Khronos Forums
I continued with my last example. I have a lots of quads that they are always looking to the came...
- 4Shader abilities · Discussion #3817 · google/filament - GitHub
If you break writing to gl_FragDepth I hope you will provide some ... a view-filling quad with a ...
- 5computing gl_FragDepth - Game Development Stack Exchange