Hi Aaron,
I am trying to gain knowledge of Panda whilst do lots of models and data entry, so my understanding might be wrong, but I think setTexture would always be used first even if setColorMap was used, the idea being to load texture(s) then to vary them by vertex colors, so the axis direction change shouldn't be required.
"..the requirements of the Panda3D exporter seem to boil down to a tiled .x mesh exporter with matching texture map per tile, yes?" Yes. Also Panda doesnt like any light on its textures, and is capable of generating its own "extra" lighting, eg Bump Maps. That is one way and as a beginner it seems the best way.
Another way is for Panda to import as a .egg file and the latest and greatest converter is "Yet Another Blender Egg Exporter (YABEE)", ref
https://www.panda3d.org/forums/viewtopic.php?t=11441 Although it is for Blender, depending on size (smaller is better) some Maps could be imported into Blender as mesh with the texture added, then exported as .egg and of course it may help you write an exporter for L3DT direct to .egg. Again, .x is quite stable going into blender compared to some other possible formats. Unsure of this method's viability for most L3DT terrains as they tend to be large.
Small maps (512x512?) can be generated using the Panda Heightfield Tesselator from the import of grey scale image Heightfields. Dont know how textures work with this internally to Panda.
One Panda internal prefers Heightfields to be 16 bit .png files. This is very new and is possibly still to be fully tested but is advertised as for huge terrains (8192x8192 or even 16384x16384)? This may turn out to be the best but it seems too early to tell. ref
https://www.panda3d.org/forums/viewtopi ... 38#p106846 It doesnt seem to have a proper name but the working title of "Shader Terrain Mesh".
Cheers!