Game Development Community

What would you like to see addressed in Torque 3D?

by Matt Fairfax · in Torque Game Engine Advanced · 01/09/2009 (7:10 pm) · 281 replies

Hi all,
We've asked before but I thought I would take the opportunity to build a fresh list of what you would like to see addressed in Torque.

This can be everything from a long-standing bug, to a resource that is so useful you find yourself integrating it over and over, to a complete wish for something. Whatever it is we want to hear it!

Please keep in mind that just because you ask for it doesn't mean that you will get it. I am making no promises but it is always helpful to us to hear what you are interested in or concerned about.

Our community is hugely diverse and something that is absolutely essential and of the highest priority to you and your game may actually be something that other games never use so don't take it personally if we don't address your specific concern.

I am going to make sure that everything specific that you mention gets logged into our task tacker so that it can be prioritized and reviewed even if we don't get to it for Torque 3D. I say "specific" because statements like "vehicles suck" aren't useful to us however if you can narrow it down to "FlyingVehicles crash when they run into the ground too fast" then it is something we can look into.

I am very serious about this...if you ever want a chance at having your concerns addressed then you need to speak up.

About the author

I am a Game Designer at PopCap who has worked on PvZ Adventures, PvZ2, Peggle Blast, and Bejeweled Skies. I am an ex-GarageGames employee who helped ship TGE, TGEA, Torque 3D, and Constructor.

#121
01/12/2009 (6:52 pm)
Ok...I think I've covered everything I can cover up to this point. I did skim past some items because I thought they were a bit *too* pie-in-the-sky for us to worry about at this point or because they were essentially repeats of previous stuff I had already addressed as well as the occasional *um* feature that I can't talk about yet (some of my silences are actually a bit telling if you paid attention ;).

In general I am really encouraged! The majority of what you guys are interested in are things that we are already addressing (in Torque 3D or Torque R&D) and when we finally are able to deliver it all I think you'll love it!

Please keep the suggestions coming! I will probably mostly only read tomorrow (spent *most* of today writing rather than working on the FPS Genre Kit =P).
#122
01/12/2009 (6:55 pm)
Quote:
I made a 9762 surface DIF which runs with lovely performance (and it's all exterior so no zoning). Originally it was a DTS with polysoup but the performance wasn't good, so I exported it from Blender as a Q3map and got it out of Constructor with map2dif_plus_TGEA.

If you are interested in sending me something like this it would *really* help our testing as we move Interior functionality over to TSShape! If I can get your Interior running as fast or faster then I think most people would be pretty happy with the switch =)
#123
01/12/2009 (6:55 pm)
Quick question since I haven't been on the forums for 6 to 7 months. Is TGEA 1.8 is for OSX (Mac) or is for windows too? I have Windows XP Pro and the last update I installed was TGEA 1.7.1.
#124
01/12/2009 (6:56 pm)
Quote:
Is TGEA 1.8 is for OSX (Mac) or is for windows too?

TGEA 1.8 is for Windows and Mac. There was some performance loss on the Windows side in order to get the Mac up and running so you may have a to make a decision if you are worried about that.
#125
01/12/2009 (7:00 pm)
Quick question since I haven't been on the forums for 6 to 7 months. Is TGEA 1.8 is for OSX (Mac) or is for windows too? I have Windows XP Pro and the last update I installed was TGEA 1.7.1.
#126
01/12/2009 (7:52 pm)
First off, props on the atlas announcement. It's never easy to admit "hey, this just isn't up to the quality we want to provide, and we don't have the resources to refine it".

As to specific test cases, most of these deal with clearly seeing how the engine handles under stress:

At a minimum, 2 variants on each vehicle in the same level(s). You've already mentioned rolling in findings from the LUMA/BLUR/Racing Genre Kit, so this is as much for fireproofing lower level changes to make sure those don't have unexpected side effects.

Spam some rigidshapes on a level for a bit that contains all your statics types and more than a player. This also, will highlight both any underlying physics issues, as well as provide a fairly simple acidtest for the type of networking load that's inherent in the interactive character of levels expected of modern games. (My last test, for example without gravity, and thus without any collisions at all going on started horking horribly at about (edit. correction, stock just killing gravities, more like 50. forgot a few hacks) rigids on the level. By no means saying you should aim for higher, but it's always good to demonstrate the envelope a bit, even if only internally)

