Dominic Curran | 1 Aug 12:15 2004
Picon

WHERE TO FIND OPENGL INFORMATION - (Bi-weekly posting)

WHERE TO FIND OPENGL INFORMATION - (Bi-weekly posting)

The Official OpenGL Site - News, downloads, tutorials, books & links:- 
http://www.opengl.org/

The archive for this mailing list can be found at:- 
http://www.egroups.com/list/opengl-gamedev-l/

The OpenGL GameDev FAQ:- 
http://www.rush3d.com/opengl/

The EFnet OpenGL FAQ:- 
http://www.geocities.com/SiliconValley/Park/5625/opengl/

The Omniverous Biped's FAQ:-
http://www.sjbaker.org/steve/omniv

OpenGL 1.1 Reference - This is pretty much the Blue book on-line:- 
http://tc1.chemie.uni-bielefeld.de/doc/OpenGL/hp/Reference.html

Red Book online:-
http://fly.cc.fer.hr/~unreal/theredbook/

Manual Pages:- 
http://pyopengl.sourceforge.net/documentation/manual/reference-GL.html

Information on the GLUT API:- 
http://www.opengl.org/developers/documentation/glut.html

The Mesa 3-D graphics library:-
(Continue reading)

jesse | 15 Aug 05:00 2004

(unknown)


Dear All,
I have a Cg shader, which I'm trying to get to do shadow mapping. I know it's not the most 
efficent thing in the world, but I'll fix that after it works properly, which it is currently 
failing to do in a big way(http://laeuchli.com/jesse/shadowerror.PNG). So, the vertex shader is:
VertO Out;
float4 tempos;
Out.pos = mul(ModelViewProj,In.pos);  
tempos.xyz=In.pos.xyz;
tempos.w=1;
float4 tex4scale=mul(TextureMatrix,tempos);
tex4scale=tex4scale*.5+.5;
Out.tex4=tex4scale;
Texture matrix is my lightprojection*lightmodelview. I have tested this by changing 
Out.pos = mul(ModelViewProj,In.pos);  
to
Out.pos = mul(TextureMatrix,In.pos);  
and I get the scene from the lightPOV. 
My pixel shader is:
struct Vert
{
    float4 pos  : POSITION;
...
	float4 tex4: TEXCOORD3;	
};

Pix Out;
Vert In;
float4 shadowmap=(tex2Dproj(ShadowMap,In.tex4));
Out.dif=shadowmap.aaaa;
(Continue reading)

Dominic Curran | 15 Aug 12:15 2004
Picon

WHERE TO FIND OPENGL INFORMATION - (Bi-weekly posting)

WHERE TO FIND OPENGL INFORMATION - (Bi-weekly posting)

The Official OpenGL Site - News, downloads, tutorials, books & links:- 
http://www.opengl.org/

The archive for this mailing list can be found at:- 
http://www.egroups.com/list/opengl-gamedev-l/

The OpenGL GameDev FAQ:- 
http://www.rush3d.com/opengl/

The EFnet OpenGL FAQ:- 
http://www.geocities.com/SiliconValley/Park/5625/opengl/

The Omniverous Biped's FAQ:-
http://www.sjbaker.org/steve/omniv

OpenGL 1.1 Reference - This is pretty much the Blue book on-line:- 
http://tc1.chemie.uni-bielefeld.de/doc/OpenGL/hp/Reference.html

Red Book online:-
http://fly.cc.fer.hr/~unreal/theredbook/

Manual Pages:- 
http://pyopengl.sourceforge.net/documentation/manual/reference-GL.html

Information on the GLUT API:- 
http://www.opengl.org/developers/documentation/glut.html

The Mesa 3-D graphics library:-
(Continue reading)

Martin Bell | 25 Aug 12:30 2004

gluProject use


Hi all,

I'm using gluProject to find the screen pos of a world space object.  I
wondered what the z value returned is, and can I use it any way?
I ask this because I get 'two results' for the gluProject - the expected one
(when the object is on-screen) and a result 180 degrees from the 'correct'
direction (presumably the projection from the proper match through the
screen centre?).
Is this normal, and will I have to do a test of my own to determine which is
the 'correct' one?

Cheers,
Martin

********************************************
Any opinions expressed in this email are those of the individual and not
necessarily the Company. This email and any files transmitted with it,
including replies and forwarded copies (which may contain alterations)
subsequently transmitted from the company, are confidential and solely
for the use of the intended recipient. 

If you are not the intended recipient or the person responsible for
delivering to the intended recipient, be advised that you have received
this email in error and that any use is strictly prohibited.

If you have received this email in error please notify the IT Dept. via
email to IT.Helpdesk <at> Teleca.com, including a copy of the message. Please
then delete this email and destroy any copies of it.
*********************************************
(Continue reading)

CAVEY GERARD | 27 Aug 11:35 2004

GL_RENDERER meaning

Hi
 
A basic question:
When i get the string GL_RENDERER on my cpu it returns the video card name
plus "x86 SSE2" in other words ,it seems to detect the best instr set for maths processing.
Can i expect the gl core functions(ex: glMultMatrixf) to use this instruction set ?
When i call gl built in maths functions (ex: glMultMatrixf), what happens behind the scenes?
Does it call a driver procedure or is it a static non optimized procedure from the opengl lib ?
 
thanks


*************************************************************************

Ce message et toutes les pieces jointes (ci-apres le "message") sont

confidentiels et etablis a l'intention exclusive de ses destinataires.

Toute utilisation ou diffusion non autorisee est interdite.

Tout message electronique est susceptible d'alteration.

SG Asset Management et ses filiales declinent toute responsabilite au titre de ce message s'il a ete altere, deforme ou falsifie.


Découvrez l'offre et les services de SG Asset Management sur le site www.sgam.fr


                                ********


This message and any attachments (the "message") are confidential and

intended solely for the addressees.

Any unauthorised use or dissemination is prohibited.

E-mails are susceptible to alteration.

Neither SG Asset Management nor any of its subsidiaries or affiliates shall be liable for the message if altered, changed or falsified.


*************************************************************************




Martin Büchler | 27 Aug 12:10 2004
Picon
Picon

Re: GL_RENDERER meaning

every gl* function is provided by the driver so i guess those calls will 
be sse accelerated (or whatever the driver/cpu support), but as the 
driver is closed source its not easy to tell whats really going on 
behind the scenes.

i'm not sure if the glMultMatrix* calls are even beeing processed 
directly on the graphics card (atleast geforce and up) because it would 
make sense as the cards are optimized to do matrix calculations much 
faster than the cpu, but i've done not much gl programming lately so i'm 
not really up2date with this stuff ;)

