Frequently Asked Questions

Here is a non-exhaustive list of the most Frequently Asked Questions about materials.

 

 

How to display materials applied onto objects?
How to improve the material display?
How to prevent the texture image from disappearing?
How to apply materials from a user-defined catalog?
How to visualize cgr files correctly?
How to save a catalog opened in read-only mode?
How to modify the default environment image on reflective materials?
How to repair broken links to materials?
How to find the material textures?
How to find the catalog a material is originated from?
Where is stored the material applied onto a product?
How to convert .isl files to .fx files?
Why are the rendering material properties grayed out in the Properties dialog box?

 


How to display materials applied onto objects?

Select View > Render Style > Customize View command then select the Material check box or click Shading with Material in the View Toolbar.  

How to improve the material display?

Sometimes, the material you applied onto an object may look dull or without any relief.

You can:

  • replace the environment image by an image with more contrast or with more vivid colors. This will impact the reflection of all the materials applied onto the model
  • or if you want to modify only one material, you can define a specific environment image for this material. To do so, access the material properties then click the ... button next to the Reflectivity slider. Bear in mind that a Real Time Rendering 2 license is required in that case
  • or if the material has a texture, you can play with the contrast of the texture image.
 

How to prevent the texture image from disappearing?

When increasing the material reflectivity, the texture image is no longer displayed.

Standard OpenGL technology cannot visualize a texture image and a reflection image simultaneously on the same material. As a consequence, if the material reflectivity is set to a value lower than 0.2, the texture image is preferably displayed. Inversely, if the material reflectivity is higher than 0.2, then the reflection image is preferably displayed.
Note that using other types of materials, such as OpenGL shaders, lets you display both effects simultaneously.

 

How to apply materials from a user-defined catalog?

Select Tools > Options > Infrastructure > Material Library then in the Material tab, indicate the path of the user-defined catalog you want to use in the Default Material Catalog Path box. This catalog will then open by default when clicking Apply Material .  

How to visualize .cgr files correctly?

.cgr files included in .CATPart documents onto which materials have been applied from a user-defined catalog may not be correctly displayed after the modification of this catalog.

The .cgr files have to be regenerated because they are not updated. To do so:

  1. remove the existing .cgr files
  2. export the NO_LOAD_CGR=1 environment variable
  3. reload the model to re-create the .cgr files properly.
 

How to save a catalog opened in read-only mode?

When trying to save a material catalog, a message informs you that the catalog is in read-only mode and cannot be saved.
By default, any material catalog you open in your Version 5 session opens in read-only mode for performance reasons.

To avoid loading a catalog in read-only mode and thus, be able to save it, select Tools > Options > Infrastructure > Material Library then in the Material tab, select the Applying a material opens the catalog in read/write mode check box.

 

How to modify the default environment image on reflective materials?

Select Tools > Options > Infrastructure > Material Library then in the Material tab:
  • enter the path of the user-defined environment image in the Environment Image File box or click the icon to browse your folders to the desired location
  • or, when working with a Real Time Rendering 2 license, click the button to create a new environment image.

Note that you do not need to restart a Version 5 session to take the new environment image into account.

 

How to repair broken links to materials?

When opening a model onto which materials have been applied from a user-defined catalog, the materials cannot be found and thus, the links to these materials are broken.

To correct this:

  1. select Tools > Options > General and access the Document tab
  2. in the Linked Document Localization area, make sure that the "Other folders" strategy is active (i.e. if "Yes" is displayed in the Active column). If it is not active, click the Activate button
  3. click the Configure... button
  4. in the Other Folders dialog box, select the folder containing your catalog in the Look in list
  5. click the Add button to add it to the search order.
 

How to find the material textures?

Sometimes, textures used by materials saved in a material catalog or in a CATPart or a CATProduct are not found by the application.

To correct this:

  1. select Tools > Options > General and access the Document tab
  2. in the Linked Document Localization area, check that the "Other folders" strategy is active (i.e. if "Yes" is displayed in the Active column). If it is not active, click the Activate button
  3. click the Configure... button to open the Other Folders dialog box
  4. select the folder containing your texture images in the Look in list
  5. click the Add button to add it to the search order.
 

How to find the catalog a material is originated from?

When applying a material as a linked object in a CATPart or a CATProduct, you may want to find the catalog in which this material is included.

To do so, select Edit > Links to display the list of links between documents. As this list shows the entire path of each link, it will be easy to identify the name and location of the catalog containing the linked material.

 

Where is stored the material applied onto a product?

When working with several levels of products in the same document, you may sometimes wonder where the material applied onto a product is stored: the material is stored in the document of the root product.

Let's take the following example:

 
 
Three different materials are applied onto three different elements:
  • "Concrete" is applied onto Product1
  • "Copper" is applied onto Product2
  • "Turf" is applied onto Part1.

Once the document has been saved, if you reopen each element individually (either using File > Open or the xxx object > Open in New Window contextual command), the result is as follows:

  • when reopening Product1, the material applied onto it, i.e. "Concrete", is displayed
  • when reopening Product2, no material is displayed because the material applied onto Product2 ("Copper") is stored in the root product, i.e. Product1 in our example.
    However, you can store the material in Product2: to do so, first open Product2 in a new window then apply the material onto it.
    As a consequence, if you want to be able to see the "Copper" material, you need to open Product1
  • when reopening Part1, the material applied onto it, i.e. "Turf", is displayed because the material applied onto a part is stored in the part itself.
 

How to convert .isl files to .fx files?

Version 5 lets you apply different kinds of advanced materials, such as OpenGL and CgFX materials. Parameters defining OpenGL materials are stored in .isl files whereas parameters defining CgFX materials are stored in .fx files.

When needed, you have the ability to convert .isl files into .fx files. This conversion is performed manually, i.e. you have to copy the necessary information from the .isl file then insert them at the required location in the .fx file.
To do so, use the template file named templateISLtoFX.fx provided in $CATStartupPath\startup\materials\shaders.

 
The four steps to carry out are detailed below:
  1. In the .isl file, copy the input parameters defined in the .isl file then paste them to the .fx file under the line //TWEAKABLES. You will also need to modify the syntax in order to make it compliant with the CgFX language.
    Below is an example of an .isl file with the result in .fx file:

 

Original .isl file Result in .fx file



 
  1. In the .fx file under the line //PARAMETERS, define the parameters to be called by the pixel shader as follows:
 
 
  1. In the .isl file, copy the parameters related to the shader body then pasted it to the .fx file under the line //PIXEL SHADER and make the necessary syntax modifications:
 
Original .isl file Result in .fx file


 

In addition to this, the roughness parameter has to be changed from: infos.SpecExpon=32;
to
infos.SpecExpon=Roughness*100;

 
  1. In the .fx file under the line //CALLS, insert the following information to call the pixel shader's parameters:
 
 
Your .isl file is now migrated in .fx format!  

Why are the rendering material properties grayed out in the Properties dialog box?

In certain cases, the rendering material properties of a material contained in a Material library are not editable.

Depending on the rights' access on the .CATMaterial document and the setting specified in the Tools > Options > Infrastructure > Material Library, (Open the catalog in the read-write mode when applying a material check box), the properties are accessible or not accessible: