|
|
|
The glBugger gui consists of six main screens: ● The Main Window - The glBugger main window. ● The Configuration Screen - In which you can configure the application settings, the output files paths and the Text editor to use. ● The Function State Dialog - In which you can go over the OpenGL function list and trace a specific function, change it's state and pause the application every time it calls this function. ● The State Window - In which you can go over the OpenGL states, change their status and protect/unprotect them. ● The Value Window - In which you can observe a specific value - as a matrix , a bit mask or as a GLEnum. ● Matrix Stacks Window - In which you can perform a constant number of operations on OpenGL matrix's. ● 3DModeling Window - In which you can parse the glBugger modeling file into IRIT model files and to VRML modeling files.
This is the main glBugger interface which connects to the running application using shared memory between the two processes. This windows allows you to control running status of your debugged application. You can "Open" a new project, start a "New" project and "Save" the current project you are working on. After configuring glBugger for the application you want to debug using the "Configure glBugger" button (see configuration window documentation), you will be able to :
"Write Buffer", gives you the
ability to write current state of one of the image buffers to a bmp file, in
order to view its content. we would advice you to pause the application in order
to do this action. "Outputs" section gives you
an easy access to the debugging data which is prepared for you by glBugger.
By choosing one of the options from the provided list
and pressing the "Open" button, you can open your defined text
viewer with the file you chose.
This dialog must be configured for every application you would like to debug. All o these configurations are well known from Visual Studio concept (running application, working directory, program arguments). Use the "Copy Dlls To Working Directory" button in order to copy all the needed Dlls to your new working directory. The output files you define here, if enabled, will be created by glBugger in order to produce debugging information.
You can define the program to use your own text viewer in order to view the
outputs (see main window documantation). Just enter the path to your text viewer
utility in the "Text Edittor" section.
This Dialog provides you some very useful information and status of OpenGL functions status. This dialog concept is very similar to ConfigureStates dialog, so please make sure you understand it before you read all about this one. In current glBuuger version, you can change Functions states to :
In order to change
a function's state, select the relevant function from the
functions list and change it's status using the "Change Trace Status" button
until a wanted function state appears in the table.
Inspecting OpenGL states : This dialog is what this project is all about. It should provide you the ability to view all and control (some of) OpenGL state while running your application in RealTime. In order to inspect OpenGL states you should have you application get on pause, you can do this in any of the follwing ways :
After setting you application on pause mode, you can ispect OpenGL states by pressing "Update" button on this dialog. Wait a couple of seconds, and you will see the table on this dialog filled with OpenGL states and their current state. in order to ispect the states, you can use Value button which will present the chosen state in a different more detailed dialog (don't forget to choose a state before you press the button). In this version of glBugger it's also possible to change the current state of OpenGL states. In current version you are able to change only states like GL_TEXTURE_2D or GL_BLEND, in other word, states which can be either enabled or disabled. in order to make a change in a state:
After releasing the application from Pause mode, you new defined states should take place. For example, if you set GL_TEXTURE_2D to protected and false, you won't be able to see the textures in your running application. Another option provided by this dialog is to inspect current state of OpenGL Matrixs Stacks. You can do this by updating the dialog and clicking "MatrixStacks" button. The dialog supports updating variable’s state change on the fly (updating OpenGL states on the fly). This can be done by changing state value and then press “Upload States To OpenGl.dll” in order to update the state with the new value. PROTECTED mode Is used for each state in order to force the running application NOT TO change OpenGL state in hand, Thus protecting the value set by glBugger User. In order to use this mode, highlight the relevant state and press the "Protect" button.
In this window you can
change the state values using the following buttons. In order to change the
value, just change the relevant field and press "OK". Buttons Index:
Click the button if you want to see the state as a matrix (The matrix on the dialog will be filled).
This Dialog will show a constant number of operations performed on OpenGL matrix's. This data is updated only when
you update State Dialog.
In order to open this dialog one should choose the “glBugger3DModeling” option from the outputs section. This dialog is used in order
to parse the glBugger modeling file into IRIT model files and to VRML modeling
files that are partitially supported for current glBugger version.
|
|
|
All rights reserved © 2005
glBugger
|