Commit Log (Page 136 of 255)

back to main page

Pages: << Previous 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 Next >>

Summary Period: 2001-08-26 to 2001-08-19 (Commits 5945-5994 of 12744)

mgeisse 2001-08-26 16:17

moved the OBJ exporter to its plugin

56 lines of code changed in:

sunshine 2001-08-26 15:51

Eric Sunshine made the following changes to the project:

-*- Removed all event related code and functionality from csSystemDriver
and the cssys library as part of the continuing effort to eliminate
the monolithic system driver concept. All event related functionality
has been generalized and moved into the csutil library.

-*- Rather than the system driver being responsible for event related
activities, an object of type iEventQueue is now available to clients
via the shared object registry (iObjectRegistry) and is registered
with the name "crystalspace.event.queue".

-*- Added new SCF interface iEventQueue. All event-related activities in
CS are now performed by interacting with an object implementing this
interface. Everything related to a particular event queue is now
maintained by that queue rather than being manually maintained by the
system driver. Examples of ancillary functions and objects now
maintained by the event queue include event outlets, event cords, and
event handlers. iEventQueue provides the following main functions
(along with some other minor ones):

- Process(); Processes the event queue, dispatching each contained
event to the appropriate event handler. Also responsible for
sending the cscmdPreProcess and cscmdPostProcess events to
interested listeners. This method takes over all the major
functionality which used to be handled by iSystem::NextFrame().
Re-implemented iSystem::NextFrame() as a very thin cover over this
method.

- Dispatch(); Actually dispatches each event retrieved from the queue
by Process(). This method takes over all the major functionality
which used to be handled by iSystem::HandleEvent().

- RegisterListener(); Entities interested in listening for events
register with the event queue via this method. This replaces the
old iSystem::CallOnEvents() method. Also added RemoveListener() to
provide a way for entities to stop listening; and
ChangeListenerTrigger() to provide a way for entities to alter the
set of event types in which they are interested.

- CreateEventOutlet(); Returns a new event outlet to the caller.
Replaces iSystem::CreateEventOutlet().

- GetEventOutlet(); Returns the shared event outlet for this
particular event queue (for those cases where creating a new one is
overkill). Replaces iSystem::GetSystemEventOutlet().

- GetEventCord(); Returns the event cord for a particular category and
subcategory. Replaces iSystem::GetEventCord().

-*- The system driver now registers itself as an event listener with the
shared event queue just like all other modules which are interested in
events. This allows csSystemDriver to listen for the cscmdQuit event
in order to set its `Shutdown' variable appropriately. It also allows
the HandleEvent() method in subclasses of csSystemDriver to function
as expected. Note that this is a merely a temporary state of affairs,
as the system driver will soon cease to exist.

-*- Converted all applications, plugin modules, and other support code to
work with the new event system organization.

-*- Because the generic input drivers, csKeyboardDriver, csMouseDriver,
and csJoystrickDriver, are tied closely to event outlets, they were
also moved from cssys to csutil.

-*- The generic input drivers, csKeyboardDriver, csMouseDriver, and
csJoystrickDriver, are themselves now responsible for listening for
the cscmdFocusChanged event, rather than relying upon the system
driver to do so on their behalf.

-*- Added new SCF interfaces: iKeyboardDriver, iMouseDriver,
iJoystickDriver.

-*- Objects implementing iKeyboardDriver, iMouseDriver, and
iJoystickDriver are now made available via the shared object registry
(iObjectRegistry) under the following names, respectively:

crystalspace.driver.input.generic.keyboard
crystalspace.driver.input.generic.mouse
crystalspace.driver.input.generic.joystick

-*- Converted all applications and plugin modules to access the generic
drivers directly from the shared object registry rather than calling
upon iSystem methods to interact with these objects. Removed all
knowledge of these drivers from iSystem and csSystemDriver.

-*- Moved the utility functions csParseKeyDef() and csGetKeyDesc() in
cskeys.h and cskeys.cpp from cssys to csutil since they are totally
generic and have no platform-specific bindings.

-*- Fixed a nasty bug in csEventCord where it failed to unlock itself in
some cases when posting an event.

-*- Fixed a bad bug in csEventCord where it was leaking all events posted
to it.

-*- Fixed broken logic in iObjectRegistry::Unregister() where it did not
actually remove the entry for the object, but instead just left a
dangling (and potentially) dead pointer.

-*- iObjectRegistry implementation now correctly reference counts the
contained objects. It also now protects itself against modification
during its own destruction, since some of the objects which it is
removing from itself might also get destroyed and might try modifying
the registry.

-*- Moved mouse driver settings out of system.cfg and into mouse.cfg.
csMouseDriver is now responsible for accessing these settings itself
rather than relying upon the system driver to do so.

-*- Fixed bug in definition of SCF_IMPLEMENT_IBASE table for
csSystemDriver. The table neglected to mention that csSystemDriver
implements iObjectRegistry and iPluginManager. Added mention of
iPlugin which csSystemDriver now implements so that it can listen for
events from the event queue.

-*- Eliminated compilation warnings in aseie.cpp, dxfie.cpp, hrcie.cpp,
ivie.cpp, objie.cpp, povie.cpp, smfie.cpp, stlaie.cpp, and vlaie.cpp
about non-virtual destructor.

-*- Eliminated compilation warning about unused variable in md2ie.cpp.
Also fixed a memory leak.

-*- Eliminated compilation warning about `float' assigned to `int' in
spr2d.cpp.

