From 620a38cbfb39d57e2142fc78770fc71dccfb4436 Mon Sep 17 00:00:00 2001 From: rdb Date: Fri, 12 Jun 2009 09:40:24 +0000 Subject: [PATCH] Identify texmat_x by texture stage ID, not by texturematrix ID. --- panda/src/display/graphicsStateGuardian.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/panda/src/display/graphicsStateGuardian.cxx b/panda/src/display/graphicsStateGuardian.cxx index cb5300dbc8..79e067630e 100644 --- a/panda/src/display/graphicsStateGuardian.cxx +++ b/panda/src/display/graphicsStateGuardian.cxx @@ -1090,11 +1090,12 @@ fetch_specified_part(Shader::ShaderMatInput part, InternalName *name, LMatrix4f } case Shader::SMO_texmat_x: { const TexMatrixAttrib *tma = DCAST(TexMatrixAttrib, _target_rs->get_attrib_def(TexMatrixAttrib::get_class_slot())); + const TextureAttrib *ta = DCAST(TextureAttrib, _target_rs->get_attrib_def(TextureAttrib::get_class_slot())); int stagenr = atoi(name->get_name().c_str()); - if (stagenr >= tma->get_num_stages()) { + if (stagenr >= ta->get_num_on_stages()) { return &LMatrix4f::ident_mat(); } - return &tma->get_mat(tma->get_stage(stagenr)); + return &tma->get_mat(ta->get_on_stage(stagenr)); } case Shader::SMO_plane_x: { const NodePath &np = _target_shader->get_shader_input_nodepath(name);