Render just visible parts ?

Started by
4 comments, last by HenriqueRocha 11 years, 10 months ago
Hello everyone ! my name is Andrei and im kinda new to DirectX

Im trying to develop a simple 2D game and im just wondering ... if i have let's say a big map 1024x1024 that's not shown as whole ... let's say that on the screen appears just a 500x500 frame ...is directx rendering all the map with all things on it and show just a part or it's rendering just the shown by camera part ? if it's rendering the whole thing... how to make it render what i need.. how to optimize it ?;D


Ty in advance :D
Advertisement
By 1024x1024 you mean tiles, right? You didn't provide much info...
forget it i just wanted to say if i have a big map... that i don't see all ... it's rendered all or just visible parts ? ;D
What you are talking about is clipping. DirectX has clipping enabled by default so if you don't disable it yourself, it does that.

http://en.wikipedia.org/wiki/Clipping_%28computer_graphics%29
[size=2]Ruby on Rails, ASP.NET MVC, jQuery and everything else web.. now also trying my hand on games.
Clipping occurs in DirectX after the view transform.
So the World*View will still be computed for all the vertices in the scene, even if they will eventually be clipped.
In order to further optimize this you need some sort of spatial partitioning.
Since you have a 2D game here, a simple distance function from the camera could be used to reject objects from being rendered.
If you want you could use a grid for to split your scene into multiple areas and only render objects inside the viewable grid locations. This assumes that each grid cell is composed out of multiple objects.
I think you need something like "frustum culling"...

This topic is closed to new replies.

Advertisement