Martin

CAVEY GERARD wrote:
> Hi
>  
> A basic question:
> When i get the string GL_RENDERER on my cpu it returns the video card name
> plus "x86 SSE2" in other words ,it seems to detect the best instr set 
> for maths processing.
> Can i expect the gl core functions(ex: glMultMatrixf) to use this 
> instruction set ?
> When i call gl built in maths functions (ex: glMultMatrixf), what 
> happens behind the scenes?
> Does it call a driver procedure or is it a static non optimized 
> procedure from the opengl lib ?
>  
> thanks
> 
> 
> ***************************************************************************
> 
> *Ce message et toutes les pieces jointes (ci-apres le "message") sont*
> 
> *confidentiels et etablis a l'intention exclusive de ses destinataires.*
> 
> *Toute utilisation ou diffusion non autorisee est interdite. *
> 
> *Tout message electronique est susceptible d'alteration. *
> 
> *SG Asset Management et ses filiales declinent toute responsabilite au 
> titre de ce message s'il a ete altere, deforme ou falsifie.*
> 
> 
> *Découvrez l'offre et les services de SG Asset Management sur le site 
> www.sgam.fr *
> 
> 
> *                                *********
> 
> 
> *This message and any attachments (the "message") are confidential and*
> 
> *intended solely for the addressees.*
> 
> *Any unauthorised use or dissemination is prohibited. *
> 
> *E-mails are susceptible to alteration. *
> 
> *Neither SG Asset Management nor any of its subsidiaries or affiliates 
> shall be liable for the message if altered, changed or falsified. *
> 
> 
> ***************************************************************************
> 
> 
> 
> 
----- 
FAQ and OpenGL Resources at:
  http://www.geocities.com/SiliconValley/Hills/9956/OpenGL

--

-- 
Author: =?ISO-8859-1?Q?Martin_B=FCchler?=
  INET: lousyphreak <at> gmx.at

Fat City Hosting, San Diego, California -- http://www.fatcity.com
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru <at> 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).

Phlip | 27 Aug 17:20 2004
Picon

TDD vs OpenGL

OpenGL gamers:

I have this lead programmer who has gone psycho for
this "new thing" called Test Driven Development. It's
part of Agile Development. Telling him studies show
this stuff doesn't work for games doesn't help.

Okay, before I can write this, I have to write a test
that proves I wrote it, right?

    glClearColor(0,0,0,1);
    glClear(GL_COLOR_BUFFER_BIT);
    glBegin(GL_TRIANGLES);  //  construct a Triangle
               //  X       Y       Z
      glVertex3f(-1.0, 0.0, 0.0);  //  constructor
      glVertex3f( 0.0, 1.0, 0.0);  //  parameters
      glVertex3f( 1.0, 0.0, 0.0);
    glEnd();   //  push the Triangle into the current
