Jump to content
  • Advertisement
Sign in to follow this  
adam17

Large environment rendering and texturing

This topic is 4833 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

im trying to model St. Peter's square at the basilica in 3d studio but before i start i have a few questions. the square is a HUGE place. its around 1100 feet wide by probably 2000 feet from the opening to the basilica. im already planning on using LOD to help ease the rendering of all of the columns and statues lining the area. the part im having difficulty with is building the ground. how can i build and render it without having to use giant textures (30000x30000 to get anything nice on one quad). i thought about using maybe 12 quads (3x4) to do the ground and dividing the overall texture. i dont want to do procedural texturing, theres too much detail. heh i dont even know how to do procedural texturing yet. any ideas or suggestions? keep in mind this whole area will be visibly rendered without fog helping lower the poly count

Share this post


Link to post
Share on other sites
Advertisement
Yes, you need to cut the texture needs down to 2048x2048 textures each to be able to run on reasonable hardware.

If you're using DXT1 compressed textures, a 2048x2048 takes 2 MB, so if you need 100 of those (10x10 tiles), you'll be using 200 MB of texture memory. Better make sure you have a card that can take it.

You could manually calculate the viewing angle, and upload smaller versions of the texture (say, 256x256) for the further-away tiles, and hope that texture memory management works well enough in the drivers.

For geometry LOD, I'd suggest looking into impostors, as you only need to model one level of detail, and the "LOD" is then constructed as-needed, procedurally.

Share this post


Link to post
Share on other sites
ive been thinking about it a little bit more and im wondering if this would work. what if i load the high res textures on the fly. for example you only see some of the 2048x2048 textures that are nearby. the other textures arent even sitting in video memory. maybe the furthest textures might not even be in memory at all. would that be too inefficient?

im sure its going to make a big difference but this will be first person so perspective could let me cheat on the textures alot

Share this post


Link to post
Share on other sites
i just thought i would update.

instead of using a textured quad which will take up tons of memory, i just went ahead and modelled the different colors of the square in 3ds. it a few more polys but nothing thats going to stress the system

Share this post


Link to post
Share on other sites
Well, the only reason personally I can forsee using those huge of textures is just to approximate photo-realism, which, you're gonna have to cut down on if you're attempting a realtime render. If you're wanting to make a demo movie or just a few shots, though, I wouldn't worry so much about it, and go with your larger textures. (Note: 30000x30000 is completely unreasonable, period. 24-bit colors puts that image at 20 gigabytes without compression.)

Mipmapping is also something to look at, like the previous poster was getting at. It gets blurrier as you get further from the camera, but your hardware will love you for it.

I suggest getting your model done, and trying it out a few different ways just to see what your hardware can push. Don't worry so much about the poly count for now, but this doesn't give you the freedom to go nuts either ;). Later, you can use sanity techniques like view culling and such to cut down the requirements, but performance is almost always the last thing I worry about in any project; you can always make code faster, but premature optimization and not coding something you needed to have is time wasted.

Share this post


Link to post
Share on other sites
im going to implement mipmapping (im not completely sure if this is the same as LOD but for textures). since the entire plaza is made of cobblestones, im just going to put a 512x512 decal and normal maps on it and tile the hell out of it. if im feeling really gutsy ill make it procedural.

as for the poly LOD im not even half way done with the model and im already sitting at 131000 polys. where should i look for LOD algorithms or would it be easier to understand/implement if i made like 3 different densities of meshes and rendered them according to the player's distance?

btw 30000x30000 is inconceivable i know that. most vid cards can only support up to 4096x4096 :)

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!