jit.gl.environment Reference

Manage environment textures for image-based lighting (IBL)

jit.gl.environment

Description

The jit.gl.environment object utilizes internal jit.gl.cubemap and jit.openexr objects for loading and uploading equirectangular exr environment maps. Once loaded the data is converted as needed and passed to requesting objects. Environments are bound to jit.gl.node sub-contexts, and only a single environment can be active in the sub-context at a time.

Discussion

Supporting objects include:
jit.gl.pbr
jit.gl.material
jit.gl.skybox

When used with PBR, irradiance and reflection maps are generated for IBL effects.

The object will process cubemaps based on requests from the supporting objects. The cubemap will either be stored internally, if loaded via read or jit_matrix messages, or external as the result of a jit_gl_texture message.

Attributes

adapt [int]

Adapt the internal cubemap to input file dimensions on load (default = 1). Only effective when the internal cubemap is in use. When enabled edge_length has no effect.

drawto [symbol]

The named context or sub-context drawing destination. When set, any supporting objects in the same (sub)context will have access to this envirnoment.

edge_length [int]

Set length of the cubemap edge (default = 64). Only effective when adapt is disabled and the internal cubemap is in use.

enable [int]

Enable the environment map for access by supporting objects in the same (sub)context (default = 1). Only a single envirnoment map can be active at a time, see the activate message for a convenient way to switch between enabled envirnoment maps.

file [symbol]

Set an image file to read with the internal cubemap for envirnoment map processing.

gamma_correction [int]

Enable gamma correction on the input (default = 1). Only effective when the internal cubemap is in use. Changing this value requires a re-load of the input file to have an effect.

name [symbol]

g/s(get)

Environment map name

reflect_edge [int]

Set the length of the generated reflection map edge (default = 128). Higher values improve the resolution and perceived quality of PBR reflections (most notably on flat surfaces), at the expense of longer loading time and greater GPU memory usage. Changing this value causes the reflection map to regenerate, which will stall the renderer.

Common Box Attributes

annotation [symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background [int] (default: 0)

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

color [4 floats]

Sets the color for the object box outline.

fontface [int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

fontname [symbol]

Sets the object's font.

fontsize [float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

hidden [int] (default: 0)

Toggles whether an object is hidden when the patcher is locked.

hint [symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

ignoreclick [int] (default: 0)

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile [symbol]

JS Painter File

patching_rect [4 floats] (default: 0. 0. 100. 0.)

Sets the position and size of the object in the patcher window.

position [2 floats]

g/s(set)

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

presentation [int] (default: 0)

Sets whether an object belongs to the patcher's presentation.

presentation_rect [4 floats] (default: 0. 0. 0. 0.)

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

rect [4 floats]

g/s(set)

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

size [2 floats]

g/s(set)

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

textcolor [4 floats]

Sets the color for the object's text in RGBA format.

textjustification [int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

varname [symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

Messages

bang

Output the cubemap texture name

(drag)

Drag and drop image files for envirnoment map processing

activate

In contexts where multiple enironments are enabled, only a single environment can be active at a time. This message tells the context to make this environment the active one. The enable attribute must be on to make active.

jit_gl_texture

Upload the named texture data to the cubemap for envirnoment map processing

read

Read in an image file for envirnoment map processing

See Also

Name Description
jit.gl.pbr
jit.gl.material Generate materials for 3D objects
jit.gl.cubemap Manage a cubemap texture target
jit.gl.skybox Render a skybox in OpenGL
jit.gl.texture Create OpenGL textures
jit.openexr Read or write an OpenEXR image.