OGLSurfaceShader (object)¶
バージョン 1.12.0 で追加.
The OGLSurfaceShader inherits the OGLInlineShader. It extends the OGLInlineShader for shading with a simple phong model.
Uniforms¶
| Name | Type | Description | Default | 
|---|---|---|---|
| u_light0Position | Vec3 | Position of the first light | Position of the camera | 
| u_light0Color | Color | Color of the first light | Color(1.0, 1.0, 1.0) | 
| u_ambientColor | Color | Ambient color component | Color(0.05, 0.05, 0.05) | 
| u_diffuseColor | Color | Diffuse color component | Color(0.0, 1.0, 0.0) | 
| u_specularColor | Color | Specular color component | Color(0.2, 0.2, 0.2) | 
| u_specularFactor | Color | Specular distribution factor | 16.0 | 
| u_normalIsTangent | Integer | Flag defining normal type | 0 | 
| u_doubleSided | Integer | Flag defining backface shading model | 0 | 
Attributes¶
| Name | Type | Description | 
|---|---|---|
| positions | Vec3 | Geometry positions | 
| normals | Vec3 | Geometry normals | 
/*
** Example: OGLSurfaceShader
*/
require InlineDrawing;
  
operator entry() {
  InlineDrawing draw = OGLInlineDrawing();
  InlineShader shader = draw.registerShader(OGLSurfaceShader);
  InlineMaterial mat = shader.getOrCreateMaterial('blue');
  mat.setUniform('u_diffuseColor', Color(0.0, 0.0, 1.0));
  
}
/*
** Output:
*/
Methods¶
| OGLSurfaceShader ( in OGLSurfaceShader other ) | |
| OGLSurfaceShader ( in String name ) | |
| OGLSurfaceShader () | |
| OGLSurfaceShader | clone ? () | 
Methods in detail¶
OGLSurfaceShader ( in OGLSurfaceShader other )
copy constructor
OGLSurfaceShader ( in String name )
default constructor taking a name
default constructor
OGLSurfaceShader OGLSurfaceShader.clone? ()
clone method