You'd mentioned bots as game specific. True enough, however, I'd also have at a minimum, say... 10-15 ai driven players on a level with bullet-spamming weapons, for acid testing and airing out the projectile system. Anyone that's considered anything remotely in the en.wikipedia.org/wiki/Shoot_%27em_up#Bullet_hell genre from a 3d perspective quickly notices rendering artifacts with a heavy projectile load.


Toss in Features/Community resources:

Since this is also a feature request thread, I'd also like to point out: tdn.garagegames.com/wiki/Material_Based_Effects_Projects wich Ron Nelson took and ran with more concretely over: www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=14044 (know you're already looking in to something along those lines as of TGEA 1.8, so there's two cases at least where they would be used.)

www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=4116
Nicely demonstrates quite a few things, not least generalized target-prediction.

www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=13632
Is quite self-evident as far as utility goes.

Would keep going, but it's probably best not to get too feature-creepy, so that should be enough to chew on for a bit.
#127
01/12/2009 (7:56 pm)
As for T3D features I'd like to see:
1) As many have mentioned, a physics system in which it is easier to modify the functions/completely take out and add your own solutions.
2) I'd like to see QuatF's used on Players. Or maybe if it were designed in a way where it was kept as it is now (With the whole -z optimization thing), but the option to easily change it to a system based on QuatF's (maybe just design them both and allow the developer to switch out the source files for the other easily). Also, possibly hit boxes.

