Vous ne pouvez pas sélectionner plus de 25 sujets
Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
|
- ShaderFile ::= (Class | Procedure | Function | Main | Code)*
- Class ::= '{$CLASS' ClassName ('$EXTENDS' ClassName*)? '}' (ClassProcedure | ClassFunction | ClassMain | Code)* '{$END}'
- Inherited ::= '{$INHERITED' (ClassName)? (MethodName)? (Parameter)* ('$INLINE')? '}'
- Call ::= '{$CALL' MethodName Parameter* '}'
- Include ::= '{$INCLUDE' Filepath '}'
- Meta ::= '{$META' (TextQuoted* | '$VERSION' VersionNumber 'compatibility'? | '$EXTENSION' ExtensionName ExtensionValue | '$LAYOUT' LayoutValue) '}'
- Property ::= '{$PROPERTY' PropertyName (StaticName | Value)? '}'
- Static ::= '{$STATIC' StaticName Value? '}'
- Echo ::= '{$ECHO' (StaticName | PropertyName | TextQuoted) '}'
- Varying ::= '{$VARYING' glslTypeQuoted IdentifierQuoted '}'
- Uniform ::= '{$UNIFORM' glslTypeQuoted IdentifierQuoted '}'
- Var ::= '{$VAR' glslTypeQuoted IdentifierQuoted glslValue? '}'
- Const ::= '{$CONST' glslTypeQuoted IdentifierQuoted glslValue '}'
- Procedure ::= ProcedureHead Code '{$END}'
- ClassProcedure ::= ProcedureHead (Code | Inherited)* '{$END}'
- ProcedureHead ::= '{$PROC' MethodName (ParameterType ParameterName)* ('$INLINE')? '}'
- ClassFunction ::= FunctionHead (Code | Inherited)* '{$END}'
- Function ::= FunctionHead Code '{$END}'
- FunctionHead ::= '{$FUNC' ReturnType MethodName (ParameterType ParameterName)* ('$INLINE')? '}'
- Main ::= '{$MAIN}' Code '{$END}'
- ClassMain ::= '{$MAIN}' (Code | Inherited)* '{$END}'
- If ::= '{$IF' Expression '}' Code ( '{$ELIF' Expression '}' Code )* ( '{$ELSE}' Code )? '{$END}'
- Info ::= '{$INFO' TextQuoted '}'
- Warning ::= '{$WARNING' TextQuoted '}'
- Error ::= '{$ERROR' TextQuoted '}'
- Throw ::= '{$THROW' TextQuoted '}'
-
- Parameter ::= (PropertyName | StaticName | glslCodeQuoted)
- Code ::= (glslCode | Call | Include | Meta | Property | Static | Echo | Var | Varying | Uniform | Const | If | Info | Warning | Error | Throw)*
- Expression ::= ( PropertyName | StaticName | Value | ( '$NOT' | '!' ) Expression | '(' Expression ')' | Expression ( '$OR' | '$AND' | '$XOR' | '+' | '-' | '*' | '/' | '=' | '<' | '>' | '<=' | '>=' | '<>' | '|' | '&' | '^' ) Expression )
-
- ClassName ::= Identifier
- MethodName ::= Identifier
- PropertyName ::= Identifier
- StaticName ::= Identifier
- ExtensionName ::= IdentifierQuoted
- ParameterName ::= IdentifierQuoted
-
- Value ::= TextQuoted
- glslValue ::= glslCodeQuoted
- ExtensionValue ::= glslCodeQuoted
- LayoutValue ::= glslCodeQuoted
-
- ReturnType ::= glslTypeQuoted
- ParameterType ::= glslTypeQuoted
-
- TextQuoted ::= ['] Text [']
- VersionNumber ::= [0-9]
- IdentifierQuoted ::= ['] Identifier [']
- Identifier ::= [A-Za-z0-9_]
- Filepath ::= ['] [A-Za-z0-9\/_-] [']
- glslCodeQuoted ::= ['] glslCode [']
- glslTypeQuoted ::= ['] glslType [']
- glslType ::= (int | float | double | vec2 | vec3 | vec4 | ivec2 | ivec3 | ivec4 | dvec2 | dvec3 | dvec4 | mat2 | mat3 | mat4 | imat2 | imat3 | imat4 | dmat2 | dmat3 | dmat4)
- glslCode ::= [https://www.opengl.org/documentation/glsl/]
|