-*- Fixed broken header-protection macros in intarray.h.

-*- Fixed g2dtest so that it once again actually displays a window. This
had been broken for quite some time.

-*- csSchedule no longer unnecessarily depends upon the system driver.

-*- csSchedule no longer publishes its private utility class.

-*- The cssys library no longer relies upon the csgeom library.

-*- Eliminated several compilation warnings from AWS. Worked around a
couple NextStep compiler shortcomings.

-*- Rewrote csRectRegion in csgeom so that it no longer relies upon the
csutil library. I think it is best if we keep csgeom free of any
csutil dependencies.

-*- Fixed csRectRegion so that, at destruction time, it no longer leaks
each of the csRect structures in its `region' list.

-*- Fixed the comment-style in csrectrg.h so that Doxygen will produce
proper documentation for csRectRegion.

-*- Repaired some overfull and underfull `hbox' warnings reported by TeX
for tutorial/wincvs/step1.txi.

-*- Finally, note that I eliminated quite a few unnecessary #include
directives from the event-related headers and from isys/system.h &
cssys/system.h. Since I am unable to test-compile every single port
of CS and every driver, port maintainers may have to add an #include
statement here and there in platform-specific and/or driver-specific
code.

2195 lines of code changed in:

sunshine 2001-08-26 15:43

Preparation for the removal of all event-related code and logic from
csSystemDriver and the cssys library. (Coming soon to a CVS repository
near you.) Moved the following files:

- evdefs.h and event.h from include/issys to include/iutil

- csevcord.h, csevent.h, cseventq.h, csinput.h, and cskeys.h from
include/cssys to include/csutil.

- csevcord.cpp, csevent.cpp, cseventq.cpp, csinput.cpp, cskeys.cpp,
and evoutlet.cpp from libs/cssys to libs/csutil.

1758 lines of code changed in:

mgeisse 2001-08-26 14:56

made the following changes:
- added the MDL converter to scf.cfg
- moved the OBJ importer to its plugin
- added LookChar, ReadTextInt, ReadTextFloat and SkipWhitespace to
csDataStream and fixed a bug in GetString.

446 lines of code changed in:

miklby 2001-08-26 02:58

- Update

7 lines of code changed in:

mgeisse 2001-08-25 14:40

made the following changes:
- moved the MDL importer to its plugin. It compiles but is not yet tested.
- added csDataStream::Skip().
- changed the Push() method of growing arrays to return the index of the
pushed element

151 lines of code changed in:

neverjade 2001-08-25 00:12

Added csRectRegion: an class for optimal sets of rectangles, supports including and excluding of non-contigous rectangular spaces. The region itself is non-contiguous, but operations can only be performed on rectangular areas.

A rect region is a class that implements splittable 2d rectangles. The region may be composed of one or more rectangles that do not need to occupy the same area. The idea being that you need to be able to have a number of disparate rectangular regions for updates. This class uses csRect for nearly all rectangle operations.

To use you can Include and Exclude rectangles from this region. When finished, this class will have a list of optimal rectangles that occupy a region. If used properly, it will result in faster overall painting performance, since several areas will not require overwriting.

228 lines of code changed in:

jorrit 2001-08-24 13:54

