Module CS/plugins/mesh/partgen/

back to main page

Summary Period: 2001-06-11 to 2003-06-24

Modules

[root]/CS/plugins/mesh/partgen

Lines Of Code


Total Lines Of Code: 1419 (2003-07-11 20:29)

Authors

Author Changes Lines of code Lines per change
Totals 69 (100.0%) 1685 (100.0%) 24.4
jorrit 50 (72.5%) 881 (52.3%) 17.6
sunshine 5 (7.2%) 728 (43.2%) 145.6
philwyett 4 (5.8%) 29 (1.7%) 7.2
norman 4 (5.8%) 27 (1.6%) 6.7
matzebraun 2 (2.9%) 10 (0.6%) 5.0
miklby 2 (2.9%) 7 (0.4%) 3.5
res2002 1 (1.4%) 2 (0.1%) 2.0
vengeance2001 1 (1.4%) 1 (0.1%) 1.0

Most Recent Commits

res2002 2003-06-24 22:51

Alightly changed Win32 csGetPluginMetadata(): a .csplugin file
is looked for when the supplied file name has this extension.
Retrieving the resource from a .DLL is still tried in all cases.
This should make metadata retrieval a bit faster.
Fixed FR #759764 "Uninitialized members in partgen.cpp":
alphapersecond/alpha_now are now initialized to 0.0f resp. 1.0f.

2 lines of code changed in:

jorrit 2003-05-29 08:06

Replaced NULL with 0.

19 lines of code changed in:

jorrit 2003-05-21 11:15

Jorrit did various changes related to portal management:
- Moved iPortal definition from imesh/thing/portal.h to
iengine/portal.h. The reason is that portals are now an engine
concept and not only for things. The only portal implementation
is currently still in thing though.
- Added the ability to get the portal vertices from iPortal.
- Added iMeshObject->GetPortalCount() and iMeshObject->GetPortal().
- Also added default implementations of those to csMeshObject
(supporting no portals).
- At two places in the engine (GetNearbyObjects() and PlaceMesh())
this new function is used instead of first querying for
iThingState. This makes those functions a bit faster and is (in
theory) also more general (in the sense of being able to add
portals to any mesh object). However later on most functions
still query for iThingState so this promise of more generality
is not fulfilled yet.

2 lines of code changed in:

jorrit 2003-04-15 14:50

- Added new rain mesh object from Martin Geisse. This version looks
correct if you tilt the camera to look up and it is considerably
faster since it is using DrawTriangleMesh.
- Fixed csMeshObject default implementation a bit. The bounding box
stuff was not very good and the functions were not virtual so it
was not possible to override them.

583 lines of code changed in:

jorrit 2003-04-15 14:15

- Added the following functions to iObjectModel:
- GetPolygonMeshBase: Get a polygon mesh representing the
basic geometry of the object.
- SetPolygonMeshColldet: Set a polygon mesh representing the
geometry of the object. This mesh is useful for collision
detection. This can be used to replace the default polygon mesh
returned by GetPolygonMeshColldet() with one that has less
detail or even to support polygon mesh for mesh objects that
otherwise don't support it. The object model will keep a
reference to the given polymesh.
- SetPolygonMeshViscull: Similar to SetPolygonMeshColldet() but
now for visibility culling (occluder writing).
- Added csObjectModel helper class to csgeom to help implement object
models for mesh object plugins.
- Fixed all mesh object implementations to use the new csObjectModel.

7 lines of code changed in:

matzebraun 2003-04-08 20:19

added the Jamfiles

7 lines of code changed in:

jorrit 2003-02-14 20:39

Mesh objects used to have an old system where a particle system
could remove itself by returning true with WantToDie(). However
this system is slow since the engine has to check this flag
every frame. I replaced this with a new function in the engine
(which is also called WantToDie()). With that functions objects
(like particle systems) can schedule themselves so that they are
deleted the next frame. The engine will only have to check if
there are any sheduled deletions every frame. Much faster...

11 lines of code changed in:

jorrit 2002-12-18 12:10

- Removed 'culler_mesh' in csSector. That is no longer valid
with the removal of the octree.
- Added iMovable::IsTransformIdentity() and TransformIdentity().
With this feature the movable will track if the transform
is still an identity transform. If that's the case then some
entities (like engine and cullers) can optimize based on that
fact. These two functions also make sure the engine doesn't have
to use the equivalent thing flags to do the same optimization.
- Added csTransform::Identity() and IsIdentity().
- Also added iMovable::IsFullTransformIdentity() which corresponds
to the GetFullTransform() being an identity transform.
- Optimized Dynavis and Frustvis by using IsFullTransformIdentity()
and avoiding the transforms in that case.
- Additionally optimized all mesh objects and parts of the engine
to test for the identity transform and avoid some matrix
manipulations or even more in some cases.

