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: 2002-06-24 to 2002-06-17 (Commits 8395-8444 of 12744)
- attempt to add some missing API documentation.
- moved csEvBind from binder.h to binder.cpp.
- added a pair of parentheses to defintion of
CS_ALLOC_STACK_ARRAY
371 lines of code changed in:
Fixed Texi comments so iImageIO shows up in PubAPI docs.
3 lines of code changed in:
ooops, forgot to remove some debug output
0 lines of code changed in:
rewrote awstimer a bit to avoid keeping a reference to the eventqueue which caused some nasty circular rererencing
30 lines of code changed in:
- windows and their child components are now destroyed if awsmanager goes down
- fixed bug in slot connection where the sink was not increfed
- fixed bugs in notebookbuttonbar and scrollbar destructors where some child components were decref'ed twice
14 lines of code changed in:
- Added csIntersect3::BoxSphere() function which tests intersection
between a box and a sphere.
- Extended iVisibilityCuller interface with two new VisTest()
variants that take a bounding box and bounding sphere. These
functions will mark all objects visible that intersect
with those bounding objects.
- Implemented Dynavis version of these functions.
- Implemented octree version of these functions. This implementation
is very naive though. It will not use the octree and instead
just traverses all objects to test them with the bounding
box or sphere.
- Changed iEngine->GetNearbyObjects() so that it will use the
new VisTest(sphere) function if there is a visibility culler.
That way GetNearbyObjects() will actually become a lot more
useful and faster if a culler is used.
- Completely rewrote the object iterator in the engine. It was
hard to understand and very buggy. The current one is a lot
more robust. GetNearbyObjects() now uses this.
- Walktest collision detection now uses GetNearbyObjects() for
a LOT faster moving around now. Especially in large levels that
have lots of mesh objects.
- GetNearbyObjects() now correctly supports portals (it will
check if the portal is in the given radius) and then
traverse the portal if needed. This does not (yet) work
for space warping portals though! This finally fixes the bug
when you walk around in the flarge street and you sink through
the floor :-)
- Removed the old csObjectIt class. csObjectListIt replaces it
(used by the updated GetNearbyObjects() function).
438 lines of code changed in:
added comment where to get the ode lib, what version is needed and what changes to the config have to be done.
5 lines of code changed in:
added an entry for the ode physics plugin (commented out)
1 lines of code changed in:
Small changes to Dynavis.
153 lines of code changed in:
Fixed a severe memory overwrite bug caused by out of bounds
line drawing in the DrawLine function of the tiled
coverage buffer.
58 lines of code changed in:
Fixed FRAME() output generated with 3ds2lev -3
13 lines of code changed in:
- Fixed a small bug in the adding of operations to a tiled
coverage buffer.
- Fixed a bug with Dynavis: it would crash if an object
didn't support a polygon mesh. Fixed this by using AABB
instead of OBB in that case.
- Fixed a bug in Dynavis::IntersectSegment(). The intersection
point was not correctly passed to the caller.
102 lines of code changed in:
updated system requirements documentation
57 lines of code changed in:
updated more of the directory hierarchy documentation
265 lines of code changed in:
Added workaround for freopen() problems in Cygwin
2 lines of code changed in:
Switched back to FindOBB()... Weird...
2 lines of code changed in:
- Fixed a bug in csSector::IntersectSegment() (which is used
in HitBeam() and other functions like that). Apparently if an
octree was used it would test all non-octree objects twice.
- Added iThingState::IntersectSegment().
- Implemented IntersectSegment() in Dynavis. It is a fairly
optimal implementation that will use the kd-tree for rough
front-to-back sorting and it will also test the segment
against the bounding box of the kdtree nodes and objects.
- For reasons totally unknown to me the FindOBB routine suddenly
started crashing. So for Dynavis I have no switched to
FindOBBAccurate(). This function is slower but it only happens
once so that's not a big problem usually. Will investigate later
to see what's going on.
- csSector::IntersectSegment() now uses the culler in general
and not only if it is an octree culler. That way all routines
that use csSector::IntersectSegment() are now speed up by
Dynavis.
- Some optimizations to Dynavis again.
198 lines of code changed in:
revised the feature set layout and updated some of the directory hierarchy listing
139 lines of code changed in:
Added C4514 warning to be squashed and hidden by MSVC 6
1 lines of code changed in:
updated feedback section of documentation
24 lines of code changed in:
- iDynamicSystem now has a default move callback member instead of
CreateDefaultMoveCallback(), and it gives this to all bodies when
creating them. The default can be retrieved with GetDefaultMoveCallback().
- Updated physics tutorial.
13 lines of code changed in:
Added iDynamicsMoveCallback, iDynamicSystem::CreateDefaultMoveCallback(), and iRigidBody::SetMoveCallback().
The application can now decide how to move body attachments after a dynamics step.
Updated physics tutorial to use these.
97 lines of code changed in:
updated resources section of documentation
38 lines of code changed in:
- csVisibilityObjectHistory is now an SCF class so that it can
be embedded more generally in the csKDTree.
- Every tree node also has a history object now. This way history
based culling (i.e. marking a node as visible if it was visible
previous frame) is now possible. In future this can also be
used for VTP (Visible Point Tracking). This optimization improved
Dynavis a bit again :-)
- Increased the time objects are considered visible (for history
culling).
171 lines of code changed in:
Rearranged declarations of index variables for msvc.
21 lines of code changed in:
- Added csOBBFrozen which is a frozen (more optimal) version of
csOBB. It will do the transformation once and cache them.
- Dynavis now uses OBB instead of AABB for the write queue
and for test object visibility (TestRectangle). This improves
the culling ability of Dynavis considerably.
- Added csOBBFrozen::ProjectOBB() to project an OBB to a
screen space box (similar to csBox3::ProjectBox()).
- Started work on csVisibilityObjectHistory class. This class
contains all history-related visibility information for an
object (and in the future also kdtree node). The reason
for this seperation is to make it easier later on to redesign
this to support multiple camera positions.
231 lines of code changed in:
- Considerably optimized AppendWriteQueue() in Dynavis. Profiling
showed that this is now the function that does most work.
The optimization I did makes this function a LOT faster but
less accurate meaning that the benefit of the write queue
will be less. In future we need to use the OBB instead of the
AABB to transform to camera space. That will improve accuracy
again without much additional performance cost.
- Added csOBB class to csgeom. This is a subclass of csBox3
representing an oriented bounding box (OBB). Thanks to Daniel
Duhprey for making this.
726 lines of code changed in:
Hinge patch by Duhprey.
6 lines of code changed in:
Duhprey's AttachColliderCylinder().
53 lines of code changed in:
Patch by technorama.
3 lines of code changed in:
changed fd_mask to fd_maskset due to type naming clash on freebsd
24 lines of code changed in:
Several additional optimizations on the tiled coverage buffer.
94 lines of code changed in:
- Fixed a bug in the TestRectangle of the tiled coverage buffer. This
bug would accidently mark some rectangles as visible even if they
were not.
- Optimized TestRectangle for Dynavis. Profiling shows that the
test of rectangle visibility is currently the function that
takes most time to calculate.
63 lines of code changed in:
more features documentation updates
87 lines of code changed in:
- Added 'toggle_freeze' command to Dynavis (assigned to alt-f
in BugPlug). This will freeze the current visibility status
of all objects. No further visibility testing will occur. If
the camera moves the visibility information valid at some
point will be unchanged so you can walk around the level
and see what is visible and not.
- Added 'exact_freeze' command to Dynavis (assigned to ctrl-f
in BugPlug). This will first compute exact visibility with
the (slow) exact visibility culler. Then it will freeze
that result. This will give the theoretical maximum performance
that a hypothetical zero-cost visibility culler could give.
This is the upper limit for Dynavis. Dynavis cannot get faster
than that. In order to improve speed further rendering optimizations
have to be done like DrawPolygonMesh and so on.
- Fixed the exact visibility culler in Dynavis so that it actually
correctly clips polygons that go out of screen and out of
the Z=0 plane. Without this fix the results of the exact
visibility culler were actually not relevant.
- Added an entry to the FAQ about states and mesh wrappers.
- Added an entry to the FAQ to clarify reference counting.
221 lines of code changed in:
initial documentation updates
203 lines of code changed in:
Added a comment to indicate that the OFTEN moving option is not
yet supported.
2 lines of code changed in:
'j' adds a jointed body.
50 lines of code changed in:
iJoint patch by Duhprey allowing setting of parameters before attaching body.
3 lines of code changed in:
Fix.
3 lines of code changed in:
Vistest/debug framework screenshots.
29 lines of code changed in:
- Fixed TestRectangle() so it does a smarter test now.
- Tiled coverage culling starts to work now. Time to optimize
a bit :-)
307 lines of code changed in:
- Extended iBugPlug interface with functions to setup a debug
view. This is a 2D view on which you can render one general
object (provided by application or plugin, this is done by
implementing iBugPlugRenderObject) and then a set of points
and lines.
- Added 'debugview' command to BugPlug to switch to this view.
Assigned alt-s key to this command.
- Added new 'setup_debugview' Dynavis command which setups the
debug view for testing of the tiled coverage buffer. Assigned
this command to the 's' key. This command will setup the
debug view with three outlines that are rendered on the tiled
coverage buffer.
- Extended BugPlug so that you can now drag the points.
- Implemented the graphical dump of the tiled coverage buffer.
This is now used in the setup_debugview command.
- Optimized the tiled coverage buffer by improving the check
if a tile can is full.
- Fixed a bug where tiles which are full where not marked as
dirty even though they have to be marked.
630 lines of code changed in:
"
2 lines of code changed in:
Fixed bug in csconf.make which left a bogus csconfig.tmp file laying
about in the CS root directory.
3 lines of code changed in:
M
2 lines of code changed in:
*** empty log message ***
1 lines of code changed in:
Duhprey's iJoint interface and implementation. Looks good.
382 lines of code changed in:
New feature from GoGi: csString::FormatV() which also takes va_list.
28 lines of code changed in:
- Worked further on the tiled coverage buffer in Dynavis.
- Fixed bug in handling of 'analyze_vis' command in Dynavis.
- Tiled coverage buffer is still not working properly. Work
in progress.
281 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