Jump to content
  • Advertisement
  • entries
    31
  • comments
    43
  • views
    61914

Artists Like the Dark

Sign in to follow this  
RSI

876 views

[size="3"] So I've spent a little while dimming the lights...

e_17a.jpg

I think it's a big improvement.

Working hard to bring procedurally generated compound leaf types. After that... occlusion shading. If you're wondering, the interface is MFC +C+. All common controls are sub classed for custom colors and bitmaps. The property grid (right) is a custom control, made by me. The color picker uses the XColorSpectrum control by Hans Dietrich. Thanks Hans.

Will post again when I have some shots of the new compound leaf nodes. The images above still use the single leaf type geometry.
Sign in to follow this  


3 Comments


Recommended Comments

I agree - the GUI looks really great. I haven't seen anyone use MFC for a nice looking GUI in a while... Would you be interested in throwing together a short description of how you did that? I know I would find it useful, and it is always hard to find a solution for building a native GUI app, so I assume other would like it too.

Just a suggestion, but it would be really great to hear more details!

Share this comment


Link to comment
Thanks for the nice words.

Honestly a lot of work went into getting MFC to do all of that. A short write up would take some time to prepare as there are so many different classes which make up the interface. I may release some of the more unique controls on my personal site at some point and then you can see how they work.

Essentially I use a Dialog based project. All panels are dialog controls with header controls (CWnd base). Background colors are set using something like:

[code]// Erase background - color dialog
BOOL Dialog_Control::OnEraseBkgnd(CDC* pDC)
{
CRect rect;

GetClientRect(&rect);

// Color background
CBrush brush(___painter_options.___color_base);
CBrush* last_brush_pointer = pDC->SelectObject(&brush);
BOOL bRes = pDC->PatBlt(0, 0, rect.Width(), rect.Height(), PATCOPY);

pDC->SelectObject(last_brush_pointer);

return bRes; // CDialog::OnEraseBkgnd(pDC);
}[/code]

First thing I do is draw what I want the interface to look like in Photoshop. Once I'm happy with the color scheme, layout, etc. I start coding it. There is a lot of information on creating owner drawn custom controls at [url="http://www.codeproject.com/KB/MFC/"]Code Project[/url].

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.

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!