- Added iPolygonBuffer. This represents an object that holds the
most efficient way to represent a set of polygons for a given
3D renderer. For a software renderer the polygons can just be
stored as such. For a hardware renderer it may be more efficient
to store the polygons as a triangle mesh or a vertex fan/strip.
The vertex buffer manager also serves as the class that implements
polygon buffers. Polygon buffers are supposed to work together
with vertex buffers as the polygons are given as indices in such
a buffer. Implemented a primitive polygon buffer support for all
renderers.
Currently polygon buffers are not used. In the near future
DrawPolygonMesh will use them.
- Changed the way that vertex buffers work. In addition to the vertex
information that was already present there is now also texel (texture
mapping) and color information. This means the 3D renderer will also
be able to optimize for those. This also means that the vertex_colors
and texels arrays are gone from G3DTriangleMesh.

339 lines of code changed in:

jorrit 2001-08-24 13:53

Matze Braun <matze@braunis.de> and Jorrit investigated a bug with
the QInt() function which triggers on gcc 2.96 or higher (gcc 3) if
optimization level -O2 is selected (or higher). After speaking with
some people from the gcc community we discovered that this is
actually a bug in gcc and not a bug in the QInt() implementation
that we use. We came up with a work-arround which unfortunatelly
doesn't seem to work for MSVC. So Matze extended the configuration
pass by adding an additional test in bin/comptest.sh which tests
if this bug is present or not. This means that the right version
of QInt() will automatically be selected after you do 'make linux'
(or 'make win32gcc' whatever).

55 lines of code changed in:

jorrit 2001-08-24 13:52

Forgot to commit.

56 lines of code changed in:

jorrit 2001-08-24 12:36

Removed the 'extern "C"' arround the include of Python.h in the
python plugin. This caused problems with MSVC in combination with
Python 2.0. Since the extern "C" doesn't seem to be needed for
Python 1.5 I removed it. One disadvantage of this removal is that
there is now a warning about ignored pragma though.
Note that I could not remove the extern "C" in cs_pyth.cpp since
that file is automatically generated. We have to fix that somehow.

34 lines of code changed in:

jorrit 2001-08-24 08:34

Fixed ptlab and metademo. These apps were not calling
csInitializeApplication so a lot was missing in the object
registry. Some of the changes I did yesterday assumed that
there was an instance of iGraphics3D in the object registry.

4 lines of code changed in:

jorrit 2001-08-24 08:14

Fixed metaballs plugin so that it really works again now.
This caused walktest+flarge to crash.

26 lines of code changed in:

philwyett 2001-08-24 06:19

Reverted last change as there is a much better fix
by re-implementation of the classes and code, which
I'm currently working on.

3 lines of code changed in:

philwyett 2001-08-24 02:06

Fixed memory reference error related to init of object_reg.

This does not address crasher in new VertexBuffers - Yet ;-)

4 lines of code changed in:

neverjade 2001-08-23 21:28

Added ability to grab title bar of windows to move them.

55 lines of code changed in:

mgeisse 2001-08-23 17:15

- added the framework for an MDL converter
- fixed a bug in the MD2 converter

430 lines of code changed in:

jorrit 2001-08-23 15:54

- Fog should now work for the metaballs plugin.
- Started work on vertex buffer support in the 3D renderers. There is
now a new iVertexBufferManager which you can get by calling
iGraphics3D::GetVertexBufferManager(). The vertex buffer manager
manages objects of type iVertexBuffer. The plan is that everything
that wants to use vertex buffers creates one using the
vertex buffer manager. When the vertex buffer is going to be
used it must be locked.
- Modified G3DTriangleMesh to use the new vertex buffers. The
'num_vertices' field has gone (since that is now part of the vertex
buffer) and the 'vertices' array is replaced with a 'buffers'
array (DrawTriangleMesh currently supports maximum two such buffers).
- Put a default implementation of vertex buffers in
plugins/video/renderer/common/vbufmgr.*.
- Modified all renderers in cvs to support the vertex buffer feature
although the current implementation doesn't do anything special
yet (i.e. it will not perform better than the old system at the
moment).
- Modified all mesh object plugins in cvs to support the new
vertex buffer feature. The current implementation in case of
3D sprites is very naive at the moment. It will just use one
vertex buffer which is modified every time. This has to be fixed
later.
- Note that one implication of all this is that
iRenderView::CalculateFogMesh() for G3DTriangleMesh can only operate
on a mesh with locked vertex buffers.
- Added CS_ASSERT() at various places to make sure the locked status

810 lines of code changed in:

norman 2001-08-23 08:09

english spell police

1 lines of code changed in:

norman 2001-08-23 08:04

