Jump to content
  • Advertisement


This topic is now archived and is closed to further replies.


Rending multiple objects

This topic is 6255 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

I have many Objects like Buttons, Listboxes, ect that I want to render with DirectX(could be OpenGL or whatever). Different objects use different textures, Vertex Types, ect. If you render all of the objects w/ a certain texture, at one time, you won''t have to change the texture as often, but by doing this, you might have to change the Vertex Buffer many times. for example I have these Objects: Object1: VB1, Tex1 Object2: VB2, Color1 Object3: VB1, Tex2 Object4: VB1, Tex1 Object5: VB2, Color2 Now I could render them this way: SetTexture(tex1); SetVB(VB1); Draw(Object1); SetVB(VB2); SetColor(Color1) Draw(Object2); ... for every object ... SetVB(VB2); SetColor(Color2); Draw(Object5); this takes 10 changes Or I Could do it like this: SetVB(VB1); SetTexture(tex1); Draw(Object1); Draw(Object4); SetTexture(tex2); Draw(Object3); SetVB(VB2); SetColor(Color1); Draw(Object2); SetColor(Color2); Draw(Object5); this takes 6 changes Or I could do it like this: SetTexture(tex1); SetVB(VB1); Draw(Object1); Draw(Object4); SetTexture(tex2); SetVB(VB1); Draw(Object3); SetColor(Color1); SetVB(VB2); Draw(Object2); SetColor(Color2); SetVB(VB2); Draw(Object5); this takes 8 changes The Middle method works best in this situation, Is there an algo to determine which one is the fastest. If there is, is it fast enough to be completed in at least the time it saves by making the least number of changes. In other words, is it fast enough to help the fps? Hope You guys can help Thanx Tazzel3D ~ Zach

Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

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

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!