3 lines of code changed in:

jorrit 2002-11-25 15:01

- Added a new CS_POLY_VISCULL flag with which it is possible to
enable/disable visibility culling for individual polygons (thing
mesh only). By default this flag is enabled except in the following
cases:
- Polygon has an <alpha> keyword.
- Image associated with the texture of this polygon has
keycolor.
- Image associated with the texture of this polygon has
an alpha map.
Note that it is the polygon loader in syntax services that
actually provides these defaults. If you manually create polygons
with the API the default is always true.
- Extended syntax services plugin with new <viscull> keyword that
you can use in a polygon to enable/disable visibility culling for
individual polygons. Similar to the <colldet> keyword.
- Renamed iObjectModel->GetSmallerPolygonMesh() to
GetPolygonMeshViscull() as this more closely describes what the
purpose is of this polygon mesh.
- Renamed iObjectModel->GetPolygonMesh() to GetPolygonMeshColldet().

2 lines of code changed in:

jorrit 2002-11-08 08:42

Dynavis and Frustvis now make sure that their update callbacks
(for when the object or movable changes) are protected against
multiple updates. i.e. when the update is in progress the
callback is disabled until the update is finished again. This
prevents infinite loop when the call to get the object bounding
box from the object resulted in a call to the callback and so on.

2 lines of code changed in:

vengeance2001 2002-11-03 08:50

Added spatial displacement differentials to keyframe animation of sprites.
This resulted in an extra parm to NextFrame, which is stubbed out in all
mesh subclasses and used in Sprite3d.

1 lines of code changed in:

jorrit 2002-11-02 08:04

Completed implementation of the new listener system in
iObjectModel. The next step will be to change the visibility
systems to actually use this new system.

13 lines of code changed in:

jorrit 2002-11-01 21:26

- Removed userdata from iMovableListener. It is not needed.
- Added new iObjectModelListener so you can listen to changes
in an object model. Implemented this partially in all
iObjectModel implementations (i.e. all mesh objects). The listeners
are not yet fired though.

26 lines of code changed in:

jorrit 2002-10-02 12:54

- Fixed 'bugplug' console command in walktest.
- Added iMeshObject functions: SetColor(), GetColor(),
SetMaterialWrapper(), and GetMaterialWrapper(). These functions
are conveniance functions so that it is easier to change
color/material for all objects without having to query
for the state interface. Not all mesh objects implement
those functions though. For example, a thing mesh object
doesn't implement either of them since it doesn't have a single
color or material (every polygon has its own color/material).
- The change above greatly simplifies the engine sequence manager
functions to set color and material.
- Started implementing the indexed versions of the operations in the
engine sequence manager.

18 lines of code changed in:

jorrit 2002-09-11 06:51

Further csPtr/csRef cleanups by removing the cast operator.

5 lines of code changed in:

jorrit 2002-09-10 14:34

Replaced csPtr<iBla> (NULL) with NULL everywhere since that is
cleaner and works just as well.

1 lines of code changed in:

jorrit 2002-09-08 22:11

- iObjectModel->CreateLowerDetailPolygonMesh() now returns a
csPtr.
- iFile->GetAllData() now returns a csPtr.

2 lines of code changed in:

jorrit 2002-09-06 09:31

- Changed iMeshObjectFactory->NewInstance() to return a csPtr.
- Changed iMeshObjectType->NewFactory() to return a csPtr.
- Fixed a bug in walktest (SetConfigOption) with missing
curly braces.
- Eliminated a lot of DecRef()'s in walktest by using
csRef.

6 lines of code changed in:

jorrit 2002-05-21 10:17

- Added new iObjectModel interface. This interface represents a
generic way to look at some geometry in object space. This
is the most generic way to look at a mesh object.
- Added iMeshObject::GetObjectModel() and added this to all
mesh object implementations...
- Removed iMeshObject::GetShapeNumber(), GetRadius(),
GetObjectBoundingBox(), and GetWriteObject() since these are now in
GetObjectModel().
- Removed iVisibilityObject::GetShapeNumber(), GetBoundingBox(),
and GetWriteObject(). Replaced with GetObjectModel().

41 lines of code changed in:

jorrit 2002-05-20 09:52

- csThing now implements GetWriteObject(). Currently it will
just return the full detail version of the thing. A lower
detail version is planned.
- Dynavis no longer uses iThingState. Instead it uses the
write object which is more general.
- Removed the construct trans1 * trans2.GetInverse() with
trans1 / trans2 at various places in the engine and other
plugins. This is a considerable implementation as the
latter is a lot faster.

1 lines of code changed in:

(28 more)


Generated by StatCvs v0.2-dev