I’m not exactly sure if this is more of a Panda3D question or a 3dsmax question, but I wanted to know if I can decide which parts of a model will be changed if setColor() is called on the model. Normally if it is untextured the whole model changes, and if it is textured I don’t think any of it is. But let’s say I want to create a black humanoid figure in 3dsmax and egg it out so that when you use setColor() on it you can set like certain stripes on his body to whatever color, but the rest of him remains the same. So for instance, if I use setColor(1,0,0,1) he should be mostly black but with red stripes, but if I used setColor(0,1,0,1) he should be mostly black but with green stripes. Is there a way to determine which parts of a model will be able to color-change and which will not be able to?
in case of your stickfigure black/white thing.
take a model, texture it with a black/white texture.
call setColorScale( ) instead of setColor. all white parts will be tinted the color your gave, and the black parts will remain black.
So what is the specific difference in functionality between setColor() and setColorScale()? Like let’s say I had a blue and white figure instead of black and white. Would the same principle apply? And what if I had a white model but I wanted to have the stripe effect there as well? How would I do that?
coloring a blue/black model with a red color scale will make it entirely black.
if you have a white model and have stripes on it you may want to replace textures. if you have a limited number of colors that’s usualy a good and easy sollution.
actually there are quite anumber of sollutions for your problem, depending on the complexity of your needs.
may be worth to look into texture-combine modes,too.