TSE and large terrain - new to this, am I on the right track?
by Tim Holt · in Torque Game Engine Advanced · 04/04/2006 (12:16 pm) · 5 replies
Quick backstory. I am running a "serious game" project at Oregon State University College of Forestry to create a new visualization system, and believe TSE to be a good approach - but want to get the group think on some ideas first.
Our goal is to create a multiplayer "thought space" and visualization tool for regional forest data, so that multiple users in at research organizations and US Forest Service can "see" the trees rather than just a dataset. We have digital terrain data for California, Western Oregon and Washington states, plus estimated vegetation coverage in that area on a 30 meter grid. We want to take that vegetation data and the topographic data, and create a virtual version of it - drawing out trees, shrubs, snags, stumps etc.
We're talking about a HUGE number of vegetation objects. A data query shows 450 objects in a 30x30 meter zone in the highest density area of the whole dataset. That's an extreme of course, but it shows the potential density of objects possible.
--------------
So here is the basic design I was thinking of. I'd love to get some feedback on it, especially in the "can TSE handle this or is this doable?" realm. BTW I'm going to be using words like "game" and "player" here even if it's not necessarily intended as an entertainment game.
1) Multiplayer based
a) Chat support (text)
b) Semi-custom avatar for each player
c) No guns, shooting, death, etc. required
2) Players can view the world in two modes...
a) World View Mode
+ Player flies above world in "god mode" looking down at very large areas
+ Coverage is on the order of hundreds of miles across
+ Player may click to get detail metadata on locations under mouse cursor
- Species/plant composition at point
- Fire potential
- Other available metadata
+ No actual trees or vegetation or other objects are drawn in World View
+ Textures and shaders (Parallax shader for forest canopy texture?) are used to
render the look of the land as if viewed from above and at some distance
+ Dynamic rendering of overlay data onto world, including
- Regional and cultural boundaries
- Areas where sub-zones with further detail exist
+ A dynamically rendered "GIS" type overview map is available for data study
+ Players may leave "notes" (bits of arbitrary text metadata) at different locations on the map
+ Players may view their notes and the notes of others
+ Player may choose to "zoom in" on selected zones where finer scale mapping is available
and enter Zone View Mode (described below)
b) Zone View Mode
+ Player is in a more first person view of the data space
+ Player may walk around or fly for faster movement or visual perspective
+ Map area is on the order of 10 miles across (depends on how TSE can handle it)
+ All individual vegetation objects are rendered with dependence on LOD to handle load
+ Objects (trees, etc.) do not need to be solid (which may help with engine load)
+ A dynamically rendered "GIS" type overview map is available for data study in
separate floating window like typical game "radar" display
+ Player may view an overview map which shows a top-down version of their
current location on the World View map
+ Additional metadata on individual objects available on request such as...
- Species of item being looked at
- Fire potential
- Statistics (size, age, etc.)
- Other metadata stored on an external central data source
+ Players may leave "notes" (bits of arbitrary text metadata) at different locations on the map
+ Players may view their notes and the notes of others
+ Player may leave Zone View and go back out to World View
So... thoughts?
Tim Holt
Oregon State University, College of Forestry
Our goal is to create a multiplayer "thought space" and visualization tool for regional forest data, so that multiple users in at research organizations and US Forest Service can "see" the trees rather than just a dataset. We have digital terrain data for California, Western Oregon and Washington states, plus estimated vegetation coverage in that area on a 30 meter grid. We want to take that vegetation data and the topographic data, and create a virtual version of it - drawing out trees, shrubs, snags, stumps etc.
We're talking about a HUGE number of vegetation objects. A data query shows 450 objects in a 30x30 meter zone in the highest density area of the whole dataset. That's an extreme of course, but it shows the potential density of objects possible.
--------------
So here is the basic design I was thinking of. I'd love to get some feedback on it, especially in the "can TSE handle this or is this doable?" realm. BTW I'm going to be using words like "game" and "player" here even if it's not necessarily intended as an entertainment game.
1) Multiplayer based
a) Chat support (text)
b) Semi-custom avatar for each player
c) No guns, shooting, death, etc. required
2) Players can view the world in two modes...
a) World View Mode
+ Player flies above world in "god mode" looking down at very large areas
+ Coverage is on the order of hundreds of miles across
+ Player may click to get detail metadata on locations under mouse cursor
- Species/plant composition at point
- Fire potential
- Other available metadata
+ No actual trees or vegetation or other objects are drawn in World View
+ Textures and shaders (Parallax shader for forest canopy texture?) are used to
render the look of the land as if viewed from above and at some distance
+ Dynamic rendering of overlay data onto world, including
- Regional and cultural boundaries
- Areas where sub-zones with further detail exist
+ A dynamically rendered "GIS" type overview map is available for data study
+ Players may leave "notes" (bits of arbitrary text metadata) at different locations on the map
+ Players may view their notes and the notes of others
+ Player may choose to "zoom in" on selected zones where finer scale mapping is available
and enter Zone View Mode (described below)
b) Zone View Mode
+ Player is in a more first person view of the data space
+ Player may walk around or fly for faster movement or visual perspective
+ Map area is on the order of 10 miles across (depends on how TSE can handle it)
+ All individual vegetation objects are rendered with dependence on LOD to handle load
+ Objects (trees, etc.) do not need to be solid (which may help with engine load)
+ A dynamically rendered "GIS" type overview map is available for data study in
separate floating window like typical game "radar" display
+ Player may view an overview map which shows a top-down version of their
current location on the World View map
+ Additional metadata on individual objects available on request such as...
- Species of item being looked at
- Fire potential
- Statistics (size, age, etc.)
- Other metadata stored on an external central data source
+ Players may leave "notes" (bits of arbitrary text metadata) at different locations on the map
+ Players may view their notes and the notes of others
+ Player may leave Zone View and go back out to World View
So... thoughts?
Tim Holt
Oregon State University, College of Forestry
#2
Now, for drawing the forests... the best approach in order to meet all the requirements without getting hack-happy is creating a custom renderable class for drawing the vegetation datasets. Maybe based off Atlas itself, since it's designed ot handle large amounts of data in chunks.
Maybe a modified version of Atlas itself, with some extended features to process the vegetation data. You could make it render the vegetation as a whole in wildly different LOD levels for each grid node. For afar, use a image-based approach, drawing the node data as a texture created based on coverage (you could use, as you said, parallax mapping to create a credible forest out from the data). When close, use 3D models for trees, placing them around based on the data's averages (the fxShapeReplicator can work as a base for this, or even the upcoming Forest Pack, that implements a custom forest class with more optimized LOD schemes than the replicators).
So, yes, I think it's doable. Not easy work, but very doable, taking Atlas and the replicator as starting points.
04/05/2006 (3:20 pm)
The whole interaction features are doeable in Torque, as well the multiplayer feature, without major issues other than planning it well before implementating. Also, Atlas can do fine to render the topographic data, when you nail down a pipeline for generating atlas terrains out from your data.Now, for drawing the forests... the best approach in order to meet all the requirements without getting hack-happy is creating a custom renderable class for drawing the vegetation datasets. Maybe based off Atlas itself, since it's designed ot handle large amounts of data in chunks.
Maybe a modified version of Atlas itself, with some extended features to process the vegetation data. You could make it render the vegetation as a whole in wildly different LOD levels for each grid node. For afar, use a image-based approach, drawing the node data as a texture created based on coverage (you could use, as you said, parallax mapping to create a credible forest out from the data). When close, use 3D models for trees, placing them around based on the data's averages (the fxShapeReplicator can work as a base for this, or even the upcoming Forest Pack, that implements a custom forest class with more optimized LOD schemes than the replicators).
So, yes, I think it's doable. Not easy work, but very doable, taking Atlas and the replicator as starting points.
#3
RE: texture use - some kind of changing over distance of the ground texture is is going to be necessary. A fir forest for example can have a pretty brown surface with some green coming from small plants and shrubs. But if viewed from high above all one sees is the green of the treetops.
If you assume the ground is a brown/dirt/needle/leaf texture, the small plants are simple sprites that fade out quickly at distance, and the trees are actual LOD models of some kind, without some kind of transitional thing with ground textures, there is going to be this point where much of the small plant/grass/shrub elements are going to vanish and it will look like a space with trees and too many brown zones around it. On the other hand if the ground texture begins to transition to a matching splotchy green/brown look as the little plants fade out, it will look pretty good.
04/05/2006 (3:47 pm)
Thanks Manoel - as you point out it will take some pretty diverse LOD methods.RE: texture use - some kind of changing over distance of the ground texture is is going to be necessary. A fir forest for example can have a pretty brown surface with some green coming from small plants and shrubs. But if viewed from high above all one sees is the green of the treetops.
If you assume the ground is a brown/dirt/needle/leaf texture, the small plants are simple sprites that fade out quickly at distance, and the trees are actual LOD models of some kind, without some kind of transitional thing with ground textures, there is going to be this point where much of the small plant/grass/shrub elements are going to vanish and it will look like a space with trees and too many brown zones around it. On the other hand if the ground texture begins to transition to a matching splotchy green/brown look as the little plants fade out, it will look pretty good.
#4
04/05/2006 (4:04 pm)
Another way to summarize what I'm trying to do might be "MMO with lots of trees, only a few players, and view varies from on the ground to 'god mode view'"
#5
Sounds like a cool project. Yes, TSE seems like a good fit for these requirements. As for rendering lots of stuff, it seems you're already looking at fxFoliageReplicator.. you might also want to look at integrating SpeeTree, depending on your budget. We have the "forest pack' as well (not yet finished or released), but it only works with TGE at the moment.
05/01/2006 (3:30 pm)
Hi Tim,Sounds like a cool project. Yes, TSE seems like a good fit for these requirements. As for rendering lots of stuff, it seems you're already looking at fxFoliageReplicator.. you might also want to look at integrating SpeeTree, depending on your budget. We have the "forest pack' as well (not yet finished or released), but it only works with TGE at the moment.
Torque Owner Tim Holt
If you've ever played the great little game called Mount & Blade, you may know what I mean by the world & zone view. In Mount & Blade, when travelling cross country you are in a high up "god view" mode watching your little character walk/ride across the landscape. Only in combat or when entering towns do you enter a new level of viewing detail.