Castor3D  0.11.0
Multiplatform 3D engine
CSCN File Format

CSCN files are easily editable text files (since the syntax is understood).
The data types used in scene files are these ones :

  • boolean : a boolean (true or false).
  • int : a simple integer.
  • mask_1 : an hexadecimal integer defining a mask for one component from a colour (0x000000FF, for instance).
  • mask_3 : an hexadecimal integer defining a mask for three components from a colour (0x00FFFFFF, for instance).
  • real : a floating point number, using dot ( . ) as the decimals separator.
  • 2, 3, 4 ints : 2, 3 or 4 integers, separated by commas ( , ) or spaces ( ).
  • 2, 3, 4 reals : 2, 3 or 4 floating point numbers, separated by commas ( , ) or spaces ( ).
  • size : 2 integers greater than or equal to 0.
  • 2x2, 3x3, 4x4 reals matrix : 2, 3 or 4 groups separated by semi colons ( ; ) of 2, 3 or 4 floating point numbers separated by commas ( , ) or spaces ( ).
  • rgb_colour : the RGB components of colour, expressed in floating point numbers between 0.0 and 1.0.
  • rgba_colour : the RGBA components of colour, expressed in floating point numbers between 0.0 and 1.0.
  • rgb_hdr_colour : the RGB components of colour, expressed in floating point numbers greater than or equal to 0.0.
  • rgba_hdr_colour : the RGBA components of colour, expressed in floating point numbers greater than or equal to 0.0.
  • value : a string corresponding to a predefined value.
  • name : a string, wrapped into double quotes ( ‘" ).
  • file : a string, wrapped into double quotes ( ‘" ), containing a file name and path.
  • folder : a string, wrapped into double quotes ( ‘" ), containing a folder path.



Description

The file is split into sections, defined as follows :

[section_type] "[section_name]"
{
    // Section description
}

Example:

light "Light0"
{
    type directional
    colour 1.0 1.0 1.0
    intensity 0.8 1.0
}

Some sections can have child subsections :

material "Bronze"
{
    pass
    {
        ambient 0.2125 0.1275 0.054
        diffuse 0.714 0.4284 0.12144
        emissive 0.0
        specular 0.393548 0.271906 0.166721
        shininess 25.6
    }
}



Sections list

The possible sections are the following:

  1. sampler
    Defines a texture sampler object.
  2. material
    Defines a material.
  3. mesh
    Defines a mesh.
  4. font
    Defines a font used in text overlays.
  5. window
    Defines a render window.
  6. panel_overlay
    Defines a simple panel overlay.
  7. border_panel_overlay
    Defines a panel overlay with a border.
  8. text_overlay
    Defines a panel overlay with a text.
  9. scene
    Defines a whole scene.



Section sampler

  1. min_filter : value

    Value used for minification function. The possible values are :

    • linear : linear interpolation.

    • nearest : no interpolation.

  2. mag_filter : value

    Value used for magnification function. The possible values are :

    • linear : linear interpolation.

    • nearest : no interpolation.

  3. mip_filter : value

    Value used for mipmapping function. The possible values are :

    • linear : linear interpolation.

    • nearest : no interpolation.

  4. min_lod : real

    Defines minimum level of detail value.

  5. max_lod : real

    Defines maximum level of detail value.

  6. lod_bias : real

    Defines the base MIP-Level.

  7. u_wrap_mode : value

    Defines the wrapping mode of the texture, for the U component. The possible values are :

    • repeat : The texture is repeated.

    • mirrored_repeat : The texture is repeated, each instance of 2 being the mirror of the other one.

    • clamp_to_border : The texture is stretched, the object edge colour is defined as the texture edge colour.

    • clamp_to_edge : The texture is stretched, the object edge colour is defined as the average of the texture edge colour and the border colour.

  8. v_wrap_mode : value

    Defines the wrapping mode of the texture, for the V component. The possible values are :

    • repeat : The texture is repeated.

    • mirrored_repeat : The texture is repeated, each instance of 2 being the mirror of the other one.

    • clamp_to_border : The texture is stretched, the object edge colour is defined as the texture edge colour.

    • clamp_to_edge : The texture is stretched, the object edge colour is defined as the average of the texture edge colour and the border colour.

  9. w_wrap_mode : value

    Defines the wrapping mode of the texture, for the W component. The possible values are :

    • repeat : The texture is repeated.

    • mirrored_repeat : The texture is repeated, each instance of 2 being the mirror of the other one.

    • clamp_to_border : The texture is stretched, the object edge colour is defined as the texture edge colour.

    • clamp_to_edge : The texture is stretched, the object edge colour is defined as the average of the texture edge colour and the border colour.

  10. border_colour : rgba_colour

    Defines the non textured border colour.

    • float_transparent_black : Transparent black.

    • int_transparent_black : Transparent black.

    • float_opaque_black : Opaque black.

    • int_opaque_black : Opaque black.

    • float_opaque_white : Opaque white.

    • int_opaque_white : Opaque white.

  11. max_anisotropy : real

    Defines the maximum degree of anisotropy.



material section

Materials can be multi-pass, so you can declare more than one pass subsection.

  1. pass : section

    Defines a new section describing a texture.


pass section

  1. diffuse : rgb_colour

    Defines diffuse colour of the pass (phong materials only).

  2. albedo : rgb_colour

    Defines albedo colour of the pass (not available with phong materials).

  3. specular : rgb_colour

    Defines specular colour of the pass (not available with metallic/roughness materials).

  4. metallic : real (between 0 and 1)

    Defines the metallness of the pass (metallic/roughness materials only).

  5. shininess : real (between 0 and 128)

    Defines the specular exponent of the pass (phong materials only).

  6. glossiness : real (between 0 and 1)

    Defines the glossiness of the pass (specular/glossiness materials only).

  7. roughness : real (between 0 and 1)

    Defines the roughness of the pass (metallic/roughness materials only).

  8. ambient : real (between 0 and 1)

    Defines ambient factor of the pass (phong materials only).

  9. emissive : real (between 0 and 1)

    Defines emissive factor of the pass.

  10. alpha : real (between 0 and 1)

    Defines the global alpha value for the pass.

  11. two_sided : boolean

    Tells the pass is two sided (true) or not (false).

  12. texture_unit : section

    Defines a new section describing a texture unit.

  13. alpha_blend_mode : value

    Alpha blending mode name, can be one of:

    • none : No alpha blending.

    • additive : Source and destination alpha values are added.

    • multiplicative : Source and destination alpha values are multiplied.

  14. colour_blend_mode : value

    Colour blending mode name, can be one of:

    • none : No colour blending.

    • additive : Source and destination colour values are added.

    • multiplicative : Source and destination colour values are multiplied.

  15. alpha_func : func : value ref-val: real

    Defines the way alpha rejection is applied to the texture. The second parameter is the reference value used in alpha rejection function. The first parameter values can be :

    • always : The sample colour is always applied.

    • less : The sample colour is applied if its alpha component is less than the second parameter.

    • less_or_equal : The sample colour is applied if its alpha component is less than or equal to the second parameter.

    • equal : The sample colour is applied if its alpha component is equal to the second parameter.

    • not_equal : The sample colour is applied if its alpha component is different from the second parameter.

    • greater_or_equal : The sample colour is applied if its alpha component is greater than or equal to the second parameter.

    • greater : The sample colour is applied if its alpha component is greater than the second parameter.

    • never : The sample colour is never applied.

  16. refraction_ratio : real

    Defines the refraction ratio of the pass. Note that if there is no refraction map, the refraction is still applied, using only the skybox.

  17. subsurface_scattering : section

    Defines a new section describing subsurface scattering for the pass.

  18. parallax_occlusion : boolean

    Enables or disables parallax occlusion mapping (needs a normal map and a height map).

  19. bw_accumulation : int between 0 and 5

    Defines the accumulation function, for blended weighted rendering.

texture_unit section

  1. image : file

    Defines the image file name.

  2. render_target : section

    Defines a new section describing a render target.

  3. channel : value {| value}

    The channels to which the texture is bound. Can be one of the following :

    • diffuse : Diffuse lighting colour (Phong only).

    • albedo : Base colour (PBR only).

    • specular : Specular colour (Phong and PBR Specular/Glossiness).

    • metallic : Metallic factor (PBR Metallic/Roughness only).

    • shininess : Specular exponent (Phong only).

    • glossiness : Glossiness factor (PBR Specular/Glossiness only).

    • roughness : Roughness factor (PBR Metallic/Roughness only).

    • opacity : Opacity factor.

    • emissive : Emissive colour.

    • transmittance : Transmittance factor (for subsurface scattering).

    • occlusion : Occlusion factor.

    • normal : Normals.

    • height : Height.

    • Reflection : Reflection map.

    • Refraction : Refraction map.

  4. sampler : name

    Defines the sampler object used by the texture.

  5. diffuse_mask : mask_3

    Defines the components from the texture used for the diffuse colour (Phong only).

  6. albedo_mask : mask_3

    Defines the components from the texture used for the base colour (PBR only).

  7. specular_mask : mask_3

    Defines the components from the texture used for the specular colour (Phong or PBR Specular/Glossiness).

  8. metalness_mask : mask_1

    Defines the component from the texture used for the metallic factor (PBR Metallic/Roughness only).

  9. shininess_mask : mask_1

    Defines the component from the texture used for the specular exponent (Phong only).

  10. glossiness_mask : mask_1

    Defines the component from the texture used for the glossiness factor (PBR Specular/Glossiness only).

  11. roughness_mask : mask_1

    Defines the component from the texture used for the roughness factor (PBR Metallic/Roughness only).

  12. opacity : mask_1

    Defines the component from the texture used for the opacity factor.

  13. emissive : mask_3

    Defines the components from the texture used for the emissive colour.

  14. transmittance : mask_1

    Defines the component from the texture used for the transmittance factor (for subsurface scattering.

  15. occlusion : mask_1

    Defines the component from the texture used for the occlusion factor.

  16. normal : mask_3

    Defines the components from the texture used for the normals.

  17. height : mask_1

    Defines the component from the texture used for the height.

  18. height_factor : real

    The height factor multiplier.

  19. normal_directx : booléen

    Tells if the texture normals are expressed for DirectX (green component will then be inverted).

shader_program section

  1. vertex_program : section

    Defines a new section describing the vertex program.

  2. pixel_program : section

    Defines a new section describing the pixel program.

  3. geometry_program : section

    Defines a new section describing the geometry program.

  4. hull_program : section

    Defines a new section describing the hull (tessellation control) program.

  5. domain_program : section

    Defines a new section describing the domain (tessellation evaluation) program.

  6. constants_buffer : section

    Defines a new section dexcribing a constants buffer (uniform buffer).

vertex/pixel/geometry/hull/domain_program section

  1. file : file

    Shader file name

  2. sampler : name

    Creates a new variable of sample (1D, 2D, …) type, for the pixel shader.

  3. input_type : value

    Defines the input faces data type, for geometry shader. Can be one of the following :

    • points : Points.

    • lines : Disjoint lines.

    • line_loop : Joint lines loop.

    • line_strip : Joint lines.

    • triangles : Disjoint triangles.

    • triangle_strip : Joint triangles.

    • triangle_fan : Triangles joint using the first point.

    • quads : Disjoint quads.

    • quad_strip : Joint quads.

    • polygon : Polygons.

  4. output_type : value

    Defines the geometry chader output data type. Can be one of the following :

    • points : Points.

    • line_strip : Joint lines.

    • triangle_strip : Joint triangles.

    • quad_strip : Joint quads.

  5. output_vtx_count : int

    Defines the geometry shader output vertices.

  6. constants_buffer : section

    Defines a new section describing a constants buffer.

constants_buffer section

  1. shaders : bitwise ORed values

    Shader types to which this buffer applies, can be one of:

    • vertex

    • hull

    • domain

    • geometry

    • pixel

    • compute

  2. variable : name, section

    Defines a new section describing a variable for this buffer.

variable section

  1. type : value

    Variable type name, can be :

    • int : 1 signed integer.

    • uint : 1 unsigned integer.

    • float : 1 simple precision floating point number.

    • double : 1 double precision floating point number.

    • vec2i : 2 signed integers.

    • vec3i : 3 signed integers.

    • vec4i : 4 signed integers.

    • vec2f : 2 simple precision floating point numbers.

    • vec3f : 3 simple precision floating point numbers.

    • vec4f : 4 simple precision floating point numbers.

    • vec2d : 2 double precision floating point numbers.

    • vec3d : 3 double precision floating point numbers.

    • vec4d : 4 double precision floating point numbers.

    • mat2x2i : 2x2 signed integers matrix.

    • mat2x3i : 2x3 signed integers matrix.

    • mat2x4i : 2x4 signed integers matrix.

    • mat3x2i : 3x2 signed integers matrix.

    • mat3x3i : 3x3 signed integers matrix.

    • mat3x4i : 3x4 signed integers matrix.

    • mat4x2i : 4x2 signed integers matrix.

    • mat4x3i : 4x3 signed integers matrix.

    • mat4x4i : 4x4 signed integers matrix.

    • mat2x2f : 2x2 simple precision floating point numbers matrix.

    • mat2x3f : 2x3 simple precision floating point numbers matrix.

    • mat2x4f : 2x4 simple precision floating point numbers matrix.

    • mat3x2f : 3x2 simple precision floating point numbers matrix.

    • mat3x3f : 3x3 simple precision floating point numbers matrix.

    • mat3x4f : 3x4 simple precision floating point numbers matrix.

    • mat4x2f : 4x2 simple precision floating point numbers matrix.

    • mat4x3f : 4x3 simple precision floating point numbers matrix.

    • mat4x4f : 4x4 simple precision floating point numbers matrix.

    • mat2x2d : 2x2 double precision floating point numbers matrix.

    • mat2x3d : 2x3 double precision floating point numbers matrix.

    • mat2x4d : 2x4 double precision floating point numbers matrix.

    • mat3x2d : 3x2 double precision floating point numbers matrix.

    • mat3x3d : 3x3 double precision floating point numbers matrix.

    • mat3x4d : 3x4 double precision floating point numbers matrix.

    • mat4x2d : 4x2 double precision floating point numbers matrix.

    • mat4x3d : 4x3 double precision floating point numbers matrix.

    • mat4x4d : 4x4 double precision floating point numbers matrix.

  2. count : int

    Variable occurences count (array size).

  3. value :
    Variable value, depends on the chosen type.

subsurface_scattering section

  1. strength : real

    Defines the strength of the effect.

  2. gaussian_width : real

    Defines the width of the Gaussian blur.

  3. transmittance_profile : section

    Defines a new section describing the transmittance profile.

transmittance_profile section

  1. factor : vec4f

    Defines the three RGB components of the colour, and the fourth component is used for the exponent of that colour.



font section

  1. file : file

    Defines the file holding the font.

  2. height : int

    Defines the height (precision) of the font.



scene section

  1. ambient_light : colour

    Defines the ambient lighting colour. For PBR materials, defines the influence of the IBL on the scene.

  2. background_colour : colour

    Defines the background colour.

  3. background_image : file

    Defines the background image.

  4. import : file

    Allows scene import from a CSCN file or another file format supported by Castor3D importer plug-ins.

  5. scene_node : section

    Defines a new section describing a scene node for objects, lights or billboards.

  6. camera_node : section

    Defines a new section describing a scene node for cameras.

  7. light : section

    Defines a new section describing a light source.

  8. object : section

    Defines a new section describing an object.

  9. billboard : section

    Defines a new section describing a billboards list.

  10. camera : section

    Defines a new section describing a camera.

  11. panel_overlay : section

    Defines a new section describing a simple panel overlay.

  12. border_panel_overlay : section

    Defines a new section describing a simple panel overlay with a border.

  13. text_overlay : section

    Defines a new section describing a simple panel overlay with text.

  14. animated_object_group : section

    Defines a new section describing an animated object group, with common animations.

  15. mesh : section

    Defines a new section describing a mesh, that can be used with one or more objects.

  16. particle_system : section

    Defines a new section describing a particle system.

  17. skybox : section

    Defines a new section describing the skybox.

  18. include : file

    Includes a scene file, allowing you to split your scene in multiple files.

  19. sampler : section

    Defines a new section describing a sampler.

  20. fog_type : value

    Defines the fog type for the scene. Possible values are:

    • linear: Fog intensity increases linearly with distance to camera.

    • exponential: Fog intensity increases exponentially with distance to camera.

    • squared_exponential: Fog intensity increases even more with distance to camera.

  21. fog_density : real

    Defines the fog density, which is multiplied by the distance, according to chosen fog type.

  22. hdr_config : section

    Defines a new section describing the HDR configuration.


hdr_config section

  1. exposure : real

    Defines the scene’s exposure.

  2. gamma : real

    Defines the gamma correction.


scene_node and camera_node sections

  1. parent : name

    Defines this node’s parent. The default parent node is the root node.

  2. position : 3 reals

    Node position relative to its parent.

  3. orientation : 4 reals

    A quaternion holding node orientation relative to its parent.

  4. scale : 3 reals

    Node scale relative to its parent.


light section

  1. type : value

    Three light source types exist in Castor3D :

    • directional : directional light (like the sun).

    • point_light : a positioned source which emits in all directions.

    • spot_light : a positioned source which emits in an oriented cone.

  2. colour : rgb_colour

    Defines the colour for this source.

  3. intensity : 2 reals

    Defines the diffuse and specular intensities for this source.

  4. attenuation : 3 reals

    Defines the three attenuation components : constant, linear and quadratic. This attenuation is computed from the distance to the light source.
    Only for spot_light and point_light.

  5. cut_off : real

    Defines the angle of the emission cone.
    Only for spot_light.

  6. exponent : real

    Defines the attenuation computed with the distance from the emission cone centre.
    Only for spot_light.

  7. parent : name

    Defines the node which this light source is attached to.

  8. shadow_producer : section

    Defines a new section describing the shadows for the light source.


Section shadows

  1. producer : booléen

    Tells if the light source produces shadows (true) or not (false).

  2. filter : valeur

    Defines the type of shadows to use. Can be one of the following:

    • raw : No filter.

    • pcf : PCF filter.

    • variance : Variance Shadow Map.

  3. min_offset : real

    Defines the minimal offset to apply to the shadow value.

  4. max_slope_offset : real

    Defines the mawimal offset, slope wise, to apply to the shadow value.

  5. variance_max : real

    Defines the minimal variance factor to apply to the shadow value.

  6. variance_bias : real

    Defines the variance bias to apply to the shadow value.

  7. volumetric_steps : int

    Defines the number of steps performed by the ray to compute the volumetric light scattering.

  8. volumetric_scattering : real

    Defines the volumetric light scattering factor.


object section

  1. parent : name

    Defines the node which this object is attached to.

  2. mesh : name

    Defines the mesh this object uses.

  3. mesh : name section

    Defines a new section describing a mesh with the given name.

  4. material : name

    Name of a material, defined in a .cmtl file or in this file. Applies this material too all the submeshes.

  5. materials : section

    New section used to specify each submesh’s material.

  6. cast_shadows : boolean

    Defines if the object casts shadows (true, default value) or not (false).

  7. receive_shadows : boolean

    Defines if the object receives shadows (true, default value) or not (false).

materials section

  1. material : int, name

    Submesh index, and material name for this submesh.


billboard section

Allows the definition of billboards that share the same material and dimensions.

  1. parent : name

    Defines the parent scene node.

  2. positions : section

    Defines a new section describing each billboard position.

  3. material : name

    Defines the material used by every billboard of this list.

  4. dimensions : size

    Defines billboards dimensions.

  5. type : value

    Defines the type of billboard. Possible values are:

    • cylindrical: The billboard faces the camera, except for their Y axis, which remains still.

    • spherical: The billboard faces the camera on all axes.

  6. size : value

    Defines the billboards sizing. Possible values are:

    • dynamic: The size varies, depending on the distance to camera.

    • fixed: The size is fixed, where the camera is.

positions section

  1. pos : 3 reals

    Defines the relative position of a billboard.


camera section

  1. parent : name

    Defines the parent CameraNode.

  2. primitive : value

    Defines the display type. Can be one of :

    • points : Points.

    • lines : Disjointed lines.

    • line_loop : Jointed lines loop.

    • line_strip : Joined lines.

    • triangles : Disjointed triangles.

    • triangle_strip : Jointed triangles.

    • triangle_fan : Triangles jointed using the first point.

    • quads : Disjointed quads.

    • quad_strip : Jointed quads.

    • polygon : Polygons.

  3. viewport : section

    Defines the camera view port.

viewport section

  1. type : value

    Window display type, 2d or 3d.

  2. left : real

    Defines the minimum displayed X coordinate.

  3. right : real

    Defines the maximum displayed X coordinate.

  4. top : real

    Defines the minimum displayed Y coordinate.

  5. bottom : real

    Defines the maximum displayed Y coordinate.

  6. near : real

    Defines the minimum displayed Z coordinate.

  7. far : real

    Defines the maximum displayed Z coordinate.

  8. size : size

    Defines the window display size (in pixels).

  9. fov_y : real

    Defines the vertical field of view angle, in radians.

  10. aspect_ratio : real

    Defines the global window aspect ratio (1.33333 for 4/3, 1.77777 for 16/9 … ).


animated_object_group section

  1. animated_object : name

    Adds the object with the given name to the group.

  2. animation : name

    Adds the animation with the given name to the group’s common animations list.

  3. start_animation : name

    Starts the given animation.

  4. pause_animation : name

    Pauses the given animation (which must have been started first).

animation section

  1. looped : boolean

    Defines if the animation is looped (true) or not (false, default value).

  2. scale : real

    Defines the time scale of the animation (can be negative, the animation will then be played backwards).



mesh section

  1. type : name

    Mesh type name, one of :

    • custom : manually defined mesh or imported mesh.

    • cube : a cube, user must then define its three dimensions.

    • cone : a cone, user must then define its radius and height.

    • cylinder : a cylinder, user must then define its radius and height.

    • sphere : a sphere with quad faces, user must then define the subdivisions count and the radius.

    • icosahedron : a sphere with triangular faces, user must then define the subdivisions count and the radius.

    • torus : a torus, user must then define the internal and external subdivisions count and the internal and external radius.

    • plane : a plane, user must then define the width and depth subdivisions count and the width and depth.

  2. submesh : section

    Defines a new section describing a submesh. Only if the mesh type is custom.

  3. import : file <options>

    Allows import of mesh data from a file, in CMSH file format or any format supported by Castor3D import plug-ins. Only if the mesh type is custom. This directive can accept few optional parameters :

    • smooth_normals : Computes normals per vertex during import.

    • flat_normals : Computes normals per face during the import.

    • tangent_space : Computes tangent space informations (tangent and bi-tangent) during import.

    • rescale=real : Rescales the resulting mesh by given factor, on three axes.

  4. morph_import : file <options>

    Allows import of mesh data from a file, to add mophing animation.
    This directive must happen after a first import directive.
    Available only if the mesh type is custom.
    This directive can accept few optional parameters :

    • smooth_normals : Computes normals per vertex during import.

    • flat_normals : Computes normals per face during the import.

    • tangent_space : Computes tangent space informations (tangent and bi-tangent) during import.

    • rescale=real : Rescales the resulting mesh by given factor, on three axes.

  5. division : name int

    Allows the mesh subdivision, using a supported Castor3D divider plug-in algorithm. The second parameter is the application count of the algorithm (its applied recursively).


submesh section

  1. vertex : 3 reals

    Defines a vertex position.

  2. uv : 2 reals

    Defines the UV texture coordinates for the previously declared vertex.

  3. uvw : 3 reals

    Defines the UVW texture coordinates for the previously declared vertex.

  4. normal : 3 reals

    Defines the normal coordinates for the previously declared vertex.

  5. tangent : 3 reals

    Defines the tangent coordinates for the previously declared vertex.

  6. face : 3 or 4 integers

    Defines a face using the three or four vertices whose indices are given. If more than three indices are given, creates the appropriate count of triangular faces.

  7. face_uv : as much uv as the face indices

    Defines the UV coordinates for each vertex of the previously declared face.

  8. face_uvw : as much uvw as the face indices

    Defines the UVW coordinates for each vertex of the previously declared face.

  9. face_normals : as much 3 reals groups as the face indices

    Defines the normals coordinates for each vertex of the previously declared face.

  10. face_tangents : as much 3 reals groups as the face indices

    Defines the tangents coordinates for each vertex of the previously declared face.



panel_overlay section

  1. material : name

    Defines the material used by the panel.

  2. position : 2 reals

    Defines the overlay position, relative to its parent (or to screen, if no parent).

  3. size : 2 reals

    Defines the overlay size, relative to its parent (or to screen, if no parent).

  4. pxl_position : 2 ints

    Defines the absolute position for the overlay, in pixels.

  5. pxl_size : 2 ints

    Defines the absolute size for the overlay, in pixels.

  6. uv : 4 reals

    Defines the UV for the overlay (left, top, right, bottom).

  7. panel_overlay : name section

    Defines a new section describing a simple panel children overlay.

  8. border_panel_overlay : name section

    Defines a new section describing a border panel children overlay.

  9. text_overlay : name section

    Defines a new section describing a text panel children overlay.



border_panel_overlay section

  1. material : name

    Defines the material used by the panel.

  2. position : 2 reals

    Defines the overlay position, relative to its parent (or to screen, if no parent).

  3. size : 2 reals

    Defines the overlay size, relative to its parent (or to screen, if no parent).

  4. pxl_position : 2 ints

    Defines the absolute position for the overlay, in pixels.

  5. pxl_size : 2 ints

    Defines the absolute size for the overlay, in pixels.

  6. center_uv : 4 reals

    Defines the UV for the center of the overlay (left, top, right, bottom).

  7. border_material : name

    Defines the material used for the panel’s border.

  8. border_position : value

    Defines the border’s position, can be one of:

    • internal : The border is inside the overlay.

    • middle : The border is half inside, half outside the overlay.

    • external : The border is outside the overlay.

  9. border_size : 4 reals

    Defines the borders sizes (left right, top, bottom).

  10. pxl_border_size : 2 ints

    Defines the absolute border size, in pixels.

  11. border_inner_uv : 4 reals

    Defines the UV for the border of the overlay, inner side (left, top, right, bottom).

  12. border_outer_uv : 4 reals

    Defines the UV for the border of the overlay, outer side (left, top, right, bottom).

  13. panel_overlay : name section

    Defines a new section describing a simple panel children overlay.

  14. border_panel_overlay : name section

    Defines a new section describing a border panel children overlay.

  15. text_overlay : name section

    Defines a new section describing a text panel children overlay.



text_overlay section

  1. material : name

    Defines the material used by the panel.

  2. position : 2 reals

    Defines the overlay position, relative to its parent (or to screen, if no parent).

  3. size : 2 reals

    Defines the overlay size, relative to its parent (or to screen, if no parent).

  4. pxl_position : 2 ints

    Defines the absolute position for the overlay, in pixels.

  5. pxl_size : 2 ints

    Defines the absolute size for the overlay, in pixels.

  6. font : name

    Defines the font used to display the text.

  7. text : texte

    Defines the displayed text.

  8. text_wrapping : value

    Defines the way the text is cut when a line overflows the overlay dimensions. Can be one of:

    • none : The text is not cut (the part that overflows won’t be displayed, though).

    • break : The text is cut at the letter (the words will be cut).

    • break_words : The text is cut at the word (the words remain uncut).

  9. vertical_align : value

    Defines the text vertical alignment:

    • top : Align on top.

    • center : Vertically center.

    • bottom : Align on bottom.

  10. horizontal_align : value

    Defines the text horizontal alignment:

    • left : Align on left.

    • center : Horizontally center.

    • right : Align on right.

  11. texturing_mode : value

    Defines the way the texture is applied:

    • letter : The texture is applied on each letter.

    • text : The texture is applied on the whole text.

  12. line_spacing_mode : value

    Defines the height of the lines:

    • own_height : Each line has its own height.

    • max_lines_height : Each line has the height of the line with the maximum height.

    • max_font_height : Each line has the height of the character with the maximum height in the font.

  13. panel_overlay : name section

    Defines a new section describing a simple panel children overlay.

  14. border_panel_overlay : name section

    Defines a new section describing a border panel children overlay.

  15. text_overlay : name section

    Defines a new section describing a text panel children overlay.



window section

  1. render_target : section

    Defines a new section describing the render target.

  2. vsync : boolean

    Defines the activation or deactivation of vertical synchronisation.

  3. fullscreen : boolean

    Defines the activation or deactivation of full-screen display.



render_target section

  1. scene : nom

    Defines the scene rendered in this target.

  2. camera : nom

    Defines the camera used to render the scene.

  3. size : size

    Defines the internal buffer dimensions.

  4. format : value

    Defines the colour buffer pixel format. Can be one of :

    • l8 : Luminance 8 bits, one 8 bits integral number.

    • l16f : Luminance 16 bits, one 16 bits floating point number (half float).

    • l32f : Luminance 32 bits, one 32 bits floating point number(float).

    • al16 : Alpha + Luminance, two 8 bits integral number.

    • al16f : Alpha + Luminance, two 16 bits floating point number (half float).

    • al32f : Alpha + Luminance, two 32 bits floating point number (float).

    • argb1555 : ARGB 16 bits, 1 bit for alpha and each other component on a 5 bits integer.

    • rgb565 : RGB 16 bits, R and B on a 5 bits integer, G on a 6 bits integer.

    • argb16 : ARGB 16 bits, each component on a 4 bits integer.

    • rgb24 : RGB 24 bits, each component on a 8 bits integer.

    • argb32 : ARGB 32 bits, each component on a 8 bits integer.

    • argb16f : ARGB 64 bits, each component on a 16 bits floating point number (half float).

    • rgb32f : RGB 96 bits, each component on a 32 bits floating point number (half float).

    • argb32f : ARGB 128 bits, each component on a 32 bits floating point number (half float).

  5. depth : value

    Defines the depth/stencil buffer pixel format. Can be one of :

    • depth16 : Depth on a 16 bits integer.

    • depth24 : Depth on a 24 bits integer.

    • depth24s8 : Depth on a 24 bits integer, Stencil on a 8 bits integer.

    • depth32fs8 : Depth on a 32 bits floating point, Stencil on a 8 bits integer.

    • depth32 : Depth on a 32 bits integer.

    • depth32f : Depth on a 32 bits floating point.

    • stencil1 : Stencil on 1 bit.

    • stencil8 : Stencil on a 8 bits integer.

  6. postfx : value

    Defines a post render effect to use. The parameters depend on the chosen effect.

  7. stereo : boolean

    Tells if we use stereoscopic display mode.

  8. tone_mapping : name

    Defines the tone mapping operator to use with the render target.

  9. ssao : section

    Defines a new section describing the Screen Space Ambient Occlusion.


ssao section

  1. enabled : boolean

    Defines the activation status of SSAO.

  2. high_quality : boolean

    Defines the quality of the effect.

  3. radius : real

    Defines the radius of the effect (expressesd in meters).

  4. bias : real

    Defines the bias of the effect.

  5. intensity : real

    Defines the intensity of the effect.

  6. num_samples : int

    Defines the number of samples per pixel.

  7. edge_sharpness : real

    Defines the edge sharpness, in the blur pass.

  8. blur_step_size : int

    Defines the size of a step in the blur pass.

  9. blur_radius : int

    Defines the blur radius.