for loop concatenation for 300 billboarding trees
Hi there,
I'm trying to run through a loop to billboard many trees in a landscape, instead of doing: land = viz.add('landscape.WRL') tree1 = land.getchild('tree1') tree1.billboard(2) tree2 = land.getchild('tree2') tree1.billboard(2) ... tree300 = land.getchild('tree300') tree300.billboard(2) Can I do a loop with something like this that will allow all the trees to be billboarded? But it wouldn't work: for i in range(20): tree = land.getchild("tree" + i) tree.billboard(2) I'm doing this because the billboarded trees in 3dsmax exported to vrml and into vizard wouldn't work. Thanks in advance eugcc |
Hi eugcc,
What you did should work, except for the getchild part. You can't add an integer to a string. You need to convert the integer to a string then add it to the other string. Example: Code:
for i in range(20): We are always looking to improve our vrml loader. Thanks! |
Billboarding Trees Coordinate
Thanks for the very prompt reply as always!
Its working now except that the coordinates of each individual tree seemed to be off, like the coordinates of the tree is changed to the world origin, or they simply disappear. I'll send the file to your email soon. Thanks! Eugene |
Hi Eugene,
I tried your file and billboarding worked automatically. Which version of Vizard are you running? The latest version is 2.15b, you might want to upgrade if you have an older version. Our vrml loader doesn't support sound, but I will go ahead and try to include that. In the meantime you could use the following code to play 3d sounds in your world: Code:
#Create an invisible object that will play the sound Code:
#Set the fog color to white |
Perfect!
Thanks, these are handy tips.
eugcc |
All times are GMT -7. The time now is 09:47 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC