Can TORQUE handle 2500 2D sprites on a 3D terrain?
by Frederic66 · in General Discussion · 04/01/2004 (1:36 pm) · 11 replies
Dear Garage Games,
I am an aspiring Indie game developer. My dream is to design the battles of Marlborough (English general, 18th Century) in 3D.
I am looking for a suitable engine that could animate soldiers as 2D sprites on a 3D battlefield. The max number of sprites is 2500. Yes, that's two thousand and five hundred sprites.
The question is whether TORQUE would be able to handle such large numbers of 2D sprites.
I need the following:
**********************
*The engine should handle up to 2500 sprites on a 3D screen. See screenshot above for the feel that I am aiming for.
*2450 of them would be dumb sprites needing no AI calculations. All of the pathfinding and other AI routines would be executed by about 50 bots that would herd the rest of the sprites.
*I need moving camera control
*I need rain, snow and fog
*I need some 3D objects like huts and houses, but all of these would be static. No animations needed for 3D objects.
I do not care for the following
*********************************
*I do not need moving clouds. A sky box with static clouds is just fine.
* I do not need specular lighting or dynamic shadows
* In game AI is not needed. I would have to write my own anyway.
Would TORQUE be able to handle this task?
The main question is whether 2500 sprites (even though they are 2D sprites) would bring down the engine to its knees?
Since the 2D sprites have no intelligence at all (they contain just 2D figures that are being animated) could I get away with defining them as particles? After all a particle is nothing but a 2D sprite that is being animated!
I know that I have to do a fair bit of programming myself to make this fly. I am a fairly competent C++ programmer. I have a very talented 2D artist who would do the sprites for me. I am evaluating different engines for the job. The race is close between TORQUE and another commercial engine.
So the questions is:
*Would TORQUE be able to handle the job? Extra programming effort no problem, but does the engine have the oomp to handle such large numbers of 2D sprites?
Any other tips/viewpoints gratefully appreciated.
Best Regards,
Frederic66
I am an aspiring Indie game developer. My dream is to design the battles of Marlborough (English general, 18th Century) in 3D.
I am looking for a suitable engine that could animate soldiers as 2D sprites on a 3D battlefield. The max number of sprites is 2500. Yes, that's two thousand and five hundred sprites.
The question is whether TORQUE would be able to handle such large numbers of 2D sprites.
I need the following:
**********************
*The engine should handle up to 2500 sprites on a 3D screen. See screenshot above for the feel that I am aiming for.
*2450 of them would be dumb sprites needing no AI calculations. All of the pathfinding and other AI routines would be executed by about 50 bots that would herd the rest of the sprites.
*I need moving camera control
*I need rain, snow and fog
*I need some 3D objects like huts and houses, but all of these would be static. No animations needed for 3D objects.
I do not care for the following
*********************************
*I do not need moving clouds. A sky box with static clouds is just fine.
* I do not need specular lighting or dynamic shadows
* In game AI is not needed. I would have to write my own anyway.
Would TORQUE be able to handle this task?
The main question is whether 2500 sprites (even though they are 2D sprites) would bring down the engine to its knees?
Since the 2D sprites have no intelligence at all (they contain just 2D figures that are being animated) could I get away with defining them as particles? After all a particle is nothing but a 2D sprite that is being animated!
I know that I have to do a fair bit of programming myself to make this fly. I am a fairly competent C++ programmer. I have a very talented 2D artist who would do the sprites for me. I am evaluating different engines for the job. The race is close between TORQUE and another commercial engine.
So the questions is:
*Would TORQUE be able to handle the job? Extra programming effort no problem, but does the engine have the oomp to handle such large numbers of 2D sprites?
Any other tips/viewpoints gratefully appreciated.
Best Regards,
Frederic66
#3
04/01/2004 (2:40 pm)
A billboard is a 2d sprite that always faces the player.
#4
04/01/2004 (2:45 pm)
Yup, torque could handle this, it even has those animated clouds that you dont need :P
#5
04/01/2004 (2:51 pm)
2500 sprites is 5000 triangles. No modern 3d engine should have any problem doing this what-so-ever.
#6
*The engine should handle up to 2500 sprites on a 3D screen. See screenshot above for the feel that I am aiming for.
No problem, as long as they're not fill rate limited (i.e you try to redraw 2500 alpha blended sprites where each sprite occupies a large part of the screen).
*2450 of them would be dumb sprites needing no AI calculations. All of the pathfinding and other
AI routines would be executed by about 50 bots that would herd the rest of the sprites.
I see no problem here either. Sounds like you want some kinf od flocking behaviour. It's not in there by default as far as I know but there's plenty of papers written on the subject.
*I need moving camera control
In torque.
*I need rain, snow and fog
Already in there.
*I need some 3D objects like huts and houses, but all of these would be static. No animations needed for 3D objects.
Very much in there.
I do not care for the following
*********************************
*I do not need moving clouds. A sky box with static clouds is just fine.
You'll get them for free. They're in there.
* I do not need specular lighting or dynamic shadows
A specular light component is included in most local lighting algorithms.
* In game AI is not needed. I would have to write my own anyway.
As far as I know, ready made AI in torque is fairly non existant except for the very, very basics. So you're in luck.
As your game seems to be outdoors I'd say torque would be a perfect match for what you want. It's a very, very large codebase though so it will take you some time to learn. It seems like you would use many of torques features so it'd probably be worth it. You'd have to do at least some modifications to the C++ source. Word of caution, billboards, as I'm assuming you will use for your soldiers, are not very well suited to be seen from above at an angle unless the object they are showing is spherical.
*edit*
Spelling
04/01/2004 (2:54 pm)
Well torque wouldn't be the limit here. The limit would be on how a big portion of the screen these sprites would fill. I'm assuming they're small as you compare them to particles. In that case:*The engine should handle up to 2500 sprites on a 3D screen. See screenshot above for the feel that I am aiming for.
No problem, as long as they're not fill rate limited (i.e you try to redraw 2500 alpha blended sprites where each sprite occupies a large part of the screen).
*2450 of them would be dumb sprites needing no AI calculations. All of the pathfinding and other
AI routines would be executed by about 50 bots that would herd the rest of the sprites.
I see no problem here either. Sounds like you want some kinf od flocking behaviour. It's not in there by default as far as I know but there's plenty of papers written on the subject.
*I need moving camera control
In torque.
*I need rain, snow and fog
Already in there.
*I need some 3D objects like huts and houses, but all of these would be static. No animations needed for 3D objects.
Very much in there.
I do not care for the following
*********************************
*I do not need moving clouds. A sky box with static clouds is just fine.
You'll get them for free. They're in there.
* I do not need specular lighting or dynamic shadows
A specular light component is included in most local lighting algorithms.
* In game AI is not needed. I would have to write my own anyway.
As far as I know, ready made AI in torque is fairly non existant except for the very, very basics. So you're in luck.
As your game seems to be outdoors I'd say torque would be a perfect match for what you want. It's a very, very large codebase though so it will take you some time to learn. It seems like you would use many of torques features so it'd probably be worth it. You'd have to do at least some modifications to the C++ source. Word of caution, billboards, as I'm assuming you will use for your soldiers, are not very well suited to be seen from above at an angle unless the object they are showing is spherical.
*edit*
Spelling
#7
04/01/2004 (3:02 pm)
Hmm, one of my levels has 50k grass billboards, semi-animated, along with 2000 replicated 3d shapes. As long as I'm facing away from the main city, my fps is still 40+
#9
Good luck,
Frank
P.S. Make sure you post some screenshots later.
04/01/2004 (7:43 pm)
You could also use the old Doom trick for different angles. Doom used 8 different views for the sprites on the screen. With an engine like this you might even use more views. You could have the soldiers milling around and such. The hard part is calculating the direction of each soldier relative to the viewer. What about using very low detail 3D models for the soldiers. Use LOD so you can zoom in and get more detail? Definitely lots of options here. Could shaders help out here? Duplicate one soldier model many times? Is that something you can do with shaders? This could be really cool.Good luck,
Frank
P.S. Make sure you post some screenshots later.
#10
04/01/2004 (9:17 pm)
I would be very interested in seeing this, I have put over 300 interiors in one torque map before, you should be good :)
#11
04/02/2004 (8:09 am)
Be sure to batch your renders, though. To change texture before every render call is to invite a low framerate...
Associate Craig Fortune