instruction list

Okay, that Sets a triangle - the short question is how
do I Get it.

The triangle exists in a display list, and I can
either buffer that into a "named" list, or let it go
to the driver. Adding code inside OpenGL to buffer
display lists, on the off chance that someone queries
them back, would slow everything down.

If I have to, I'l use the Mock Graphics pattern to
write a mock object and a production object:

    gl.ClearColor(0,0,0,1);
    gl.Clear(GL_COLOR_BUFFER_BIT);
    gl.Begin(GL_TRIANGLES);
      gl.Vertex3f(-1.0, 0.0, 0.0);
      gl.Vertex3f( 0.0, 1.0, 0.0);
      gl.Vertex3f( 1.0, 0.0, 0.0);
    gl.End();

Now the test sets gl to refer to an object with all
those methods, which only buffers all their names and
values into a log. Then a Log String test reads the
log and shows they are all there.

Can I get inside a programmable pipeline and sample
out the pipe's contents?

I don't want to use glTrace because (per my psycho
boss) the test suite has to mix test cases with
production runs that show the real thing on the
screen. glTrace spoofs a DLL, and at runtime I already
linked the real thing.

How, in general, can we write such a test as close as
possible to the production model? 

=====
Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces

		
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail 
----- 
FAQ and OpenGL Resources at:
  http://www.geocities.com/SiliconValley/Hills/9956/OpenGL

--

-- 
Author: Phlip
  INET: phlipcpp <at> yahoo.com

Fat City Hosting, San Diego, California -- http://www.fatcity.com
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru <at> 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).

Dirk Gregorius | 27 Aug 20:20 2004
Picon

Re: TDD vs OpenGL


> Telling him studies show
> this stuff doesn't work for games doesn't help.
Which studies? Can you give a reference? Actually I visited the SW
engineering roundtable at the
GDC this year and some studios (even bigger ones) seem to use pair
programming and TDD.
You might look at the homepage of Noel Llopis for some information.

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

--

-- 
Author: Dirk Gregorius
  INET: dirk <at> dirkgregorius.de

Fat City Hosting, San Diego, California -- http://www.fatcity.com
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru <at> 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).

Phlip | 27 Aug 21:40 2004
Picon

Re: TDD vs OpenGL

Dirk Gregorius wrote:

> > Telling him studies show
> > this stuff doesn't work for games doesn't help.

> Which studies?

I'm the TDD zealot.

> Can you give a reference? Actually I
> visited the SW
> engineering roundtable at the
> GDC this year and some studios (even bigger ones)
> seem to use pair
> programming and TDD.

Cool! But Pair Programming sucks.

(That's why I started HowToPissOffYourPair...)

> You might look at the homepage of Noel Llopis for
> some information.

Apologies for the Red Herring. Blaming sick questions
on a hypothetical evil boss sometimes inspires folks
to help me better than me screaming at them all to do
TDD could.

The real question is about extracting and
deconstruction OpenGL display lists. I understand that
I can't and never will.

I'm currently researching a way to inject glTrace into
a DLL layer on the fly. I will report back on this,
but I'm worried I have overlooked something simple.

Here's another question - why is my cylinder black?

  GLfloat  no_mat[]     = { 0.0f, 0.0f, 0.0f, 1.0 };
  GLfloat mat_ambient[] = { 0.8f, 0.8f, 0.2f, 1.0 };
  GLfloat mat_diffuse[] = { 0.0f, 0.0f, 1.0f, 1.0 };

  ogl.glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
  ogl.glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
  ogl.glMaterialfv(GL_FRONT, GL_SPECULAR, no_mat);
  ogl.glMaterialf (GL_FRONT, GL_SHININESS, 5.0);
  ogl.glMaterialfv(GL_FRONT, GL_EMISSION, no_mat);

  BuildCylinder(20);
...

double PI = 3.14159265358979323846;

void BuildCylinder(int numEdges)
{
    int i, top = 1.0, bottom = -1.0;
    float x[100], y[100], angle; 

    for (i = 0; i <= numEdges; i++) {
	angle = i * 2.0 * PI / numEdges;
	x[i] = cosf(angle);
	y[i] = sinf(angle);
    }

    //glNewList(cylinder, GL_COMPILE);
    glBegin(GL_TRIANGLE_STRIP);

    
	for (i = 0; i <= numEdges; i++) {
	    glNormal3f(x[i], y[i], 0.0);
	    glVertex3f(x[i], y[i], bottom);
	    glVertex3f(x[i], y[i], top);
	}
    glEnd();
    glBegin(GL_TRIANGLE_FAN);
	glNormal3f(0.0, 0.0, 1.0);
	glVertex3f(0.0, 0.0, top);
	for (i = 0; i <= numEdges; i++) {
	    glVertex3f(x[i], -y[i], top);
	}
    glEnd();
    glBegin(GL_TRIANGLE_FAN);
	glNormal3f(0.0, 0.0, -1.0);
	glVertex3f(0.0, 0.0, bottom);
	for (i = 0; i <= numEdges; i++) {
	    glVertex3f(x[i], y[i], bottom);
	}
    glEnd();
    //glEndList();
}

=====
Phlip
  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces

		
_______________________________
Do you Yahoo!?
Win 1 of 4,000 free domain names from Yahoo! Enter now.
http://promotions.yahoo.com/goldrush
----- 
FAQ and OpenGL Resources at:
  http://www.geocities.com/SiliconValley/Hills/9956/OpenGL

--

-- 
Author: Phlip
  INET: phlipcpp <at> yahoo.com

Fat City Hosting, San Diego, California -- http://www.fatcity.com
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru <at> 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).

