Jump to content
  • Advertisement
Sign in to follow this  
Servant of the Lord

DX12 (sweet!) New Vulkan features just released!

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

Advertisement

I was about to report this to moderators so they could move it to a better suited forum. Shame on you!

Share this post


Link to post
Share on other sites
Well...

Everybody knows that the fixed function pipeline performs better than using any modern graphics programming techniques, especially when you OOP the !@#$ out of your design. Drawing a set of quads? That’ll be 350 system calls per quad, please.

Share this post


Link to post
Share on other sites

That's some seriously cutting edge stuff.  Given the naming semantics, they're obviously using a stack (or several), and everyone knows doing stuff on the stack is faster.

Share this post


Link to post
Share on other sites

I hope this is a joke, since this remembers my bad ol' days when i started OpenGL 1... :unsure:  Damn fixed function pipeline!!! :angry:

Share this post


Link to post
Share on other sites
void FillRect(float x1, float y1, float x2, float y2, unsigned color)
{
   float r = (color >> 24 & 0xFF) / 255.0f;
   float g = (color >> 16 & 0xFF) / 255.0f;
   float b = (color >> 8 & 0xFF) / 255.0f;
   float a = (color & 0xFF) / 255.0f;
   
   vkBegin();
   vkPushMatrix(VK_MODELVIEW);
   vkPushColor4f(r, g, b, a, nullptr);
   vkPushVertex3f(x1, y1, 0.0f, nullptr);
   vkPushVertex3f(x1, y2, 0.0f, nullptr);
   vkPushVertex3f(x2, y2, 0.0f, nullptr);
   vkPushVertex3f(x1, y1, 0.0f, nullptr);
   vkPushVertex3f(x2, y2, 0.0f, nullptr);
   vkPushVertex3f(x2, y1, 0.0f, nullptr);
   vkPopMatrix();
   vkEnd(AMD_extension_optimize_for_specific_driver_version_223242114a);
}

For the record, while immediate mode is indeed slow by today's standards =P I wonder how much performance was lost in OpenGL simply by developers insisting on taking control over everything. To me it was pretty obvious the idea was for the driver to figure out the best way to do things (not as hard as it sounds since the driver is specific to the hardware in question anyway, so it can safely make lots of assumptions), but bad implementations certainly hampered that as well =/ Sucks since the driver is the one that knows best, especially on platforms without fixed hardware specs (PCs, anyone?).

Edited by Sik_the_hedgehog

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!