Texture Pabrika

by Juan Martin Victorio in Addons


Texture Pabrika Technical Documentation



Map Baker Utility

The Map Baker Utility extracts data from a collection of meshes.

When Bake Data Map is started, the Map Baker Utility generates items such as view layers and shader nodes and links them to the appropriate objects as indicated in the UI.

To effectively link items and extract data, certain requirements must be met by items indicated in its UI. The items below details requirements and information found in the Map Baker Property.


Source Collection 

  • Collection which contains the mesh type objects from which data shall be taken from.
  • Should not be excluded, is visible and is renderable on the active view layer.
  • Mesh type objects in the source collection ideally has a high vertex count to produce and hold accurate data.
  • Suffix - Suffix which identifies source mesh type objects. Objects without the appropriate suffix will be skipped.

Bake Target

  • Collection - Bake shader data from a mesh type object in the source collection to another mesh type object with a matching name in a target collection.
  • Color Attribute - Bake shader data from a mesh type object in the source collection to its own color attribute.

Max Samples

  • Number of samples to be taken by cycles during bake.

Target Collection

  • Collection which contains the mesh type objects that shall be used to map data from the mesh type objects in the source collection.
  • Should not be excluded, is visible and is renderable on the active view layer.
  • With the identifying suffixes removed, a mesh type object in the target collection must have a mesh type object with a matching name in the source collection 
  • The surfaces of a mesh type object in the target collection must overlap within the specified Surface Distance with the surfaces of a mesh type object in the source collection.
  • Mesh type objects in the target collection may or may not have a lower vertex count than a matching mesh type object in the source collection
  • Mesh type objects in the target collection must have an active UV Map which has been unwrapped.
  • Suffix  - Suffix which identifies target mesh type objects. Objects without the appropriate suffix will be skipped.

Target Material

  • The Blender Material applied to the top most material slot of all mesh type objects in the target collection to which data shall be baked into.

Surface Distance

  • The maximum distance between the surfaces of the source mesh type object and the target mesh type object.

Bake Dimensions

  • The output dimension of all generated data maps.

Margin

  • The amount of pixels that a baked data on an image map extends from its UV islands' borders.

Format

  • The output image format of the generated data maps.

Output File Destination

  • The location of the data maps relative to the Blend file.

Include in Bake:

  • Data that will be extracted from the source collection onto the bake target

Surface Info

  • Data generated using only the surface of a mesh type object.
  • Uses RGB channels in the following order:
    • R - Ambient Occlusion
    • G - Bevel Information
    • B - Surface Depth
  • Samples - Refer to the amount of cycles shader samples
  • Ambient Occlusion Min - threshold for a surface to be regarded as occluded from ambient light
  • Ambient Occlusion Max - threshold for a surface to be regarded as fully able to recieve ambient light
  • Pointiness Min - threshold for a surface to be regarded as sharp
  • Pointiness Max - threshold for a curved surfaces to be regarded as sloped
  • Surface Depth Spread - threshold to allow light to pass through from on side of a mesh to another 
  • Surfae Depth Scale - Surface Depth Spread multiplier factor


Light Info 

  • Data on how much light rays is recieved or is occluded on a surface of a mesh type object from an active light source in the scene.
  • Uses HSL channels in the following order:
    • H & S - Color Information
    • L - Light and Shadow Information
  • Indirect Lighting - Include light data that is bounced off other surfaces in the scene.
  • Color Information - Include color information produced using a material's base color and a light source's emitted color.


Indexer

  • Data that identifies surfaces of a mesh type object by material or by island.
  • Material ID Source:
    • Material ID - Auto-assign values using the following method:
      • R - Material Pass Index
      • G - Random Value per mesh island
      • B - None
    • Color Attribute -  Assign RGB values using information from vertex color attributes

Normals

  • Data that provides information on how light rays are bent as it recieved on the surface of an object.
  • Only compatible only with OpenGL.
  • Space:
    • Tangent - Generate direction data relative to a target mesh type object's surface orientation
    • Object - Generate direction data relative to a target mesh type object's orientation

World Normals

  • Data that refers to the direction of surfaces in relation to the world.


World Position

  • Data that refers to the position of a surface in relation to the world.
  • Scale - Multiplier factor to provide for a wider value range.




Node Builder Utility

The Node Builder Holds tools to allow users to build complex node networks quickly and easily

Settings

  • Stores and locks the properties that will be included for node groups that will be created using the node builder utility.
  • Necessary to allow the exporter utility to create and reset connections between properties in the beginning and at the end of the exporting process.
  • Warning
    • "Initializing clears all existing shader groups." 
    • Replacement of all Texture Pabrika Shader Node Groups currently utilized will have to be performed after re-initializing.

Create Node Groups

  • Node groups created using buttons in this section are always unique and are independent from data used by other node groups
    • Shader  Node group that is required to use Texture Pabrika's Exporter Utility
    • Property Array - Stackable Node group that controls properties of a shader
    • Shader Stack -Node Group with variable amount of shader input for easier organization. Input 0 is evaluated to be the top most input.
    • Image Stack - Node Group with variable amount of image or color input for easier organization. Input 0 is evaluated to be the top most input.

Create Data Map Node Instances

  • Node groups created using buttons in this section are instances of node groups that are meant to interpret data created using the Map Baker utility
    • Surface Info Node - interprets data from a Surface Info Map or a Surface Info Color Attribute
    • Light Info Node - interprets data from a Light Info Map or a Light Info Color Attribute
    • Direction Info Node - interprets data from a World Normals Map or a World Normals Color Attribute
    • Position Info Node - interprets data from a World Position Map or a World Position Color Attribute
    • Indexer Node - interprets data from a Indexer Map or a Indexer Color Attribute that utilized auto-assigned Material IDs
    • RGB Indexer Node - interprets data from a Indexer Map or a Indexer Color Attribute that utilized Vertex Color Attributes

Remove Node Groups

  • Helps the user maintain control over node groups that are generated using texture pabrika.
    • Shader Node Groups - Removes all Texture Pabrika Shader Node Groups, whether used in a shader node tree or not.
    • Unused Node Groups - Removes all node groups not found in any node tree.
    • TexPab Node Groups - Removes all node groups with created using Texture Pabrika's Node Builder Utility
    • All Node Groups - Removes all node groups whether used in a shader node tree or not.


Exporter Utility

The Exporter Utilty facilitates exporting the final texture maps so that they can be used on a PBR-based, OpenGL Render Engine of the user's choice.


Generate Maps for 

  • The collection from which the texture maps shall be taken from
  • Ideally, the mesh type objects in this collection must not have overlapping UVs.
  • mesh type objects in the selected collection must have target material on the top most material slot.
  • mesh type objects in the selected collection must have the appropriate active UV Map.

File Name 

  • The output name to be attached to all texture maps.

Divider 

  • The divider to be inserted between the output name and the texture map type.

Format 

  • The output image format.

Alpha

  • Enable alpha channel on texture map

32-bit

  • Allow a wider ranger of color values to be stored in the exported texture maps

Margin

  • The amount of pixels that a baked texture on an image map extends from its UV islands' borders.

Include Maps in Export

  • Shader Properties that should be included in the export

Dimensions

  • Texure Map output dimension

Destination

  • Texture Map output location relative to the Blend file.


Published 9 months ago
Blender Version 3.4, 3.5, 3.6
License GPL
Have questions before purchasing?

Contact the Creator with your questions right now.

Login to Message