Stanislav Blinov | 27 Aug 22:05 2004
Picon

Re: TDD vs OpenGL

Have you enabled lighting?

>...
>Here's another question - why is my cylinder black?
>
>  GLfloat  no_mat[]     = { 0.0f, 0.0f, 0.0f, 1.0 };
>  GLfloat mat_ambient[] = { 0.8f, 0.8f, 0.2f, 1.0 };
>  GLfloat mat_diffuse[] = { 0.0f, 0.0f, 1.0f, 1.0 };
>        
>  ogl.glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
>  ogl.glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
>  ogl.glMaterialfv(GL_FRONT, GL_SPECULAR, no_mat);
>  ogl.glMaterialf (GL_FRONT, GL_SHININESS, 5.0);
>  ogl.glMaterialfv(GL_FRONT, GL_EMISSION, no_mat);
>        
>  BuildCylinder(20);
>...
>
>double PI = 3.14159265358979323846;
>
>void BuildCylinder(int numEdges)
>{
>    int i, top = 1.0, bottom = -1.0;
>    float x[100], y[100], angle; 
>    
>    for (i = 0; i <= numEdges; i++) {
>	angle = i * 2.0 * PI / numEdges;
>	x[i] = cosf(angle);
>	y[i] = sinf(angle);
>    }
>
>    //glNewList(cylinder, GL_COMPILE);
>    glBegin(GL_TRIANGLE_STRIP);
>   
>    
>	for (i = 0; i <= numEdges; i++) {
>	    glNormal3f(x[i], y[i], 0.0);
>	    glVertex3f(x[i], y[i], bottom);
>	    glVertex3f(x[i], y[i], top);
>	}
>    glEnd();
>    glBegin(GL_TRIANGLE_FAN);
>	glNormal3f(0.0, 0.0, 1.0);
>	glVertex3f(0.0, 0.0, top);
>	for (i = 0; i <= numEdges; i++) {
>	    glVertex3f(x[i], -y[i], top);
>	}
>    glEnd();
>    glBegin(GL_TRIANGLE_FAN);
>	glNormal3f(0.0, 0.0, -1.0);
>	glVertex3f(0.0, 0.0, bottom);
>	for (i = 0; i <= numEdges; i++) {
>	    glVertex3f(x[i], y[i], bottom);
>	}
>    glEnd();
>    //glEndList();
>}
>
>
>=====
>Phlip
>  http://industrialxp.org/community/bin/view/Main/TestFirstUserInterfaces
>
>
>		
>_______________________________
>Do you Yahoo!?
>Win 1 of 4,000 free domain names from Yahoo! Enter now.
>http://promotions.yahoo.com/goldrush
>----- 
>FAQ and OpenGL Resources at:
>  http://www.geocities.com/SiliconValley/Hills/9956/OpenGL
>
>-- 
>Author: Phlip
>  INET: phlipcpp <at> yahoo.com
>
>Fat City Hosting, San Diego, California -- http://www.fatcity.com
>---------------------------------------------------------------------
>To REMOVE yourself from this mailing list, send an E-Mail message
>to: ListGuru <at> 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).
>
----- 
FAQ and OpenGL Resources at:
  http://www.geocities.com/SiliconValley/Hills/9956/OpenGL

--

-- 
Author: Stanislav Blinov
  INET: kerry <at> penza.net

Fat City Hosting, San Diego, California -- http://www.fatcity.com
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru <at> 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).


Gmane