Just started, need terrain advice
by Rich Marinaccio · in Torque Game Engine Advanced · 06/19/2007 (7:47 am) · 4 replies
Hi folks, I just purchased TGEA a few days ago and this is my first post. From what I have been reading in regard to the terrain options in torque, I'm not sure I'll be able to do what I was hoping to do without a great deal of work.
Let me explain the effect I would like to achieve. The game that I have in mind to make will be a strategy game largely based on land usage. For example, each parcel of land will be used as forest or farming or mining or whatever, and I want each parcel to change it's appearance to reflect how it's currently being used. The Civilization series of games use terrain in a similar way, so if you've played those games, you know what I'm after, except my parcels will be irregular rather than perfect squares.
There are two obstacles to my plan. I would like each game to take place on a randomly generated map, but I read that atlas terrains require a great deal of pre-processing. I don't foresee a need to alter the terrain geometry during a game, but I don't think I can expect a user to wait 10 minutes while a new game map is being generated at the start of a game. Also, since I want the surface appearance of the land to change, I'll probably want to dynamically alter the terrain texture, or at least fake it somehow. If I understand correctly, that's not currently possible with Atlas?
The legacy terrain system might be better for my purposes in some ways, but I have worked with it before on someone elses project and there are some things I really don't like about it. I can't use the infinately repeating terrain and it is also just a bit too small if I were to try and hide the fact that the terrain repeats. A few years ago I remember being able to turn the repeating off and just use ocean but I can't remember how I did it. I'm also not sure if an island map will suffice in my current design. I might want mountains off the edge of my map in some places and ocean in others, in order to give the appearance of a continent rather than a large island.
Here's my question; if I'm determined to do this, do you think that Atlas is feasable at all? Or, perhaps I should just keep tweaking the legacy terrain? I wonder if I had to make significant changes to one or the other, if it wouldn't be just as easy to change Atlas and keep it's obvious advantages. If my map is not *too* large, maybe the pre-processing time will be acceptable at the start of the game?
It would be nice to form such questions before making the big purchase, but the information is not really available unless you've already bought the engine. So here I am trying to make the best of it.
Let me explain the effect I would like to achieve. The game that I have in mind to make will be a strategy game largely based on land usage. For example, each parcel of land will be used as forest or farming or mining or whatever, and I want each parcel to change it's appearance to reflect how it's currently being used. The Civilization series of games use terrain in a similar way, so if you've played those games, you know what I'm after, except my parcels will be irregular rather than perfect squares.
There are two obstacles to my plan. I would like each game to take place on a randomly generated map, but I read that atlas terrains require a great deal of pre-processing. I don't foresee a need to alter the terrain geometry during a game, but I don't think I can expect a user to wait 10 minutes while a new game map is being generated at the start of a game. Also, since I want the surface appearance of the land to change, I'll probably want to dynamically alter the terrain texture, or at least fake it somehow. If I understand correctly, that's not currently possible with Atlas?
The legacy terrain system might be better for my purposes in some ways, but I have worked with it before on someone elses project and there are some things I really don't like about it. I can't use the infinately repeating terrain and it is also just a bit too small if I were to try and hide the fact that the terrain repeats. A few years ago I remember being able to turn the repeating off and just use ocean but I can't remember how I did it. I'm also not sure if an island map will suffice in my current design. I might want mountains off the edge of my map in some places and ocean in others, in order to give the appearance of a continent rather than a large island.
Here's my question; if I'm determined to do this, do you think that Atlas is feasable at all? Or, perhaps I should just keep tweaking the legacy terrain? I wonder if I had to make significant changes to one or the other, if it wouldn't be just as easy to change Atlas and keep it's obvious advantages. If my map is not *too* large, maybe the pre-processing time will be acceptable at the start of the game?
It would be nice to form such questions before making the big purchase, but the information is not really available unless you've already bought the engine. So here I am trying to make the best of it.
#2
I had thought long and hard about going 2D, and I may yet want to go that way. 3D didn't scare me before I had a chance to study my terrain options. Now that I'm a proud new TGEA owner, I feel like I gotta use it! I'm very interested in 3D terrains, and I love em in the games I play so I wouldn't mind too much getting my hands dirty with the terrain engine. On the other hand, I don't want to take an extra year to make a prototype of my game.
Plus, in order to get enough info to decide on the TGB option, I gotta buy the darn thing. To save a year of my life? Maybe I should.
06/19/2007 (9:44 am)
Thanks for the reply Mark,I had thought long and hard about going 2D, and I may yet want to go that way. 3D didn't scare me before I had a chance to study my terrain options. Now that I'm a proud new TGEA owner, I feel like I gotta use it! I'm very interested in 3D terrains, and I love em in the games I play so I wouldn't mind too much getting my hands dirty with the terrain engine. On the other hand, I don't want to take an extra year to make a prototype of my game.
Plus, in order to get enough info to decide on the TGB option, I gotta buy the darn thing. To save a year of my life? Maybe I should.
#3
Actually, now that I just thought of it, you do have a third choice as far as terrain: neither. TGEA is just fine with neither Atlas nor Legacy terrain being present in the mission. What if you created each terrain "block" as a separate DTS object. Then it would be absolute cheeze to create a dynamic terrain out of these blocks. It would only repeat as far as you wanted it to. Additionally, you could easily implement these Meshes (DTS') as a brand new engine object and therefore have whatever custom information you feel like in there.
06/19/2007 (12:57 pm)
TGB offers a fully functional 30-day trial I believe.Actually, now that I just thought of it, you do have a third choice as far as terrain: neither. TGEA is just fine with neither Atlas nor Legacy terrain being present in the mission. What if you created each terrain "block" as a separate DTS object. Then it would be absolute cheeze to create a dynamic terrain out of these blocks. It would only repeat as far as you wanted it to. Additionally, you could easily implement these Meshes (DTS') as a brand new engine object and therefore have whatever custom information you feel like in there.
#4
06/19/2007 (1:49 pm)
That's probably how I am going to have to start thinking. Torque seems to be set up mostly for static data; stuff that you make in editors and port in. For the games I like, I am going to have to learn how to make models programatically that work well with the torque system. Kinda scary, especially since I'm still very new to Torque.
Torque 3D Owner Mark Dynna
Next question: is having a fully 3D game a crucial feature for you? Looking at your design you might be way better off looking at TGB and going 2D tile/sprite based. That would instantly solve a lot of these issues. Or you could start looking toward TorqueX as your solution, but there's no telling when it will be done for full release.