Quote: (My last test, for example without gravity, and thus without any collisions at all going on started horking horribly at about 200 rigids on the level. By no means saying you should aim for higher, but it's always good to demonstrate the envelope a bit, even if only internally)
Ah that reminds me. Better Rigid efficiency. The collision detection is pretty terrible, and there is no way to auto-deactivate rigids. That last bit is actually very easy to do using the already built in freezeSim().

And now my inner helpfulness can't resist answering some questions.
Quote:6. In-game particle editor system,
Quote:One of our internal devs is pretty hyped to tackle this but he has to get some other stuff done first.

I had alot of fun designing my version of the particle editor, I wonder how different the newer one will be, and maybe with the new GG site/search, people will actually be able to find my resource :p

Quote:11. Ingame xyz editors and scaling (I don't want to type numbers everytime I want to rotate or scale an object)

You do know you can hold alt while using an axis gizmo to rotate the object, and ctrl+alt to scale?

Quote:Quick question since I haven't been on the forums for 6 to 7 months. Is TGEA 1.8 is for OSX (Mac) or is for windows too? I have Windows XP Pro and the last update I installed was TGEA 1.7.1.
Yes, it does work with both systems.
#128
01/12/2009 (10:13 pm)
I have been reading this thread rather patiently, just a couple things I'd like to add:

= Fix vehicle collision bugs
-As others have pointed out, flying vehicles (i havent tested other types thoroughly) can crash the engine or pass right through the terrain when they collide with it too fast.

= Integrated terrain, texture placement, foliage/shape replicator and weather system
-This is one of the most important things I can think of for T3D, especially in terms of procedural content generation. By integration I mean you could group textures, foliage and precipitation together together so you could simply designate one area of the map as 'Desert'and it would automatically paint sand onto the area, place cactuses and another as 'Oasis'and it would automatically paint lush grass, palm trees, occasional rain, etc . Or if you are lazy (like me) and dont want to pay for level designers, it would automatically designate these zones on its own according to elevation, slope, water proximity, and allowed region types (i.e: a forest-only map). So it would be able to accomodate to both people who want to be able to place each tree and others who want to be able to create lush levels on-the-fly. Torque has already done great things with its current terrain generation ability and I think this would tie in beautifully with it. Especially with the size of current (soon-to-be-deprecated I guess) Atlas terrain, seeing the same type of foliage and textures over and over looks a bit ridculous, and manually painting every surface and placing replicators repeatedly is very time consuming.

=Material Editor
-Would be a god-send and speed up my art pipeline dramatically

=Environment Interaction
-This concerns things such as integrated day/night system, terrain deformation, precipitation that turns on or off added WITHOUT having to dig through fifty different resources to attempt to cobble it together

= Optimization
-TGEA will slow down significantly on my computer (1.9GHz dualcore, 3GB RAM) even when displaying modreatly-sized LODed forests. Auto-LOD generation would be INCREDIBLY helpful, as right now I am forced to contract out LOD-creation for existing mid-poly models to expensive third-parties (I know you said LOD generation probably won't make it but I'm still crossing my fingers).

= Improved AI
-I think it would vastly improve Torque playability out-of-the-box if you could include simple AI modules such as flocking, obstacle-avoiding node pathing, faux-vision. This would augment not only the traditional AIGaurd but also with bots such as birds, animals, un-armed civilians.
#129
01/13/2009 (12:41 am)
I'm a bit disapointed by the atlas announcement, because I loved the performance and size of atlas. If its a change for the better though thats fine. My largest concerns with that would be:

- Performance. As it stands right now using the same map on atlas and on legacy, atlas performs far higher. In terrain_water_demo for example 550 fps is about average on my system. Running the barebones legacy mission only gives about 170 fps on average. That's over 300% slower with just a single terrainblock and a far shorter visible range. In the T3D (megaterrain) demo the average fps ranges from 40-120 fps depending on how many terrainblocks are visible. So this will need some serious, serious optimization.
- Size. You mentioned 2x current megaterrain max is doable, i could live with that for better visual quality. Currently our maps though are 2048x2048x1.5, where I think megatterain is currently 512x512 limited on the importing process. I can live with reduced map or square size so long as the performance is up to snuff.
- Porting. For those of us who have been working o atlas based projects over the years, thats probably the biggest concern after performance. Being able to at the minimum import an externally created heightmap and layermaps from our old projects would be great.

All in all though I'm looking forward to T3D. I'm not sure if it will be out in time for us to incorporate into The Repopulation or not, but i'm still excited to see some big changes around here.
#130
01/13/2009 (12:44 am)
Quote:What specifically do you like about BSP? The dirty little secret of Torque is that Interiors don\\\'t actually use BSP for most of their collision! They only use it for determining which zone you are in and for ray cast/line of sight type collisions. They use a \\\"bins\\\" or grid-based system for the actual polylist type collisions (like Player or Vehicles). I know! I thought it was pretty funny when I realized that TSMesh collision was actually stricter about convexity than Interior\\\'s =P

I do think that editing in \\\"BSP\\\" (aka convex brushes) can be a lot more approachable for the average coder or coder/artist since the tools are generally simpler and the modeling is more like playing with blocks or legos (and the projective textures is *simple* unless you are trying to do something fancy).

As I mentioned above, we\\\'ve found that the rendering \\\"optimizations\\\" that the Interior class is doing (like zoning) is actually costing us a lot of performance on most video cards these days.
Thanks for your time on this thread!
I'm more into DIF just because of the zoning -- in a matter of network savings, as it's quite important to me to isolate objects "inside" from those that "outside" of building (covered with portals, etc). Sometimes the network counts more than performance hit.
I remember the discussion on forums (search doesn't help for this) where it was about making some "dummy" "interiors-like" objects with portals to cover polysoup-like buildings for zoning purposes.
Hope the new website will give a chance to find it :)

- Wanted to say about Atlas -- but I think I need to say now RIP Atlas.

- Caching data -- but its already discussed.

- libCurl instead of HTTPObject -- here is a bit hacky but very simple implementation. Another benefit of libcurl - it can be threaded! (download stuff without engine hanging)

- VFS - own virtual file system (something like ZIP packaging but own format with read/write)

- Default Zip encryption implementation (zip encryption does not exist in current engines).

- Background (threaded) resource loading/streaming

- Threaded VFS (or/and zip), so we can use engine to parse/repack big files without GUI/network hanging during process

- hidemesh / dynamic skins included by default

I'll think & post more if I remember something. ty

edit: quoting correction
#131
01/13/2009 (1:32 am)
Quote:
550 fps ... -> ... 170 fps. That's over 300% slower.

That looks like 70% slower, not 300%.
#132
01/13/2009 (1:51 am)
1. I would like to know if these Genre Kits would be part of Torque 3D or if it will be something in the line of separately bought?

2. Will T3D cost anything to upgrade from our current versions?

3. How many Genre Kits will their be?
#133
01/13/2009 (2:33 am)
@Phillip: The frame rate is over 3.2 times lower on the legacy terrain as compared to atlas. The megaterrain, your talking between 4-14 times slower.

As is right now, we didn't upgrade to 1.8 because of the huge performance hit, and from reading around here (check out Ubiq's new shader blog) it seems like a lot of others are doing the same. I can give you a real world example. We're hoping to wrap up on a project (The Repopulation in August/September). We recently integrated all sorts of performance optimizations from adding proper object clipping based on an adjustable visible distance, to groundcover improvements, lots of tweakable cutoffs, adjusting clipmap sizes etc. Now on my system (8800 gts, dual core, 2 gigs) I can run with max options, and get 125fps in most areas, in the city things slow down quite a bit, to maybe 55 fps or so, partly due to the character models not having any LOD on them. We decided to aim our low end target at 6600 range cards. When we tested with those cards though, we had to do another round of performance tweaks, as we'd get near the city and it would get unplayable. Now we've got it tweaked so that by limiting your clip range, adjusting your bias settings, using a 512x512 terrain clipmap (which is ugly btw), etc that a user can get about 50fps on those cards and 25 fps in the city. That's playable and acceptable. But it was a lot of work to get there and resulted in us only using using roughly 150 total trees in a 3km x 3km map.

Now that was using Atlas, where we had a lot of extra horsepower to deal with from the get go. Our maps are 3km x 3km use a 1.5 terrain square size. Now imagine if we had used megaterrains? Legacy would have never been large enough for our needs. A megaterrain that is much smaller than our map was giving 40-120 fps instead of 550 from the get go, on a decent system. We'd probably be at 20-30 fps on a good system, and completley unplayable, even after a lot of performance tweaks on the minimum targeted system.

I'd like to see some better looking terrain, that would be great. But it should be kept in mind when scrapping Atlas, that for Legacy to be realistically viable on larger maps, its going to need a serious optimization effort. So will GFX2, for that matter.
#134
01/13/2009 (2:44 am)
Quote:
Yeah...we just haven't quite back around to adding the map2dif source for TGEA to the SDK (it got removed internally when GG Studios stopped using Interiors early last year). I'll add it to the lower priority list.

Oh, I'm thinking of the new exporter, plus or whatever it's called, that is used in Constructor. I guess it probably won't happen, but one can dream. :)

The new TSShape stuff sounds interesting.
#135
01/13/2009 (6:23 am)
I really am disappointed about the decision to remove Atlas.
#136
01/13/2009 (6:37 am)
Quote:1. I would like to know if these Genre Kits would be part of Torque 3D or if it will be something in the line of separately bought?
Probably a bit of both. Talk in Brett's blogs have noted that some kits will be included while there are also others that we want to develop as the product continues.

Quote:2. Will T3D cost anything to upgrade from our current versions?
Yes. See Brett's latest two (huge) blogs about this in terms of Torque 3D.

Quote:3. How many Genre Kits will their be?
Not sure on the answer to this. Part of it depends on what is released in the engine during launch, the state of the genre kits documentation, and the amount of devtime spent on creating genre kits versus core engine development.
#137
01/13/2009 (7:19 am)
And how about leaving Atlas in place or submit it as a resource for those who want it also if nomore supported?


@Matt:
Quote:We might be able to address some of that but our sound guy (Tom Spilman) is *swamped* with Torque 3D so we'll have to wait and see.
about my...
Quote:Ok, I was meaning something like VMPlayer, giving the ablity to easily play, pause, stop, fade tracks, load and play Playlists, react to event call (for example the player entering a trigger area or the player die and the tracks currently playing fade into another track...) something like that :D

Robert Gemain, the author of VMPlayer resource said in a recent post
Quote:VMPlayer 2 is about 95% complete ... only works with the latest SFX code, which means currently it just works with TGEA 1.8 beta

so, maybe Tom Spilman can take a look at it to see if Robert work can be an appropriate candidate for a merging into T3D codebase?

Also these look interesting...

TGEA GroundCover with Surface check

Terrain fractal noise painting tool

Asset Change Notifications

New terrain material tools with parallax mapping

...
#138
01/13/2009 (7:52 am)
World Editor/Inspector-

Be able to hide/unhide objects or groups similar to Photoshops layers(with eye ball)
#139
01/13/2009 (7:57 am)
-A* Pathfinding. Keep it simple so as to cover as many cases as possible, I picture something like the current waypoint system, except you go around dropping these points and it automatically generates a grid and uses that for AI to navigate.
#140
01/13/2009 (8:17 am)
@Gareth: You might find this resource worth checking out: link. I've made some modifications to it so an AI can travel the nodes and clear connections for adjacencies that are not traversable and drop new nodes when it becomes stuck while getting to the first node of a path.

I left it walking for the night, and by the morning I had the best node map I could dream of. Allows saving of nodes, I was very satisfied with the resource. My modifications are not yet resource ready, but I can send you the related files if you want to take a look.