Summary Period: 1999-05-06 to 2003-07-08
[root]/CS/plugins/video/renderer/opengl
glexthlp
(4 files, 73 lines)
Total Lines Of Code:
16373 (2003-07-11 20:29)
Author | Changes | Lines of code | Lines per change |
---|---|---|---|
Totals | 1324 (100.0%) | 56038 (100.0%) | 42.3 |
jorrit | 573 (43.3%) | 26254 (46.9%) | 45.8 |
norman | 87 (6.6%) | 7808 (13.9%) | 89.7 |
res2002 | 90 (6.8%) | 6329 (11.3%) | 70.3 |
samuel | 74 (5.6%) | 3598 (6.4%) | 48.6 |
ate | 18 (1.4%) | 2778 (5.0%) | 154.3 |
ghaussmann | 23 (1.7%) | 1605 (2.9%) | 69.7 |
bdavis | 9 (0.7%) | 1395 (2.5%) | 155.0 |
andyz | 84 (6.3%) | 1328 (2.4%) | 15.8 |
thebolt00 | 15 (1.1%) | 1082 (1.9%) | 72.1 |
dentoid | 12 (0.9%) | 1041 (1.9%) | 86.7 |
haussman | 15 (1.1%) | 763 (1.4%) | 50.8 |
andy | 28 (2.1%) | 728 (1.3%) | 26.0 |
sunshine | 131 (9.9%) | 653 (1.2%) | 4.9 |
thieber | 26 (2.0%) | 203 (0.4%) | 7.8 |
philwyett | 39 (2.9%) | 143 (0.3%) | 3.6 |
matzebraun | 23 (1.7%) | 75 (0.1%) | 3.2 |
wouter | 7 (0.5%) | 47 (0.1%) | 6.7 |
mgeisse | 21 (1.6%) | 39 (0.1%) | 1.8 |
miklby | 9 (0.7%) | 31 (0.1%) | 3.4 |
mrsigma | 4 (0.3%) | 27 (0.0%) | 6.7 |
ab031ns | 8 (0.6%) | 24 (0.0%) | 3.0 |
malakai | 9 (0.7%) | 19 (0.0%) | 2.1 |
jbit | 2 (0.2%) | 19 (0.0%) | 9.5 |
mreda | 5 (0.4%) | 18 (0.0%) | 3.6 |
link | 2 (0.2%) | 9 (0.0%) | 4.5 |
uid30344 | 1 (0.1%) | 8 (0.0%) | 8.0 |
rbate | 3 (0.2%) | 4 (0.0%) | 1.3 |
gblock | 1 (0.1%) | 4 (0.0%) | 4.0 |
azverkan | 4 (0.3%) | 4 (0.0%) | 1.0 |
toxe | 1 (0.1%) | 2 (0.0%) | 2.0 |
Eric Sunshine reverted the reversion of glrender.mak and applied a small
patch so that it can build files from the renderer/common directory. Also
patched gl_render3d.mak.
23 lines of code changed in:
- Jorrit reverted the change to glrender.mak that was made yesterday.
This change breaks compilation of the OpenGL plugin. With revision
1.52 of glrender.mak the following errors occur:
gcc: out/WIN32/X86/debug/plugins/video/renderer/opengl/txtmgr.o:
No such file or directory
gcc: out/WIN32/X86/debug/plugins/video/renderer/opengl/dtmesh.o:
No such file or directory
...
Jorrit didn't test new renderer makefile where a similar change
was made.
16 lines of code changed in:
Eric Sunshine upgraded glrender.mak and gl_render3d.mak so that they store
their build files in distinct subdirectories of $(OUT). This works around
conflicts caused by both modules having source files of the same name.
20 lines of code changed in:
Eric Sunshine removed the unused, obsolete, and deprecated top-level <name>
node from the .csplugin files.
0 lines of code changed in:
- Philip Wyett initialized the un-initialized 'clipportal_dirty'
at construction in csGraphics3DOGLCommon.
1 lines of code changed in:
- Wouter fixed off-by-one bugs in opengl 2d drawing. This causes
aws and csws to draw correctly (for me).
In gl3d the DrawPixmap routine is fixed to use the same
computation as glcommon2d is using.
Computation of a y location is gly = height - y.
The gly then has a range of 1..height. Still is is OK.
On opengl gly=0.0 is off screen. gly=height is also off screen.
Also, using gly=height-y gives results where absolute pixel
values (as seen with screenshots) are equal to the pixels
written by the software version. Thus height-y is used instead
of the height-y-1.
Closed three sf-bugs on this topic.
8 lines of code changed in:
Eric Sunshine performed Phase Three of the elimination of the monolithic
scf.cfg:
-*- Eliminated the SCF information which was hardcoded in the .cpp files
of plugin modules, and which duplicated information in the external
.csplugin files.
-*- Plugin modules no longer maintain and export a monolithic class list.
Now, each factory implemented by the code is exported automatically.
-*- Added a new <implementation> child node to the <class> node in
.csplugin files. The value of this node is the name of the C++ class
which implements the SCF class. For instance, C++ class csVFS
implements crystalspace.kernel.vfs.
-*- Eliminated the following SCF macros which were related to exporting
SCF information from .cpp code and/or registering classes manually:
SCF_EXPORT_CLASS_TABLE
SCF_EXPORT_CLASS
SCF_EXPORT_CLASS_DEP
SCF_EXPORT_CLASS_TABLE_END
SCF_REGISTER_STATIC_CLASS_DEP
-*- Eliminated the following methods from iSCF:
RegisterStaticClass
RegisterClassList
-*- Plugin modules are now initialized/shutdown lazily as classes are
requested from them. The first time a class is requested, the plugin
is initialized. The plugin is shutdown after the last class instance
has been destroyed.
-*- Fixed bug in scf.h where SCF_PRINT_CALL_ADDRESS was not being enabled
for gcc 3.x.
-*- Fixed bug in win32.jam where GenerateExportDefs rule failed to ensure
that directory containing output file existed before creating file.
Also fixed bug where it failed to set up a dependency between the
input and output files.
-*- Still To-Do:
- Remove references to scf.cfg and scfreg from documentation. Also
document new .csplugin resources.
- Add platform-specific function to scan and locate plugins
automatically rather than using the ad-hoc approach inherited from
scanning for .scf files.
- Add platform-specific function to query a plugin's meta-information.
This should be used by SCF to do the raw extraction. Provide and
finalize API for higher-level clients to access meta-information.
- Augment static linking to work with the new facility. (Removal of
the hardcoded SCF information, has now broken static linking. It
worked until this time, even with all of the preceding changes.)
1 lines of code changed in:
Jorrit fixed OpenGL renderer so it no longer crashes if you create
a material directly out a texture handle as opposed to going through
the usual iMaterial way. The function to fetch a technique for
a given material assumed that when mat_handle is given then there
is always an iMaterial but that assumption is not true.
This fixes a crash with perftest with OpenGL.
5 lines of code changed in:
Replaced NULL with 0.
128 lines of code changed in:
Eric Sunshine performed Phase One of the elimination of the monolithic
scf.cfg:
-*- Plugin modules are now self-describing. This information can be
queried at run-time without having to actually load the module.
-*- The plugin maintainer now manages the plugin's meta-information in an
external .csplugin file, rather than hard-coding the information into
the plugin's source code. The mechanism by which the meta-information
is bound to the plugin is platform-dependent. Presently, all
platforms simply lay down the meta-information in a plain text file
alongside the plugin itself; with the same basename and extension
.csplugin. This may change in the future. For example, on MacOS/X,
the meta-information will probably be encapsulated within the plugin's
bundle wrapper.
-*- Plugin meta-information is now maintained in XML format. Here is an
example:
<?xml version="1.0"?>
<!-- gl3d.csplugin -->
<plugin>
<name>gl3d</name>
<scf>
<classes>
<class>
<name>crystalspace.graphics3d.opengl</name>
<description>OpenGL 3D graphics driver</description>
<requires>
<class>crystalspace.font.server.</class>
</requires>
</class>
</classes>
</scf>
</plugin>
-*- Since meta-information is now extensible, maintainers can choose to
publish supplementary information about plugins (in addition to the
SCF information already published). For example, image loading
plugins could publish "image indendification" information which would
allow the image loading multiplexor to selectively request image
loading plugins on-demand, rather than requesting all plugins
unconditionally, even if they are not needed. Here is an example of a
possible meta-information table for the PNG loader:
<?xml version="1.0"?>
<!-- cspngimg.csplugin -->
<plugin>
<name>cspngimg</name>
<scf>...</scf>
<imageloader>
<imagetype>
<class>crystalspace.graphic.image.io.png</class>
<identify>
<mimetype>image/png</mimetype>
<extension>png</extension>
<extension>PNG</extension>
<scan length="4" bytes="\0x89PNG"/>
</identify>
</imagetype>
</imageloader>
</plugin>
In this example, the PNG loader meta-information tells the multiplexor
several different ways to identify a PNG image: by checking file
extension, if available; by checking MIME type, if available; by
checking for the magic-string "\0x89PNG" in the raw image data. If
the multiplexor identifies the image as PNG, only then will it
actually request the PNG loader.
-*- Added the --meta-file directive to msvcgen.pl to allow specification
of the meta-information file for a module. The value of this option
is interpolated into template files via the new %metafile% variable.
msvcgen.mak now utilizes this flag with the value of the new
INC.PROJECT makefile variable. Augmented the MSVC6 and MSVC7 plugin
template files (plugin.tpl) to make use of %metafile%.
-*- Changed the file extension for plugins on MacOS/X from .csplugin to
.csbundle to avoid conflict with new meta-information resource which
uses the extension .csplugin.
-*- Still To-Do:
- Augment SCF to utilize the new meta-information resources, and to
understand the new XML format. Presently, these resources are
ignored at run-time.
- Add platform-specific function to scan and locate plugins
automatically, rather than relying upon a monolithic registry such
as scf.cfg.
- Add platform-specific function to query a plugin's meta-information.
- Eliminate the monolithic scf.cfg.
- Augment static linking to work with the new facility.
- Eliminate the hard-coded SCF registration information in each
plugin's source code.
18 lines of code changed in:
- fixed a compile I introduced in ogl_txtmgr.cpp earlier. (proper now)
2 lines of code changed in:
q'n'd fixed compile error in ogl_txt,gr.cpp
2 lines of code changed in:
- res fixed csTextureHandleOpenGL::GetMipMapDimensions() to return the
size without applied downsampling (via
Video.OpenGL.TextureDownsample cfg. This is done in addition to po2
adjustments)
2 lines of code changed in:
Jorrit fixed a bug in the OpenGL renderer where it would incorrectly
change the original dimensions of a texture in case the texture
was resized to PO2 dimensions. This affected GetOriginalDimensions().
Also applied the fix to the new OpenGL renderer.
7 lines of code changed in:
- changed the GL renderer to flip procedural textures vertically,
so that up/down have the same coordinates as normal textures
(previously, the texture coordinated had to be flipped manually.)
- fixed the flarge for above change.
- removed the MNG from flarge due to warnings caused on most
systems.
- changed the software renderer to not flip procedural textures
any more.
50 lines of code changed in:
Eric Sunshine made the following changes:
-*- Modified configure.ac so that it emits a SRCDIR property to
config.mak. This value represents the --srcdir argument given to the
configure script (or "." if --srcdir is omitted). This points at the
directory containing the CS source code (which may differ from the
build directory, which is typically the current working directory).
-*- Modified makefiles and build scripts throughout the project so that
they respect $(SRCDIR). This allows the project to be built in a
directory other than the source directory, thus it is possible to
place the source directory on a readonly filesystem (such as a
CD-ROM), or to share a single NFS-mounted source directory among
different builds, where each build inhabits its own directory. For
example, if CS resides at /home/CS and you wish to build the project
in /home/build:
% cd /home/build
% ../CS/configure
% make -k all
% make install
(Note that the Jam-base build system already supports this build
paradigm.)
-*- Modified configure.ac so that it emits EXTENSIVE_MEMDEBUG to
config.mak since this variable is used by Makefile.in for the
`showconfig' target.
-*- Modified configure.ac so that it emits MONITOR_MAKEFILE_CACHE when the
value is either "yes" or "no", instead of emitting it only when the
value is "yes". This was necessary because CS/mk/cache.mak prints the
value of this variable as part of $(SYSMODIFIER).
11 lines of code changed in:
added the Jamfiles
17 lines of code changed in:
cleaned up csutil as proposed in the crystal-develop list
1 lines of code changed in:
Removed the csSome, csConstSome and uint datatypes.
1 lines of code changed in:
- Fixed a very old clipping bug with individual polygon drawing
in the thing plugin in case there is rendering through a portal
that has the <clip/> (or CS_PORTAL_CLIPDEST) flag set.
- Fixed a significant bug in the OpenGL EffectDrawTriangleMesh()
function. In some particular cases when there was an early
exit out of that function (because after clipping no triangles
were visible) the clipper wouldn't get restored correctly.
This could cause wrong clipping for objects following later.
10 lines of code changed in:
(605 more)
Generated by StatCvs v0.2-dev