Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

163 Neutral

About CipherCraft

  • Rank
  1. Hey, I use C# for several tools but I'd like to find a library of controls that has done the tedious work of creating those controls for me. I know about Qt, which I'm still investigating after my experience with it four years back and in C++; I really didn't care for the pre-compile step and messing with the readability of my code. How's Qt for C# apps? Anybody got any experience with that? Also, are there any other good libs out there for C#? I'm looking for a batch of controls like: curve manipulators, time line controls, etc. tia, CipherCraft PS Yes, I've Googled but I can only find a massive ammout of 'tutorials' on creating user controls, and references to PlusSuite and that is just not what I'm looking for.
  2. CipherCraft

    Perforce workflow

    Quote:Original post by Buster2000 Only check out a file when you absolutly need to change it not because you think you are going to need it. Actually, you can check out as much as you like. You can always 'revert unchanged files' before you submit your change list. For example, when checking out a C# form in DevStudio, it checks out the designer and resx files as well. If you don't change the design you can safely revert them, since they are unchanged. Only exception are binary files which are locked to other users by default. You have to be careful with those. hth, CipherCraft
  3. Quote:Original post by grill8 1)Avoid stl containers completely and write ones own. 2)provide custom allocator(s) for stl (such as a memory manager). Avoid writing your own containers from scratch. If your profiling shows that memory de-/allocation is the issue, try writing your own allocators. Or read 'Modern C++ Design'. Some libraries allocate a big chunk of memory at the start and use that as their memory pool. Be careful with fragmentation and leaks though. hth, CipherCraft
  4. CipherCraft

    [.net] .Net HTML rendering engine

    Maybe use WebKit? Google's Chrome does. I don't think they have a C# port yet, so you might have something to contribute to the community. Other than that, I second Codeka in that writing up your own rendering engine will take you some years to do on your own; if you manage to do it at all. [wink] hth, CipherCraft
  5. CipherCraft

    Negative(!) RGB to HSV conversion

    Quote:Original post by LeGreg A negative color component does not make sense. It represents an intensity (brightness), so it can only go from 0 to +infinity. I know it does not make sense. Each color is part of a colorization system where each color is added to make up one final color that will be used by the shader. So a negative value means that that particular colors share will be substracted from the final result instead of added. I hope it makes more sense now. [wink] CipherCraft
  6. CipherCraft

    Negative(!) RGB to HSV conversion

    Right. After conferring with several colleagues and Google I've reached the following conclusion: some RGB values cannot be expressed as HSV values. For instance, if G were negative and R and B both above 1, what would the corresponding HSV values look like? The hue is an angle on a color circle, so negative values do not exist or make sense there. Which of the RGB values adds to the saturation, and how can I reconvert back to the right RGB values after that? I've 'solved' it by only allowing RGB changes when they remain between zero and one. If changing the HSV values makes them fall out of that range, I disable the controls for RGB. All this just for prosperity, CipherCraft
  7. CipherCraft

    Negative(!) RGB to HSV conversion

    Hmmmm... A tricky problem? Or am I missing a very obvious solution? I'll post my code; maybe that will trigger something: /// <summary> /// Recalculate HSV values from the current RGB values. /// </summary> private void RGBtoHSV() { // Hue will be a value between 0 and 360, and // saturation and value are between 0 and 1. float hue = 0.0f; float saturation = 0.0f; float min = Math.Min(Math.Min(mRed, mGreen), mBlue); float max = Math.Max(Math.Max(mRed, mGreen), mBlue); float range = max - min; if (max != 0.0f && range != 0.0f) { saturation = range / max; if (mRed == max) // Between Yellow and Magenta. hue = (mGreen - mBlue) / range; else if (mGreen == max) // Between Cyan and Yellow. hue = 2.0f + (mBlue - mRed) / range; else // Between Magenta and Cyan. hue = 4.0f + (mRed - mGreen) / range; } else { // saturation = 0, value = undefined. saturation = 0.0f; hue = 0.0f; } // Scale hue to be between 0 and 360. // This may require adding 360, if the value is negative. hue *= 60.0f; while (hue < 0.0f) hue += 360.0f; // Set final values. mHue = hue / 360.0f; mSaturation = saturation; mValue = max; } It's the usual bit of code for this conversion, nothing fancy. I just need to know how to convert negative RGB values into sane HSV components. If you have any knowledge about colour theory, please help me out. tia, CipherCraft
  8. Hey, I'm building a tool so our artists can edit the colorization filters in game. They also want to overload or reduce the color values by giving them values below zero and above one... Now I've been able to cope with nearly every conversion problem resulting from that by creating a class that can stand the 'weird' values but still gives the GUI some useful color value. The only problem left is, when that class contains some negative RGB values, how to calculate the corresponding HSV values. The HSV-to-RGB way is fairly straightforward: after regular conversion you add the excess of the V component to each of the RGB components. But the other way around has got me stumped. [sad] Can anyone help me? It requires some out of the box thinking which currently goes beyond my comprehension. tia, CipherCraft
  9. CipherCraft

    [C++] Headers, namespaces, friends?

    Did you add the class A; before the namespace, or have you tried this? //Header "B.h" #ifndef B_H #define B_H namespace ns { // Forward declare class A; class B { A* a; }; } #endif Oh, and namespaces do not need a semi-colon after the closing parenthesis. hth, CipherCraft
  10. CipherCraft

    Siggraph '08 blog

    Some colleagues of mine that went to Siggraph this year, made an effort to maintain a blog that's actually fun to read. In between talk reviews they describe their adventures in LA. Laugh and learn. [wink] CipherCraft
  11. CipherCraft

    Best/Classic "one-liner" from hit titles...

    Quote:Original post by denver Monkey Island 1-3 'nuff said. Yeah! "How much wood would a woodchuck chuck if a woodchuck could chuck wood?" etc. etc. etc.
  12. CipherCraft

    Your 5 Favorite Movies of All Time

    1) Alien 2) Aliens 3) Jacobs ladder 4) Priscilla: queen of the desert 5) The Deerhunter Although 2 and 3 may be switched around. And I'm probably forgetting a few good ones atm. Cheers, CipherCraft
  13. CipherCraft

    Brainstorming names for a sci-fi game

    I've lost the most interesting link somewhere down the line. It was a site that let you specify the way names/words should sound, using some form of grammar I believe, and then they would generate names according to your specs. But, again, I've lost that link. [sad] CipherCraft
  14. CipherCraft

    Brainstorming names for a sci-fi game

    Plants Oh, and btw: [google] hth, CipherCraft
  15. CipherCraft

    Brainstorming names for a sci-fi game

    Try one of these two generators. [wink] hth, CipherCraft
  • 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!