mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Add plane_x parameter and SSD_colorscale
This commit is contained in:
parent
83006b933b
commit
76dba09efe
@ -339,6 +339,9 @@ cp_dependency(ShaderMatInput inp) {
|
||||
if (inp == SMO_attr_color) {
|
||||
dep |= SSD_color;
|
||||
}
|
||||
if (inp == SMO_attr_colorscale) {
|
||||
dep |= SSD_colorscale;
|
||||
}
|
||||
if ((inp == SMO_model_to_view)||
|
||||
(inp == SMO_view_to_model)) {
|
||||
dep |= SSD_transform;
|
||||
@ -771,6 +774,27 @@ compile_parameter(const ShaderArgId &arg_id,
|
||||
return true;
|
||||
}
|
||||
|
||||
if (pieces[0] == "plane") {
|
||||
if ((!cp_errchk_parameter_words(p,2))||
|
||||
(!cp_errchk_parameter_in(p)) ||
|
||||
(!cp_errchk_parameter_uniform(p))||
|
||||
(!cp_errchk_parameter_float(p,4,4))) {
|
||||
return false;
|
||||
}
|
||||
ShaderMatSpec bind;
|
||||
bind._id = arg_id;
|
||||
bind._piece = SMP_row3;
|
||||
bind._func = SMF_first;
|
||||
bind._part[0] = SMO_plane_x;
|
||||
bind._arg[0] = InternalName::make(pieces[1]);
|
||||
bind._part[1] = SMO_identity;
|
||||
bind._arg[1] = NULL;
|
||||
|
||||
cp_optimize_mat_spec(bind);
|
||||
_mat_spec.push_back(bind);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Keywords to access unusual parameters.
|
||||
|
||||
if (pieces[0] == "sys") {
|
||||
|
@ -78,6 +78,7 @@ public:
|
||||
SMO_plight_x,
|
||||
SMO_slight_x,
|
||||
SMO_satten_x,
|
||||
SMO_plane_x,
|
||||
|
||||
SMO_mat_constant_x,
|
||||
SMO_vec_constant_x,
|
||||
@ -150,8 +151,9 @@ public:
|
||||
SSD_general = 1,
|
||||
SSD_transform = 2,
|
||||
SSD_color = 4,
|
||||
SSD_material = 8,
|
||||
SSD_shaderinputs = 16,
|
||||
SSD_colorscale = 8,
|
||||
SSD_material = 16,
|
||||
SSD_shaderinputs = 32,
|
||||
};
|
||||
|
||||
enum ShaderBug {
|
||||
|
Loading…
x
Reference in New Issue
Block a user