News
Scenome 22.17 — 5/1/2022
Release details are described below.
- Scenome GLSL API. Significant upgrade to the default <DataCapture> system. You can now much more easily create your own default <DataCapture> configurations. There is a new <DataCapture> dictionary available in \Library\Outline\DataCapture Dictionary\DataCapture.box. You can open this document in the Graph application and create new <VariableNode> objects with custom <DataCapture> configurations. During Shader app document builds, the dictionary is searched, and any declarations that use the same variable name as the entry in the dictionary will then use the <DataCapture> configuration stored in the node inside the dictionary.
- Scenome Applications.
Added Magnifier draw mode to the Graph and Shader applications. You can access this draw mode from the Tools menu.
This draw mode allows you to zoom in on rendered surfaces and view pixel values for shaders using GLSL version 150 and higher.
This feature will not work on shaders running GLSL version 100, 110, 120, 130, and 140.
At present, this draw mode is provided in
preview mode only and does not yet include the control for visualizing pixel values. You can preview the tool in
the Shader and Graph applications. This tool will be upgraded over the next few release cycles. To use this tool in your own
shaders, you'll need to add the following code:
You'll also need to add the following statement immediately after the statement that assigns to fragColor (or whichever variable you are using to store the fragment shader output). Note that it's easiest to just pass in the fragColor variable itself. This function call must be the last thing your shader does after assigning to the fragment output variable.// If this is an ES shader put this code after your final precision declarations such as 'precision highp float'. #include <SPA_Constants.glsl> #include <Modules/SPA_EditStateFragmentColorOverride.glsl>
The pixel preview will only work when the mouse is over geometry that is being used to render the shader results. There is a command Create Visual Shader on the <Texture> command menu that will create a shader graphlet with texture readback. This should make it pretty easy to debug whatever you want. We will issue further guidance on this as needed.fragColor = pix; SPA_EditStateFragmentColorOverride( pix ); // Or... SPA_EditStateFragmentColorOverride( fragColor );
- Scenome Platform. Updated all sample and reference shaders for GLSL 150 and higher to use selection feedback as required by the new Magnifier draw mode.
- Scenome Platform. Added machine time (hours, minutes, seconds, millseconds) to the <Application> data interfaces.
- Scenome Platform. Added hexadecimal conversion to <Int32Algorithms> data interfaces.
- Scenome Platform. Added a command to the <Texture> node command menu to force a <Texture> node with an external data source to reload from disk, even if the <Texture> is not being rendered. This command has no effect on any <Texture> node that does not store its source on disk, since the underlying <Image> objects for those <Texture> objects are always loaded.