mdoyle
11-14-2005, 09:35 AM
Ok folks.
Here is the stress test. I forgot to put it up a before as I have been quite busy. This is by far no means the best stress test for shockwave 3d as there are a few things missing and its perhaps not the most user friendly but it does the job I need it to do for a rough benchmark results and perhaps u lot can find use for it too.
Here is a wee explanation on how to use it, and what it does. The fps is frame based so it will speed up and slow down depending where you are looking but it was to try and get a more accurate fpr. THe controls are WASD for walking and u can move the mouse to look around. PLease allow the mouse extra to install if you don't have it already installed. By left clicking the mouse your view will change to a full outside view so all objects can be seen and rendered by the camera. By clicking this it just toggles back and forward.
First of all to start the base world is of about 3170 polys and a couple of textures but as you can see these are listed at the bottom already. There is physics applied across 2278 polygons for the floor, walls and pillars (concave). THis is where the stress test is not the best as I can't change what kind of physics or across which objects. But as a rule of thumb I normally put as little physics as possible anyway for speed and usuability
Keys
WASD + mouse Walk/look about the world
Left click Change camera view
Alt F4 Quit from the world.
F Will reset the frame rate quickly to its current rate without having to wait for it to balance.
Model 01
By pressing (m) on the keyboard it imports a shpere of 980 polys. By continuing to press it will import up to 100 of these spheres. By pressing shfit+m (M) it will take away the last sphere you imported.
Textures
By pressing (y) you will import a new texture (512x512) onto all of the current Model 01's. If you press (y) again it will import another texture and apply it to 50% of current model 01s. So half will have texture 1 and half will have texture 2. By pressin (y) this will continually add a new texture and split it evenly over the Model 01's (up to 100 textures)
Model 02
This will work like model 01 but instead it imports a sphere with a quarter segment cut out of it. This was to test the difference of double sidedness etc. It was also the model I decided to test alpha maps on as it was easier than trying to get it working with model 01. So again by using the keys (j/J) you will add take away one of these models. By pressing (l/L) it will toggle double sided on these objects.
Model 03
This is the same as model 02 except that it is really double sided with actual geometry. Again you add and remove the models in the same way.
Between model 02 and 03 you can only have up to 95 of these models together. So you can have either all real double sided or not or an in between. For coding purposes or just to get it done quickly the (L) and the (J) button does the same job. It just removes the last one of these models which was imported. So it could either be model 02 or model 03 if that makes sense.
I kind of decided myself that I would normally have not much more than 10 alpha maps in a world in one area. Whether that would be plants or fences etc. So the textures in this area will add an alpha map across the models (02/03) in the same way the textures were added for model 01. There are only up to 10 alpha maps which can be used here.
TV Screens.
This was to test how much animated texture maps takes from a machine. Again use (z/Z) keys to add remove screens. THere is a maximum of 10 screens here. They are static textures on them when you first load them.
Cached and non cached textures
This is basically adds animated textures to the TV screens in either a cached format or kind of streaming format. This works in teh same fashion as the model 02/03 idea. ie u can have both types but the (X or C) just removes the last one added.
Render format.
It changes how it is rendered.
Render Type
WIll toggle between direct x and open gl etc
Characters.
This imports up to a maximum of 8 characters. The characters have the same mesh and texture map but there is a total of 3 different animations. So for example if all 8 characters where imported then the 3 animations would be split between them.
Shadow maps
I didn't have time to create proper shadow maps across the place. So i just used a basica number map which is coded and works like shadow maps. The shadows are applied across Model 01. By pressing (b) it will just split 10 shadow maps across the current number of model 01's you have.
At the very bottom is the amount of polys and textures currently in the world.
Oh and I almost forgot the link. Here it is
http://www.junction-18.com/ldbstresstest/
Just wanted to say its not the most accurate and I will probably change a few things in the future when I realise I am adding things in the world which are not stress tested in this. If its of any use and people are looking for small additions or anyways to make it easier to use or better ideas let me know and will get a new one done.
Cheers
M
Here is the stress test. I forgot to put it up a before as I have been quite busy. This is by far no means the best stress test for shockwave 3d as there are a few things missing and its perhaps not the most user friendly but it does the job I need it to do for a rough benchmark results and perhaps u lot can find use for it too.
Here is a wee explanation on how to use it, and what it does. The fps is frame based so it will speed up and slow down depending where you are looking but it was to try and get a more accurate fpr. THe controls are WASD for walking and u can move the mouse to look around. PLease allow the mouse extra to install if you don't have it already installed. By left clicking the mouse your view will change to a full outside view so all objects can be seen and rendered by the camera. By clicking this it just toggles back and forward.
First of all to start the base world is of about 3170 polys and a couple of textures but as you can see these are listed at the bottom already. There is physics applied across 2278 polygons for the floor, walls and pillars (concave). THis is where the stress test is not the best as I can't change what kind of physics or across which objects. But as a rule of thumb I normally put as little physics as possible anyway for speed and usuability
Keys
WASD + mouse Walk/look about the world
Left click Change camera view
Alt F4 Quit from the world.
F Will reset the frame rate quickly to its current rate without having to wait for it to balance.
Model 01
By pressing (m) on the keyboard it imports a shpere of 980 polys. By continuing to press it will import up to 100 of these spheres. By pressing shfit+m (M) it will take away the last sphere you imported.
Textures
By pressing (y) you will import a new texture (512x512) onto all of the current Model 01's. If you press (y) again it will import another texture and apply it to 50% of current model 01s. So half will have texture 1 and half will have texture 2. By pressin (y) this will continually add a new texture and split it evenly over the Model 01's (up to 100 textures)
Model 02
This will work like model 01 but instead it imports a sphere with a quarter segment cut out of it. This was to test the difference of double sidedness etc. It was also the model I decided to test alpha maps on as it was easier than trying to get it working with model 01. So again by using the keys (j/J) you will add take away one of these models. By pressing (l/L) it will toggle double sided on these objects.
Model 03
This is the same as model 02 except that it is really double sided with actual geometry. Again you add and remove the models in the same way.
Between model 02 and 03 you can only have up to 95 of these models together. So you can have either all real double sided or not or an in between. For coding purposes or just to get it done quickly the (L) and the (J) button does the same job. It just removes the last one of these models which was imported. So it could either be model 02 or model 03 if that makes sense.
I kind of decided myself that I would normally have not much more than 10 alpha maps in a world in one area. Whether that would be plants or fences etc. So the textures in this area will add an alpha map across the models (02/03) in the same way the textures were added for model 01. There are only up to 10 alpha maps which can be used here.
TV Screens.
This was to test how much animated texture maps takes from a machine. Again use (z/Z) keys to add remove screens. THere is a maximum of 10 screens here. They are static textures on them when you first load them.
Cached and non cached textures
This is basically adds animated textures to the TV screens in either a cached format or kind of streaming format. This works in teh same fashion as the model 02/03 idea. ie u can have both types but the (X or C) just removes the last one added.
Render format.
It changes how it is rendered.
Render Type
WIll toggle between direct x and open gl etc
Characters.
This imports up to a maximum of 8 characters. The characters have the same mesh and texture map but there is a total of 3 different animations. So for example if all 8 characters where imported then the 3 animations would be split between them.
Shadow maps
I didn't have time to create proper shadow maps across the place. So i just used a basica number map which is coded and works like shadow maps. The shadows are applied across Model 01. By pressing (b) it will just split 10 shadow maps across the current number of model 01's you have.
At the very bottom is the amount of polys and textures currently in the world.
Oh and I almost forgot the link. Here it is
http://www.junction-18.com/ldbstresstest/
Just wanted to say its not the most accurate and I will probably change a few things in the future when I realise I am adding things in the world which are not stress tested in this. If its of any use and people are looking for small additions or anyways to make it easier to use or better ideas let me know and will get a new one done.
Cheers
M