[Mono-list] [Fwd: C# OpenGL Wrapper : New Version]

J. Perkins jason@379.com
Sun, 16 Feb 2003 06:18:20 -0500


This may be of interest to people here.

Jason
379


-------- Original Message --------
Subject: C# OpenGL Wrapper : New Version
Date: Fri, 14 Feb 2003 15:23:51 -0800
From: Colin Fahey <cpfahey@earthlink.net>
Reply-To: OPENGL-GAMEDEV-L@fatcity.com
Organization: Fat City Network Services, San Diego, California
To: Multiple recipients of list OPENGL-GAMEDEV-L 
<OPENGL-GAMEDEV-L@fatcity.com>

2003 February 14th
Friday

Happy Valentine's Day!  XOXOXO  ;^O (smooch!)  OpenGL!
Hee, hee, I'm blushing!

Almost exactly one month ago I made the first public
release of my C# OpenGL wrapper.  I have made minor
bug fixes to the *demonstration* code aspect of the project
(Z-Buffer fighting made the rotating cube look bad for
some people with desktops set to 16-bit color depth)
and the new source code (and Visual Studio project) is
now available.

http://www.colinfahey.com/opengl/csharp.htm

This wrapper differs from most C# OpenGL wrappers in
that it is a pure C# solution, with only three wrapper
files:

[1] opengl_gl_v4.cs   : Exposes functions found in GL.H
[2] opengl_glu_v4.cs  : Exposes functions found in GLU.H
[3] opengl_wgl_v4.cs  : Exposes functions to support OpenGL
                         under Windows

That's ALL you need to start a new C# OpenGL project of
your own!

There is no wacky corporate namespace.  Also, I do not
offer any functions that don't match the OpenGL "Blue Book"
specs.  I did however make the following changes:

[a] I use only native C# data types (e.g., "float") instead
   of somehow enforcing types like "GLfloat".  C# has well-defined
   meanings to its native data types, so propagating "GLfloat"
   to C# would just be pedantic.

[b] I did not propagate many wacky GLU data types
   (callback function pointers data types for tesselation
   methods, etc).  I regard all such data types as
   generic C# pointers.

I hope that my C# OpenGL wrapper encourages other
C# OpenGL wrapper efforts to:

[  i]  Avoid requiring *custom* DLL's,
[ ii]  Avoid goofy or corporate namespaces,
[iii]  Avoid "improving" on the OpenGL spec by inventing
        functions and data types that resemble OpenGL and
        "bring OpenGL more in to the spirit of C#",
[ iv]  Avoid meaningless continuation of "GLfloat",
        and other basic types,
[  v]  Avoid requiring more than exactly three files
        (corresponding to GL, GLU, WGL) for new C# OpenGL
        projects written from nothing,
[ vi]  Avoid any dependency between GL and GLU.

Anyhow, I created my wrapper to hopefully "raise the
bar" so that I wouldn't have to suffer the bloated,
pedantic, ugly wrappers that might otherwise emerge
in an environment with no "competition".

--- Colin

cpfahey@earthlink.net




-----
FAQ and OpenGL Resources at:
   http://www.geocities.com/SiliconValley/Hills/9956/OpenGL

-- 
Author: Colin Fahey
   INET: cpfahey@earthlink.net

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru@fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB OPENGL-GAMEDEV-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).