Panda3d doesn’t have a terrain engine. You can either use a large model (.egg) as your environment (terrain) or implement a heightfield terrain with script by manipulating your vertex data, etc…
Torque has a built-in CLOD terrain engine and an in-game editor for terrain manipulation and texturing.
Since the Panda3d manual page that describes how to do a patch-based LOD heightfield terrain has not been written yet, I would say its easier to work with terrain in Torque.
As far as collision goes in Torque, most of the collision stuff is handled for you. A collision box is automatically generated for your player and buildings and stuff. You can test for collision with TorqueScript.
You have to keep in mind that Torque is a descendant of a 3d engine written for a FPS game called Tribes 2 from Sierra/Dynamix. Panda3d is a more generic game engine that is not necessarily limited to just one style of game (neither is Torque but requires more work to change) so there is a lot of functionality described in the Panda3d manual to use in your game its just not already complete in a specific type framework like FPS, RPG etc. There was talk a while back about tutorials with Panda3d for specific game types but I’m sure it just hasn’t happened yet because of time.
If I need large terrain for my game I would use Torque (and I do) for that purpose until we are shown or learn how to generate the terrain in Panda3d. The next version of Torque called TSE (shader engine) will allow you to create extremley large terrains.
I used Torque for about 6 months as part of a previous job. Torque is good if you are trying to make a game that looks and behaves in a similar manner to Tribes2. Torque is not good if you are trying to do just about anything else. The engine is geared towards making a FPS, and you really have to start twisting and hacking the code if you want to make anything non-FPS with it. Also, you have to deal with Torque script, which I found to be horrible. I still remember when my program died in one of the engine’s TorqueScript methods, something like:
SetWeaponAmmo(data, info, object)
Keep in mind here none of these parameters have types, there is no call trace, and no way to check variable values except through printfs. And of course the methods are all uncommented. Ugh.
Clearly I was scarred by this, as 2 years later I still feel the need to post about it to random strangers.
I’m just starting with Panda + Python, but it seems to be a lot cleaner and built on more general principles. I would certainly recommend it to a hobbyist, as I am sure you spend enough time looking at bad C code at work, and don’t want to do that in your free time as well.