More Constuction with Constructor
by Steve Acaster · 10/24/2008 (9:31 am) · 7 comments
Up to my eyeballs in antibiotics and codine for the last two weeks courtesy of the sinus infection from beyond Hell, I've actually made a fair decent bit of progress.
Texturing, using the facades, a technique swiped from all of those old Westerns were the buildings were only wooden fronts to hide the skyline of LA as seen from the backlot of the movie studio. It's a good way to get detail without using excessive amounts of polygons, faking the little extras of reality, which is what virtual reality is anyhow.
Not real windows, normal mapped facades
So my idea of one huge BSP model with >9000 surfaces seems to have paid off. It fogs nicely, it culls well, there's no need for LODing every building because the whole thing is 1600 metres wide.
Big levels, we like biiiiiig levels
It was also a good learning exercise, it might not win any prizes for best thought out BSP geometry, but it all works, and it gives good performance. And my interior zoning works nicely.
The untexured church is actually the only seperate model here
A few (5 to be pedantic) brickwork textures with built in doors and windows add a sense of depth (thank the Great Magnet for normal and specular mapping), and the whole thing plays across 4 levels of height. So there can be plenty of running in Z aswell as the usual XY. I like hills, hills break up the monotony of being on the XY plane.
Throw in a few models and it'll look more like an environment
Still lots to sort out, think I've come up with a way to get road textures to go around corners without looking too bad (curse the straightness of BSP), roof tiles, exterior walls - and of course it's a bit barren without urban models like lamposts, mail boxes, dust bins, etc.
Trees models and wood facades help breakup the skyline
I've thrown in a few trees in the distance, just to break things up in the landscape. The furthest groups are facades, nearer ones individual models, all LODed and thrown in as a ShapeReplicator batch for performance.
I've had a quick play through as an urban shooter, and it's sure difficult to pick out snipers at 400m when all you can hear is the bullet going past. Watch for the flashes is the key. Though when I turn it into a working level (level 1! The actually beginning of a game!) there won't be any scrapping, just story/plot events. It's called build-up. However I might use it as a basis for another play through demo of my AI.
Vista, of a type that doesn't need constant patching.....
I also seems to have turned halfway to being 70, which I guess is officially middle age. I don't remember all of that time going by and demand a recount!
Texturing, using the facades, a technique swiped from all of those old Westerns were the buildings were only wooden fronts to hide the skyline of LA as seen from the backlot of the movie studio. It's a good way to get detail without using excessive amounts of polygons, faking the little extras of reality, which is what virtual reality is anyhow.
Not real windows, normal mapped facadesSo my idea of one huge BSP model with >9000 surfaces seems to have paid off. It fogs nicely, it culls well, there's no need for LODing every building because the whole thing is 1600 metres wide.
Big levels, we like biiiiiig levelsIt was also a good learning exercise, it might not win any prizes for best thought out BSP geometry, but it all works, and it gives good performance. And my interior zoning works nicely.
The untexured church is actually the only seperate model hereA few (5 to be pedantic) brickwork textures with built in doors and windows add a sense of depth (thank the Great Magnet for normal and specular mapping), and the whole thing plays across 4 levels of height. So there can be plenty of running in Z aswell as the usual XY. I like hills, hills break up the monotony of being on the XY plane.
Throw in a few models and it'll look more like an environmentStill lots to sort out, think I've come up with a way to get road textures to go around corners without looking too bad (curse the straightness of BSP), roof tiles, exterior walls - and of course it's a bit barren without urban models like lamposts, mail boxes, dust bins, etc.
Trees models and wood facades help breakup the skylineI've thrown in a few trees in the distance, just to break things up in the landscape. The furthest groups are facades, nearer ones individual models, all LODed and thrown in as a ShapeReplicator batch for performance.
I've had a quick play through as an urban shooter, and it's sure difficult to pick out snipers at 400m when all you can hear is the bullet going past. Watch for the flashes is the key. Though when I turn it into a working level (level 1! The actually beginning of a game!) there won't be any scrapping, just story/plot events. It's called build-up. However I might use it as a basis for another play through demo of my AI.
Vista, of a type that doesn't need constant patching.....I also seems to have turned halfway to being 70, which I guess is officially middle age. I don't remember all of that time going by and demand a recount!
About the author
One Bloke ... In His Bedroom ... Trying To Make Computer Games ... eventually ...
Recent Blogs
• Stylized Art Style is ... er ... Stylized, Plus Other Stuff• ChinaTown Ai Deathmatch Resource Plus Function Creep
• ChinaTown Multi AI DeathMatch With Recast Pathfinding Part 3
• ChinaTown Ai Deathmatch with Recast Pathfinding Part TWO
• ChinaTown Ai Deathmatch with Recast Pathfinding Part ONE
#2
Also, in large levels like this, I like to have a taller building (i.e. water tower, church building, etc.) for the player to use as a point of reference when running through the level. Helps avoid getting lost and having to run through the whole map trying to figure out which part of the map you missed to get those last two guys. Just a thought.
What kind of fps are you getting on that last shot?
Keep up the great work! Love watching your progress on this.
10/24/2008 (10:07 am)
This looks great steve. The sky looks a little stretched out. And as you mentioned, having some trash cans, stop signs/lights, scattered trash, parked cars, a.c. vent on top of buildings, etc. will really help with the atmosphere. Also, in large levels like this, I like to have a taller building (i.e. water tower, church building, etc.) for the player to use as a point of reference when running through the level. Helps avoid getting lost and having to run through the whole map trying to figure out which part of the map you missed to get those last two guys. Just a thought.
What kind of fps are you getting on that last shot?
Keep up the great work! Love watching your progress on this.
#3
168 fps on the last shot (with older video nvidia drivers) 175.19, and 150 fps with the new 178.24 drivers, both at 1280x768.
Average fps with the new drivers is 190, or at 1680x1050 (my max resolution which I can't read text at) it's 120fps.
I find older drivers give better performance on my old Nvidia7900 card (usually over 220fps on average game play).
At least the fps leaves plenty of space for more stuff.
The sky is just a test I did to see whether you can paint a skybox by hand and get rid of the seams -without any automated program, just by hand and eye - and you can!
10/24/2008 (1:25 pm)
@JB168 fps on the last shot (with older video nvidia drivers) 175.19, and 150 fps with the new 178.24 drivers, both at 1280x768.
Average fps with the new drivers is 190, or at 1680x1050 (my max resolution which I can't read text at) it's 120fps.
I find older drivers give better performance on my old Nvidia7900 card (usually over 220fps on average game play).
At least the fps leaves plenty of space for more stuff.
The sky is just a test I did to see whether you can paint a skybox by hand and get rid of the seams -without any automated program, just by hand and eye - and you can!
#4
10/25/2008 (5:20 am)
Wow! Great work! Getting the terrain to match the contours of the roads without pulling my hair out is something that would take me so long to do.....or is the terrain part of the BSP, and not Torque's terrain engine?
#5
After inserting the bsp town into the world I had to find the heights of the four main vertical road levels (using set height and typing in numbers until it matched the base of the kerb, then push down any bits that broke through the road surface). The awkward bit was aligning the slopes, had to go down to size 1 brush and pull up by hand/eye, then sort the edges of that out or they'd be sharp triangles in the terrain.
For roads without pavements I built it a bit like a pyramid, so they had steep sloping sides, and then put the texture height as close to the road surface as possible. With a sloping side it looks better than it you just had a road surface with a hard kerb face to step up.
It's all a bit hit-and-miss, but with tweaking you can get it to look pretty good.
10/25/2008 (7:59 am)
@BryceAfter inserting the bsp town into the world I had to find the heights of the four main vertical road levels (using set height and typing in numbers until it matched the base of the kerb, then push down any bits that broke through the road surface). The awkward bit was aligning the slopes, had to go down to size 1 brush and pull up by hand/eye, then sort the edges of that out or they'd be sharp triangles in the terrain.
For roads without pavements I built it a bit like a pyramid, so they had steep sloping sides, and then put the texture height as close to the road surface as possible. With a sloping side it looks better than it you just had a road surface with a hard kerb face to step up.
It's all a bit hit-and-miss, but with tweaking you can get it to look pretty good.
#6
I know your skybox by hand trick. I've seen some very nice but overdone skies before and can't help but think that they look too good. Sometimes a simple hand drawn painting with some moving cloud layers, some fog, and the right lighting add more to a scene than a photo realistically rendered skybox. Keep up the good work.
10/26/2008 (10:51 am)
I like seeing how your project is going Steve, your explanations and reasoning gives a lot to think about. You're doing well and it sounds like you don't let much stand in the way of your focus. I can't wait to see how well it looks once you start adding the signs of life to the map. With the framerates you're getting I would imagine you could cram in all kinds of extra detail to help add to the overall immersion, or are you wanting to leave some room for AI and other game mechanics?I know your skybox by hand trick. I've seen some very nice but overdone skies before and can't help but think that they look too good. Sometimes a simple hand drawn painting with some moving cloud layers, some fog, and the right lighting add more to a scene than a photo realistically rendered skybox. Keep up the good work.
#7
I've had a little test with my old AI scripts and they don't make have much of an impact on performance which is good.
Other game mechanics in mind will mostly be trigggerable events, which again don't tend to hit performance. Though I have considered dynamic wheelie bins. Allowing the player to pushing a big metal one around as cover might be funny!
I'm pretty focused, apart from playing Far Cry 2 incessantly for the last 3 days! It's nice, but a bit of a missed opportunity, whilst travelling from one objective to another there's nothing to do but shooty-shooty, it could all have been a bit more cerebral --- but then the console clientele probably prefer shooty-shooty to cerebral.
edit: dang typos!
10/27/2008 (8:21 am)
are you wanting to leave some room for AI and other game mechanics?I've had a little test with my old AI scripts and they don't make have much of an impact on performance which is good.
Other game mechanics in mind will mostly be trigggerable events, which again don't tend to hit performance. Though I have considered dynamic wheelie bins. Allowing the player to pushing a big metal one around as cover might be funny!
I'm pretty focused, apart from playing Far Cry 2 incessantly for the last 3 days! It's nice, but a bit of a missed opportunity, whilst travelling from one objective to another there's nothing to do but shooty-shooty, it could all have been a bit more cerebral --- but then the console clientele probably prefer shooty-shooty to cerebral.
edit: dang typos!
Associate Steve Acaster
[YorkshireRifles]