Package gaiasky.util.gdx.shader
Class TessellationShader
java.lang.Object
gaiasky.util.gdx.shader.BaseIntShader
gaiasky.util.gdx.shader.DefaultIntShader
gaiasky.util.gdx.shader.RelativisticShader
gaiasky.util.gdx.shader.GroundShader
gaiasky.util.gdx.shader.TessellationShader
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,IntShader
-
Nested Class Summary
Nested classes/interfaces inherited from class gaiasky.util.gdx.shader.GroundShader
GroundShader.Inputs, GroundShader.Setters
Nested classes/interfaces inherited from class gaiasky.util.gdx.shader.DefaultIntShader
DefaultIntShader.Config
Nested classes/interfaces inherited from class gaiasky.util.gdx.shader.BaseIntShader
BaseIntShader.GlobalSetter, BaseIntShader.LocalSetter, BaseIntShader.Setter, BaseIntShader.Uniform, BaseIntShader.Validator
-
Field Summary
Fields inherited from class gaiasky.util.gdx.shader.GroundShader
fAlpha, fCameraHeight, fInnerRadius, fKm4PI, fKmESun, fKr4PI, fKrESun, fogColor, fogDensity, fOuterRadius, fScale, fScaleDepth, fScaleOverScaleDepth, g, nSamples, v3CameraPos, v3InvWavelength, v3LightPos, v3PlanetPos
Fields inherited from class gaiasky.util.gdx.shader.RelativisticShader
u_gw, u_gwmat3, u_hterms, u_omgw, u_ts, u_vc, u_velDir
Fields inherited from class gaiasky.util.gdx.shader.DefaultIntShader
attributesMask, config, directionalLights, dirLightsColorOffset, dirLightsDirectionOffset, dirLightsLoc, dirLightsSize, lighting, pointLights, pointLightsColorOffset, pointLightsIntensityOffset, pointLightsLoc, pointLightsPositionOffset, pointLightsSize, shadowMap, spotLights, spotLightsColorOffset, spotLightsCutoffAngleOffset, spotLightsDirectionOffset, spotLightsExponentOffset, spotLightsIntensityOffset, spotLightsLoc, spotLightsPositionOffset, spotLightsSize, u_alphaTest, u_ambientCubemap, u_aoTexture, u_bones, u_cameraDirection, u_cameraK, u_cameraNearFar, u_cameraPosition, u_cameraUp, u_dCamPos, u_diffuseColor, u_diffuseCubemap, u_diffuseTexture, u_dirLights0color, u_dirLights0direction, u_dirLights1color, u_eclipseOutlines, u_eclipsingBodyPos, u_eclipsingBodyRadius, u_elevationMultiplier, u_emissiveColor, u_emissiveCubemap, u_emissiveTexture, u_fogColor, u_heightCubemap, u_heightNoiseSize, u_heightScale, u_heightSize, u_heightTexture, u_metallicColor, u_metallicCubemap, u_metallicTexture, u_normalCubemap, u_normalMatrix, u_normalTexture, u_occlusionMetallicRoughnessTexture, u_opacity, u_pointLights0color, u_pointLights0intensity, u_pointLights0position, u_pointLights1color, u_prevProjView, u_projTrans, u_projViewTrans, u_reflectionCubemap, u_roughnessColor, u_roughnessCubemap, u_roughnessTexture, u_shadowMapProjViewTrans, u_shadowPCFOffset, u_shadowTexture, u_shininess, u_specularColor, u_specularCubemap, u_specularTexture, u_spotLights0color, u_spotLights0cutoffAngle, u_spotLights0direction, u_spotLights0exponent, u_spotLights0intensity, u_spotLights0position, u_spotLights1color, u_svtBufferTexture, u_svtDepth, u_svtDetectionFactor, u_svtId, u_svtIndirectionDiffuseTexture, u_svtIndirectionEmissiveTexture, u_svtIndirectionHeightTexture, u_svtIndirectionMetallicTexture, u_svtIndirectionNormalTexture, u_svtIndirectionRoughnessTexture, u_svtIndirectionSpecularTexture, u_svtResolution, u_svtTileSize, u_tessQuality, u_time, u_vrOffset, u_vrScale, u_worldTrans
Fields inherited from class gaiasky.util.gdx.shader.BaseIntShader
camera, context, program
-
Constructor Summary
ConstructorDescriptionTessellationShader
(IntRenderable renderable, TessellationShaderProvider.Config config) TessellationShader
(IntRenderable renderable, TessellationShaderProvider.Config config, TessellationShaderProgram shaderProgram) TessellationShader
(IntRenderable renderable, TessellationShaderProvider.Config config, String prefix) TessellationShader
(IntRenderable renderable, TessellationShaderProvider.Config config, String prefix, String vertexShader, String controlShader, String evaluationShader, String fragmentShader) -
Method Summary
Modifier and TypeMethodDescriptionboolean
canRender
(IntRenderable renderable) Checks whether this shader is intended to render theIntRenderable
.static String
createPrefix
(IntRenderable renderable, TessellationShaderProvider.Config config) void
renderMesh
(ExtShaderProgram program, IntMeshPart meshPart) If necessary, overrideMethods inherited from class gaiasky.util.gdx.shader.GroundShader
createPrefix
Methods inherited from class gaiasky.util.gdx.shader.DefaultIntShader
begin, bindLights, bindMaterial, compareTo, dispose, end, equals, equals, getDefaultCullFace, getDefaultDepthFunc, getDefaultFragmentShader, getDefaultVertexShader, init, render, setDefaultCullFace, setDefaultDepthFunc
-
Constructor Details
-
TessellationShader
public TessellationShader(IntRenderable renderable, TessellationShaderProvider.Config config, String prefix, String vertexShader, String controlShader, String evaluationShader, String fragmentShader) -
TessellationShader
public TessellationShader(IntRenderable renderable, TessellationShaderProvider.Config config, TessellationShaderProgram shaderProgram) -
TessellationShader
-
TessellationShader
public TessellationShader(IntRenderable renderable, TessellationShaderProvider.Config config, String prefix)
-
-
Method Details
-
createPrefix
public static String createPrefix(IntRenderable renderable, TessellationShaderProvider.Config config) -
canRender
Description copied from interface:IntShader
Checks whether this shader is intended to render theIntRenderable
. Use this to make sure a call to theIntShader.render(IntRenderable)
method will succeed. This is expected to be a fast, non-blocking method. Note that this method will only return true if it is intended to be used. Even when it returns false the IntShader might still be capable of rendering, but it's not preferred to do so.- Specified by:
canRender
in interfaceIntShader
- Overrides:
canRender
in classGroundShader
- Parameters:
renderable
- The renderable to check against this shader.- Returns:
- true if this shader is intended to render the
IntRenderable
, false otherwise.
-
renderMesh
Description copied from class:BaseIntShader
If necessary, override- Overrides:
renderMesh
in classBaseIntShader
-