pymel.core.rendering.convertSolidTx¶
- convertSolidTx(*args, **kwargs)¶
Command to convert a texture on a surface to a file texture. The first argument is a rendering node or attribute. If only the node is specified, the outColor attribute will be sampled. If the node does not have an outColor attribute, the first attribute on the node which is: readable, not writable, not hidden, connectable, and not a multi is used. If lighting is to be baked, a shading group must be specified as the texture. The current selection will be used if a texture and surface are not specified. An image file will be generated for each object and stored in your image segment of your project. The filename will be formatted using the texture and surface names as follows: However, if force is off and there is a name collision a version number will be determined and the filename will be formatted as follows:
Flags:
Long Name / Short Name Argument Types Properties alpha / al bool Specify whether to compute the transparency when baking lighting. The conversion will sample both the color and transparency of the shading network; the alpha channel of the file texture will be set to correspond to the result from sampling the transparency. By default transparency is not computed. antiAlias / aa bool Perform anti-aliasing on the resulting image. Convert solid texture will generally take four times longer than without anti-aliasing. By default this flag is off. backgroundColor / bc int, int, int Set the background color to a specific value. Default is to use the shader default color to fill the background. Valid values range from 0 to 255 if the pixel format is 8 bits per channel, or 0 to 65535 if the pixel format is 16 bits per channel. This flag automatically sets -backgroundMode to color. Default is black: 0 0 0. backgroundMode / bm unicode Defines how the background of the texture should be filled. Three modes are available: shaderor 1: uses the default shader color. coloror 2: uses the color given by -backgroundColor flag. extendor 3: extends outwards the color along the seam edges. Default is shader. camera / cam PyNode Specify a camera to use in baking lighting. If a camera is not specified the camera in the active view will be used. componentRange / cr bool If one or more components have been selected to use, then if this flag is set, then the uv range of the components is used to fit into the texture map resolution. By default this flag is set to false. doubleSided / ds bool Specify whether the sampler should flip the surface normal if the sample point faces away from the camera. Note: flipping the normal will make the result dependent on the camera (ie. one camera may flip normals where different camera wouldn’t). It’s not recommended that doubleSided be used in combination with shadows. By default this flag is false. fileFormat / fil unicode File format to be used for output. IFF is the default if unspecified. Other valid formats are:als: Alias PIXcin: Cineoneps: EPSgif: GIFiff: Maya IFFjpg: JPEGyuv: Quantelrla: Wavefront RLAsgi: SGIsi: SoftImage (.pic)tga: Targatif: TIFFbmp: Windows Bitmap fileImageName / fin unicode Specify the output path and name of file texture image. If the file name doesn’t contain a directory separator, the image will be written to source images of the current project. The file will not be versioned if it already exists. fillTextureSeams / fts bool Specify whether or not to overscan the polygon beyond its outer edges, when creating the file texture, in order to fill the texture seams. Default is true. force / f bool If the output image already exists overwrite it. By default this flag is off. fullUvRange / fur bool Sample using the full uv range of the surface. This flag cannot be used with the -uvr flag. A 2D texture placement node will be created and connected to the file texture. The placement’s translate and coverage will be set according to the full UV range of the surface. name / n unicode Set the name of the file texture node. Name conflict resolution will be used to determine valid names when multiple objects are specified. pixelFormat / pf unicode Specifies the pixel format of the image. Note that not all file formats support all pixel formats. Available options: 8: 8 bits per channel, unsigned (0-255) 16: 16 bits per channel, unsigned (0-65535) Default is 8. resolutionX / rx int Set the horizontal image resolution. If this flag is not specified, the resolution will be set to 256. resolutionY / ry int Set the vertical image resolution. If this flag is not specified, the resolution will be set to 256. reuseDepthMap / rdm bool Specify whether or not to reuse all the generated dmaps. Default is false. samplePlane / sp bool Specify whether to sample using a virtual plane. This virtual plane has texture coordinates in the rectangle defined by the -samplePlaneRange flag. If the -samplePlaneRange flag is not set then the virtual plane defaults to having texture coordinates in the (0,0) to (1,1) square. If this option is set than all surface based arguments will be ignored. samplePlaneRange / spr float, float, float, float Specify the uv range of the texture coordinates used to sample if the -samplePlane option is set. There are four arguments corresponding to uMin, uMax, vMin and vMax. By default the virtual plane is from uMin 0 to uMax 1, and vMin 0 to vMax 1. shadows / sh bool Specify whether to compute shadows when baking lighting. Disk based shadow maps will be used. Only lights with depth map shadows enabled will contribute to the shading. By default shadows are not computed. uvBBoxIntersect / ubi bool This flag is obsolete. uvRange / uvr float, float, float, float Specify the uv range in which samples will be computed. There are four arguments corresponding to uMin, uMax, vMin and vMax. Each value should be specified based on the surface’s uv space. A 2D texture placement node will be created and connected to the file texture. The placement’s frame translate and coverage will be set according to the uv range specified. By default the entire uv range of the surface will be used. uvSetName / uv unicode Specify which uv set has to be used as the driving parametrization for convert solid. Flag can have multiple arguments, passed either as a tuple or a list. Derived from mel command maya.cmds.convertSolidTx
Example:
import pymel.core as pm pm.file( f=True, new=True ) # Create a blinn shader with a marble texture. pm.shadingNode( 'blinn', asShader=True ) pm.sets( renderable=True, noSurfaceShader=True, empty=True, name='blinn1SG' ) pm.connectAttr( 'blinn1.outColor', 'blinn1SG.surfaceShader', f=True ) pm.shadingNode( 'marble', asTexture=True ) pm.connectAttr( 'marble1.outColor', 'blinn1.color', f=True ) # Create two objects, and assign the blinn shader to them. pm.polySphere() pm.sets( e=True, forceElement='blinn1SG' ) pm.polyPlane() pm.move( 2, 0, 0 ) pm.sets( e=True, forceElement='blinn1SG' ) # Create a low resolution texture for the sphere pm.convertSolidTx( 'marble1', 'pSphere1', rx=64, ry=64 ) # Create a transparency texture forthe plane. pm.convertSolidTx( 'marble1.outAlpha', 'pPlane1' ) # Create a texture named myTexture.iff for the sphere. pm.convertSolidTx( 'marble1', 'pSphere1', bm='extend', fileImageName='myTexture.iff' )