Advertisement

C# and VC++ 6.0

Started by November 22, 2004 06:22 PM
6 comments, last by DalTXColtsFan 20 years ago
Any longtime VC++/MFC 6.0 programmers experiment with "making the switch" to C#, whether it pertains to OpenGL or not? Whaday'all think about the marketability for programmers who don't have .NET? Is it really necessary to "make the switch" to make yourself more marketable? Comments appreciated!
C# is definitly my language of choice for any new project I'm starting. No question about that. Although yes, the current JIT is a little immature, and sometimes produces a remarkably slow program, I have actually managed to write one program (a maths-heavy ray-tracer) that was noticably faster than an exact port I made to C++.

as for comparing MFC to .net forms, well, there isn't really a comparison. Personally I dispise MFC, where .net forms on the other hand are a triumph of design, thowing swing out a 6th story window in the process.

The program I mentioned above, the ray-tracer, the C++ used MFC and by god getting that to work was a trial compared to using forms.

You will find that there is more .net development occuring than java today. If you go to a tech job website, and look in the programming section, it's surprising to see just how many jobs are asking for .net experience.

And think about it, when longhorn finally gets here, .net will effectivly be in some ways the only choice (not that this is a bad thing!) - come to think of it by god I hope some idiot doesn't realise this and start another bloody anti-trust saga...

As for using .net with OpenGL, I have yet to do this. There are many wrappers out there though, and DirectX intergrates very nicly indeed into .net, which is a bonus as D3D is more mature than GL.

Also don't forget the likes of .net compact. :)

it's all good.

I'd suggest anyone interested try out #develop. Free C# ide that is pretty similar to VS.net 2002.
Advertisement
Is it possible to have Unmediated access to the OpenGL libraries in C#? I see a lot of wrappers out there, and I resent them, much as I resented GLUT for its limitations.
Thanks for the link RipTorn... I have been considering attempting C# for a while now, after playing around with SharpDevelop for about an hour I was really surprised.

Any suggestions on making the move from C++ to C#?

:)
I don't know why you'd 'resent' someone providing access to a library in your language of choice... Actually, I do, you don't want extraneous crap and changes on top of said library. Unfortunately, the only reasonable way to provide access to native libraries like GL is to P/Invoke, this does indeed add overhead, though I'd argue it's quite minimal. Having worked on both CsGL and now Tao.OpenGl, I can say Tao is about as close as you can get to GL using .NET, all the calls are exactly the same as you'd have if you're using C, with the exception of needing to prefix a static class name, e.g. Gl.glFoo rather than glFoo. Surely you can live with such a convention. The point of Tao is to provide bindings to the native counterparts for libraries like GL without extraneous fluff that you may or may not want. I hear people complain about both sides, either 'it's not close enough' or 'why don't you make it more OOP friendly'. While I'm somewhat biased, I'd suggest you use Tao. CsGL is dead and has its drawbacks, SharpGL is more of a scenegraph, Fahey's looks dead, and any others which I haven't mentioned likely all suffer from one or more of these issues.
--Ridge
Thank you Ridge, you've just given me a reason to use C#! ^_^

So you're the same Ridge that developed the Tao framework? The website looks fresh and there are no downloads available so far.
Advertisement
Indeed, I just put the new site up a few days ago. I've been away for a while and now I'm back. I'm going to try and get a new release out this weekend.
--Ridge
Out of curiosity, how do you do Windows API calls in C#, i.e. GetPrivateProfileString?

The reason I ask is, aren't all OpenGL functions in VB 6.0 or VC++ 6.0 en facto just API calls? So what's the big deal, why is it so hard to get the hWnd of a form or a window in C# and just pass it to the wglCreateContext function?

What is it about C# that makes it "so much harder to get started" when it comes to OpenGL than just C?

This topic is closed to new replies.

Advertisement