Panda3D
Public Types | Public Member Functions | Public Attributes | Friends

MayaShaderColorDef Class Reference

This defines the various attributes that Maya may associate with the "color" channel for a particular shader (as well as on the "transparency" channel). More...

#include "mayaShaderColorDef.h"

List of all members.

Public Types

enum  BlendType {
  BT_unspecified, BT_modulate, BT_decal, BT_blend,
  BT_replace, BT_add, BT_blend_color_scale, BT_modulate_glow,
  BT_modulate_gloss, BT_normal, BT_normal_height, BT_gloss,
  BT_glow, BT_height, BT_selector
}
enum  ProjectionType {
  PT_off, PT_planar, PT_spherical, PT_cylindrical,
  PT_ball, PT_cubic, PT_triplanar, PT_concentric,
  PT_perspective
}

Public Member Functions

 MayaShaderColorDef (MayaShaderColorDef &)
LMatrix3d compute_texture_matrix () const
 Returns a texture matrix corresponding to the texture transforms indicated by the shader.
string get_panda_uvset_name ()
 Maya's default uvset name is "map1".
bool has_projection () const
 Returns true if the shader has a projection in effect.
LTexCoordd project_uv (const LPoint3d &pos, const LPoint3d &ref_point) const
 If the shader has a projection (has_projection() returns true), this computes the appropriate UV corresponding to the indicated 3-d point.
bool reset_maya_texture (const Filename &texture)
 Changes the texture filename stored in the Maya file for this particular shader.
string strip_prefix (string full_name)
void write (ostream &out) const

Public Attributes

BlendType _blend_type
LColor _color_gain
LVector2 _coverage
LColord _flat_color
bool _has_alpha_channel
bool _has_flat_color
bool _has_texture
bool _interpolate
bool _is_alpha
bool _keep_alpha
bool _keep_color
bool _mirror
LVector2 _offset
MayaShaderColorDef_opposite
LMatrix4d _projection_matrix
ProjectionType _projection_type
LVector2 _repeat_uv
double _rotate_frame
double _rotate_uv
bool _stagger
Filename _texture_filename
string _texture_name
LVector2 _translate_frame
double _u_angle
string _uvset_name
double _v_angle
bool _wrap_u
bool _wrap_v

Friends

class MayaShader

Detailed Description

This defines the various attributes that Maya may associate with the "color" channel for a particular shader (as well as on the "transparency" channel).

Definition at line 38 of file mayaShaderColorDef.h.


Member Function Documentation

LMatrix3d MayaShaderColorDef::compute_texture_matrix ( ) const

Returns a texture matrix corresponding to the texture transforms indicated by the shader.

Definition at line 150 of file mayaShaderColorDef.cxx.

References LMatrix3d::rotate_mat(), LMatrix3d::scale_mat(), and LMatrix3d::translate_mat().

string MayaShaderColorDef::get_panda_uvset_name ( )

Maya's default uvset name is "map1".

Panda's default uvset name is "default". Otherwise, leaves uvset name untranslated.

Definition at line 253 of file mayaShaderColorDef.cxx.

bool MayaShaderColorDef::has_projection ( ) const

Returns true if the shader has a projection in effect.

Definition at line 170 of file mayaShaderColorDef.cxx.

LTexCoordd MayaShaderColorDef::project_uv ( const LPoint3d pos,
const LPoint3d centroid 
) const

If the shader has a projection (has_projection() returns true), this computes the appropriate UV corresponding to the indicated 3-d point.

Seams that might be introduced on polygons that cross quadrants are closed up by ensuring the point is in the same quadrant as the indicated reference point.

Definition at line 185 of file mayaShaderColorDef.cxx.

References LPoint2d::zero().

bool MayaShaderColorDef::reset_maya_texture ( const Filename texture)

Changes the texture filename stored in the Maya file for this particular shader.

Definition at line 225 of file mayaShaderColorDef.cxx.


The documentation for this class was generated from the following files:
 All Classes Functions Variables Enumerations