Regression setShaderInput


I was using the following code to deal with hardware mesh instancing in Panda3D 1.7.1:

input_rot_1 = PTAVecBase4.emptyArray(self.MAX_MESHES_IN_BATCH)
for index in xrange(instances_in_batch):
    input_rot_1[index] = Vec4(rot_1)
mesh.setShaderInput("inst_rot_1", input_rot_1)

Running the same code with Panda3D 1.7.2 leads to this error:

Anyone has an explanation for this regression and what I’m supposed to used instead of PTAVecBase4?


This feature doesn’t exist on the 1.7.x branch. I suspect you were actually developing on a buildbot release, not on version 1.7.1 (some of the buildbot releases claimed to be version 1.7.1, but they were lying).


Thanks for the answer.

You’re totally right, I was using a development 1.7.1, not the official one that was released only a few weeks ago.

Any plan (date?) regarding when the possibility to provide arrays to shaders will be available?


Like all development on the trunk right now, it will become part of the 1.8 branch. We don’t have a schedule for that branch yet.