Thread: [Glxtreem-commits] GLXtreem/Demos Project1.dpr,NONE,1.1 Project1.res,NONE,1.1 Unit1.dfm,NONE,1.1 Uni
Brought to you by:
andreaz
|
From: <an...@us...> - 2004-03-10 17:19:50
|
Update of /cvsroot/glxtreem/GLXtreem/Demos In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8141/Demos Added Files: Project1.dpr Project1.res Unit1.dfm Unit1.pas crate.bmp Log Message: --- NEW FILE: Project1.dpr --- program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}, GLXPrimitives in '..\Source\GLXPrimitives.pas', GLXTexture in '..\Source\GLXTexture.pas', GLXScene in '..\Source\GLXScene.pas'; {$R *.res} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. --- NEW FILE: Project1.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Unit1.dfm --- object Form1: TForm1 Left = 275 Top = 112 Width = 870 Height = 640 Caption = 'Form1' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False OnCreate = FormCreate PixelsPerInch = 96 TextHeight = 13 object GLXDraw1: TGLXDraw Left = 0 Top = 0 Width = 862 Height = 606 Camera = GLXCamera1 Timer = GLXTimer1 Options = [doInitialize, doAutosize] RenderOptions.ColorBits = 32 RenderOptions.ZBits = 16 RenderOptions.StencilBits = 0 RenderOptions.AccumBits = 0 RenderOptions.AuxBuffers = 0 RenderOptions.doDepthTest = True RenderOptions.doWireframe = False RenderOptions.doTexturing = True RenderOptions.doBlending = False RenderOptions.doCulling = False RenderOptions.doLineStripple = False OnSetup = GLXDraw1Setup OnInitialize = GLXDraw1Initialize OnRender = GLXDraw1Render SurfaceWidth = 862 SurfaceHeight = 606 Align = alClient end object GLXCamera1: TGLXCamera Position.Z = -3.000000000000000000 MouseEnabled = False FarPlane = 1000.000000000000000000 NearPlane = 0.100000001490116100 FOV = 45.000000000000000000 Style = csPerspective Mode = cmTranslateFirst Left = 96 Top = 20 end object GLXTimer1: TGLXTimer Enabled = True Interval = 0 ActiveOnly = True Left = 128 Top = 20 end end --- NEW FILE: Unit1.pas --- unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, GLXTimer, GLXCamera, GLXDraws, GLXTexture, GLXClasses; type TForm1 = class(TForm) GLXDraw1: TGLXDraw; GLXCamera1: TGLXCamera; GLXTimer1: TGLXTimer; procedure GLXDraw1Setup(Sender: TObject); procedure GLXDraw1Render(Sender: TObject; FrameTime: Single); procedure GLXDraw1Initialize(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } Texture: TGLXTexture; end; var Form1: TForm1; implementation {$R *.dfm} Uses dglOpenGL, GLXPrimitives; //------------------------------------------------------------------------------ procedure TForm1.GLXDraw1Setup(Sender: TObject); begin end; //------------------------------------------------------------------------------ procedure DrawCube(x,y,z,width,height,deapth: glFloat); var w,h,d: glFloat; begin w:=Width / 2; h:=Height / 2; d:=Deapth / 2; glBegin(GL_QUADS); // Front Face glNormal3f(0.0, 0.0, 1.0); glTexCoord2f(0,0); glVertex3f(x-w, y-h, z+d); glTexCoord2f(1,0); glVertex3f(x+w, y-h, z+d); glTexCoord2f(1,1); glVertex3f(x+w, y+h, z+d); glTexCoord2f(0,1); glVertex3f(x-w, y+h, z+d); // Back Face glNormal3f( 0.0, 0.0,-1.0); glTexCoord2f(1,0); glVertex3f(x-w, y-h, z-d); glTexCoord2f(1,1); glVertex3f(x-w, y+h, z-d); glTexCoord2f(0,1); glVertex3f(x+w, y+h, z-d); glTexCoord2f(0,0); glVertex3f(x+w, y-h, z-d); // Top Face glNormal3f( 0.0, 1.0, 0.0); glTexCoord2f(0,0); glVertex3f(x-w, y+h, z-d); glTexCoord2f(0,1); glVertex3f(x-w, y+h, z+d); glTexCoord2f(1,1); glVertex3f(x+w, y+h, z+d); glTexCoord2f(1,0); glVertex3f(x+w, y+h, z-d); // Bottom Face glNormal3f( 0.0,-1.0, 0.0); glTexCoord2f(1,1); glVertex3f(x-w, y-h, z-d); glTexCoord2f(0,1); glVertex3f(x+w, y-h, z-d); glTexCoord2f(0,0); glVertex3f(x+w, y-h, z+d); glTexCoord2f(1,0); glVertex3f(x-w, y-h, z+d); // Right face glNormal3f( 1.0, 0.0, 0.0); glTexCoord2f(1,0); glVertex3f(x+w, y-h, z-d); glTexCoord2f(1,1); glVertex3f(x+w, y+h, z-d); glTexCoord2f(0,1); glVertex3f(x+w, y+h, z+d); glTexCoord2f(0,0); glVertex3f(x+w, y-h, z+d); // Left Face glNormal3f(-1.0, 0.0, 0.0); glTexCoord2f(0,0); glVertex3f(x-w, y-h, z-d); glTexCoord2f(1,0); glVertex3f(x-w, y-h, z+d); glTexCoord2f(1,1); glVertex3f(x-w, y+h, z+d); glTexCoord2f(0,1); glVertex3f(x-w, y+h, z-d); glEnd(); end; //------------------------------------------------------------------------------ procedure TForm1.GLXDraw1Initialize(Sender: TObject); begin //GLXCamera1.doLookAt(0,0.1, 2, 0, 0.1, 4); //GLXCamera1.Position.X:=GLXCamera1.Position.X; //GLXCamera1.Rotation.Y:=GLXCamera1.Rotation.Y; end; //------------------------------------------------------------------------------ procedure TForm1.GLXDraw1Render(Sender: TObject; FrameTime: Single); begin GLXCamera1.Style:= csPerspective; { glBegin(GL_LINES); glColor3f(1.0, 0.0, 0.0); glVertex3d(-100, 0, 0); glVertex3d(100, 0, 0); glColor3f(0.0, 1.0, 0.0); glVertex3d( 0,-100, 0); glVertex3d( 0, 100, 0); glColor3f(0.0, 0.0, 1.0); glVertex3d( 0, 0, -100); glVertex3d( 0, 0, 100); glEnd; glColor3f(1.0, 1.0, 1.0); } { glPushMatrix(); glTranslatef(-1.0, 0, 0); Primitives.Render(ptCube); glPopMatrix(); } Primitives.Primitive:=ptCube; Primitives.Position:=Vector3f(-1, 0, 0); Primitives.Size :=Vector3f( 2, 2, 2); Primitives.Render; GLXCamera1.Style:= csOrthogonal; GLXDraw1.RenderOptions.doTexturing:=False; glBegin(GL_QUADS); glColor3f(1.0, 0.0, 0.0); glVertex2d(100, 100); glColor3f(1.0, 1.0, 0.0); glVertex2d(200, 100); glColor3f(0.0, 1.0, 0.0); glVertex2d(200, 200); glColor3f(1.0, 0.0, 1.0); glVertex2d(100, 200); glEnd; GLXDraw1.RenderOptions.doTexturing:=True; GLXCamera1.Style:= csPerspective; glColor3f(1.0, 1.0, 1.0); glPushMatrix(); glTranslatef(1.0, 0, 0); Primitives.Render(ptPyramid); glPopMatrix(); GLXCamera1.doRotate(aY, FrameTime / 100); GLXCamera1.doRotate(aX, FrameTime / 50); Caption:=Format('GLXTreem [%d FPS]', [ GLXTimer1.FrameRate]); end; //------------------------------------------------------------------------------ procedure TForm1.FormCreate(Sender: TObject); begin Texture:= TGLXTexture.Create; Texture.LoadTexture('crate.bmp'); end; end. --- NEW FILE: crate.bmp --- (This appears to be a binary file; contents omitted.) |