Jump to content
  • Advertisement
Sign in to follow this  
  • entries
  • comments
  • views

Finished the texture browser control

Sign in to follow this  


I have been very busy with work lately, but I have been doing some great work on the book. Aside from finishing some other topics, I finally had the chance to revisit my texture browser control and finish it off. Here are the latest changes:

Ported it to .NET 2.0
Restructured the architecture and internal design
Improved the loader interface to support streaming
Implemented an awesome caching mechanism
Allow for images to come from the file system, bitmap objects, or raw binary data
Implemented the ability to switch between loaders at runtime
Improved the user input and resizing control, implemented multi-selection

It has a pluggable loader interface, but the example for the book comes with two versions: Native GDI+ and Managed Direct3D. GDI+ is obvious, as it just uses System.Drawing and System.Drawing.Imaging. But the Direct3D one is quite clever. It creates a reference device using the window handle of the texture browser control and uses that to load textures like DDS, DXT, etc.. Afterwards the device can be disposed of if wanted. Being a reference device, hardly any resources are consumed by Managed Direct3D and there is no real performance difference between the GDI+ version and the Managed Direct3D version.

Finally, here is a screenshot to whet your appetite!

Sign in to follow this  


Recommended Comments

Looks very nice. I'm currious, I've heard mention of the book you've been writing for a while now. Obviously it has to do with graphics programming, or creating tools and such, but what exactly is it, who's your publisher?

Share this comment

Link to comment
Guest Anonymous Poster


it isn't fair, the sexiness is just too much!

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 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!