made a more intelligent (?) comment on GetFDU and alikes than just "GetFDU :-)"

6 lines of code changed in:

norman 2001-08-23 00:32

saved a few cycles in min_z calculation

12 lines of code changed in:

philwyett 2001-08-22 19:43

Removed ";" at end of "if()" which was creating a
compiler warning and empty control statement.

1 lines of code changed in:

jorrit 2001-08-22 14:56

Received a patch from Matze Braun <matze@braunis.de> which fixes
the apps crashing when plugins (reporter and standard reporter)
are missing. Added a bool return value to csInitializeApplication
for this purpose.

139 lines of code changed in:

jorrit 2001-08-22 12:44

Additional commit.

1 lines of code changed in:

jorrit 2001-08-22 12:44

- Added GetTransform() and SetTransform to iMeshFactoryWrapper.
This transform is a transformation relative to the parent of the
factory wrapper. It is only useful when a factory wrapper is part
of a hierarchy.
- Removed iMeshFactoryWrapper::GetChildTransform() as the transform
is now part of the iMeshFactoryWrapper itself.
- Generalized csMeshFactoryList (similar to csMeshList) so that
AddMeshFactory and RemoveMeshFactory can now be overriden by
subclasses for additional functionality.
- Added csMeshFactoryFactoryList which implements functionality
specific for keeping mesh factories in another mesh factory.
- Removed iMeshFactoryWrapper::GetChildCount, GetChild, AddChild,
and RemoveChild. Instead there is now
iMeshFactoryWrapper::GetChildren() which returns iMeshFactoryList.
- Removed SCF_DEBUG calls in OpenGL renderer. These are not needed.
- Removed iEngine::FindMeshWrapper, FindMeshFactory, and FindSector.
Use the FindByName in the respective lists instead (using GetSectors,
GetMeshes, and GetMeshFactories). To search for an object in
a region first get the current region and then call
iRegion::FindBla().

273 lines of code changed in:

norman 2001-08-22 00:22

added comment

4 lines of code changed in:

norman 2001-08-21 22:42

corrected comment, these are for 32 bit, not 16 bit

1 lines of code changed in:

philwyett 2001-08-21 19:20

Fixed compile error.

Added virtual SetParent () so MSVC can successfully instantiate.

1 lines of code changed in:

jorrit 2001-08-21 13:00

- Standardized csMeshList so that it can be reused better for other
mesh lists. This means that AddMesh and RemoveMesh are now virtual
functions in csMeshList so that they can be overriden by
subclasses.
- csSectorMeshList now inherits from csMeshList making that code
a lot easier.
- Added csEngineMeshList (subclass of csMeshList) which is now used
by the engine (instead of csMeshList).
- Added csMeshMeshList (subclass of csMeshList) to hold to children
of a mesh wrapper.
- Removed iMeshWrapper::GetChildCount, AddChild, RemoveChild,
and GetChild. Instead there is now GetChildren() which returns
an iMeshList.
- Added iMovable::SetParent().
- Removed a few warnings regarding not using the plugin manager.
- Fixed Blocks after yesterdays changes.

226 lines of code changed in:

jorrit 2001-08-21 08:08

- Made destructor of new MD2 importer virtual.
- Fixed makefile linking for MD2 importer.

2 lines of code changed in:

jorrit 2001-08-21 08:01

Update.

9 lines of code changed in:

philwyett 2001-08-20 23:22

I think Jorrit forgot to commit updated version of this file. :-)

pysimp -python now works again.

506 lines of code changed in:

philwyett 2001-08-20 23:13

Added CSTOOL to fix link error.

Manual update of MSVC project files.

1 lines of code changed in:

philwyett 2001-08-20 22:58

These changes are the ones necessary for successful
compilation of CSLUA plugin upon release of next version
of winlibs.

1 lines of code changed in:

mgeisse 2001-08-20 22:02

moved the MD2 importer to its plugin

199 lines of code changed in:

philwyett 2001-08-20 19:15

Removed duplicate commented out entry for cslua plugin.

Manually updated MSVC project files with CSLUA. This I do
not out of choice because of SWIG library (or lack of) for VC.

0 lines of code changed in:

jorrit 2001-08-20 16:31

Removed iSector::AddMesh, UnlinkMesh, GetMeshCount, and GetMesh (two
versions). Instead there is now iSector::GetMeshes() which returns
an implementation of iMeshList.

170 lines of code changed in:

jorrit 2001-08-20 13:18

- Added virtual destructor to csSpriteBuilderFile to remove warning.
- Made destructor of csModelConverterSPR private.
- Added iThingState::GetPortalPolygon() which returns the polygon
of the portal (given with index). It complements GetPortalCount()
and GetPortal().
- Added iPolygon3D::IntersectSegment, IntersectRay,
IntersectRayNoBackFace, IntersectRayPlane, and PointOnPolygon.
These functions were already in csPolygon3D.
- Removed the duplicate iMovable::AddSector(), GetSector(int), and
GetSectorCount(). This functionality is present through iSectorList
which you can get with iMovable::GetSectors(). Also actually added
the implementation for iSectorList::AddSector() and RemoveSector().
- iMovable::GetSectors() no longer returns a 'const' pointer since
you now have to use that object to actually add sectors.
- Completed iMeshWrapper::PlaceMesh(). The function currently has
the following limitations:
- Does not work correctly if the movable transform is not
orthonormal (i.e. the transform scales the object in some way).
In general this is not recommend either since there are other
parts of CS (like collision detection) that don't work well in
that case.
- PlaceMesh() only goes one level deep. i.e. it only checks
all portals in the current sector and adds the destination
sectors from those portals. It will not recurse into those
sectors to continue the test there. This limitation will only
be a problem if you have portals that are very close to each
other and an object happens to cross them all.
- This function ignores children of the mesh object. So only the
bounding sphere of the parent object is considered.
- This function will only test against portals of things that
cannot move (i.e. have flag CS_THING_MOVE_NEVER set).
- This function is not super-efficient as it assumes no previous
knowledge except for one sector. It would be nice to have
extra PlaceMesh() versions that take a displacement vector
and calculate the new set of sectors based on the old one
(assuming this can be done more efficiently).
- For huge sectors containing lots of portals or mesh objects
this function should be optimized. This can probably be done
by keeping an efficient portal representation structure on the
csSector level.
Otherwise it should work just fine but it is untested.

2286 lines of code changed in:

jorrit 2001-08-20 10:00

Update.

79 lines of code changed in:

sunshine 2001-08-20 09:49

Automated Texinfo @node and @menu repair.

2 lines of code changed in:

philwyett 2001-08-20 07:54

Changed from SCF config line from "crystalspace.sound.render.eax"
to "crystalspace.sound.render.ds3d", being EAX plugin is supposed
to be a higher layer on top of Direct Sound plugin.

1 lines of code changed in:

philwyett 2001-08-20 07:33

Removed EAX plugin SCF entry for testing purposes.

0 lines of code changed in:

philwyett 2001-08-20 07:29

Yet more header file define changes to bring into line
with CS's coding style and standard.

21 lines of code changed in:

philwyett 2001-08-20 07:17

Brought more header defines into line with CS
coding style and standards.

Renamed class: TextureTrans -> class csTextureTrans

69 lines of code changed in:

philwyett 2001-08-20 06:36

Cleaned up header defines and brought into line with
CS coding style and standards.

28 lines of code changed in:

philwyett 2001-08-20 05:58

Added a missing ")" and changed link to ssh for win32
from redeye entertainment to my personal webserver.

2 lines of code changed in:

philwyett 2001-08-20 05:47

Added "isotest" to app overview list.

Changed round MSVC 5 & 6 in menu of Windows build docs.

8 lines of code changed in:

miklby 2001-08-20 03:40

- Update

10 lines of code changed in:

miklby 2001-08-19 18:55

- Haze Mesh: Implement HitBeamBBox.

- Sprite2D: Implement HitBeamBBox and
HitBeamOutline. Modified SetupObject() to
always calculate the radius when the object
is setup, reguardless of the lighting setting.
Introduced a GetObjectBoundingBox method,
but it is as yet invalid. More work to be done
here yet.

- Sprite3D: Tidying up HitBeam.

114 lines of code changed in:

philwyett 2001-08-19 16:57

Re-inserted EAX after repair by Peter Nimmervoll - Many thanks.

Added EAX plugin to MSVC port and MSVCGEN process.

Manual update of MSVC project files.

Note:

To build the EAX plugin you will need the EAX 2.0 SDK
available from: "http://www.developer.creative.com" 10Mb
download. Please remember to add the "include" and "lib"
directories to point to the respective files in-order to
successfully compile.

388 lines of code changed in:

Pages: << Previous 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 Next >>


Generated by StatCvs v0.2-dev