physics
Kuo-Wen Lo Sunday, May 20, 2001 at 05:53:05 (PDT)We've tried and tested out the World Management System, it finally works well enough to use. Now we are able to produce and maintain other entities than just players in the world. Since projectiles aren't completed yet, our rocket fires out red blocks, this rocks! Now, it would be cool if the rockets MOVE forward instead of sitting there....
Kevin Thursday, May 17, 2001 at 12:32:48 (PDT) I changed physics.cpp so that now it takes
a Bob pointer and a set of actions compacted
in a single byte. I also changed Server.cpp
so that it calls WMS::insert when a new player
is created. I modified WMS::insert and now it
creates a Bob object and returns a pointer to it.
Kevin Sunday, May 13, 2001 at 23:58:26 (PDT) The physics engine has been loaded into wincvs. The big structure is finished next thing to do is to integrate with the game. In order to do that server needs to create entities based on inputs. Then I will modify physics engine so that it can figure out which player any given entity is associated with. Collision will be handled by Craig. My next week's goal is, under John's help since he is very familiar with server code, add in functions to create entities and ultimately debug physics engine. The biggest accomplishment of this week is that I am finally clear about how physics engine will fit into the game and what other things have to implemented to make it happen.
Kevin Monday, May 07, 2001 at 14:45:26 (PDT) Very sorry, just realized each team member has to write a status report.
OK, so far, the physics engine has a entity class, vector class, and overloaded operators to do dot and cross products. Each entity object has linear velocity, rotational velocity, a vector of accelerations(external forces), a pass_time() function to calculate the next location, and a collision detection function which detects collision between entities(not yet implemented). Each acceleration object has acceleration vector, max velocity, and time left to accelerate.
Last week I wrote a function called physics.cpp which gets a packet of keyboard inputs, decodes them and inserts appropriate acceleration objects into the entity's acc vector. The hard part is to keep track of current state so that the transition can be smooth.
Next goal is to finish up collision detection and integrate with the game.
John Rapp Monday, April 23, 2001 at 15:11:58 (PDT) I feel I've pretty much dropped the ball this past week. With no network access at home, I've only been able to work in the lab, plus a project from another class took up a lot of time.
But now my network is back, I have nothing to do for the rest of the quarter, and I'm ready to rock =)
I need some code from kuowen to start integrating that into the physics engine. I looked at the network code, and that looks exactly like what we need.
I know Craig is working on the octree to allow for easier collision detection, but I've done that sort of thing before, and I don't think it's going to be appropriate collision detection for our game.
We really don't need to generalize it too much, because we don't have to collide that many different objects, and what we do have to collide can be done quite easily with normal math (little or no triangle intersections involved in most cases
This all hinges on the way we are going to describe the world though, and I think we should all get together and come to a consensus on exactly what we're trying to accomplish and what we need to do to achieve it.
John
Yoway Buorn Friday, April 20, 2001 at 15:44:02 (PDT) Test with Redirection
John Rapp, 04/15/01
On the physics front, we've set up a framework that allows us to
describe an
entity's location, various rotation angles, and current velocity/accelerations.
We've put together a some rudimentary collision detection stuff,
though that
isn't quite complete, as we still need to decide some issues with
respect to
the way maps will be handled.
I've also put together a small function that will generate a random
height
field that could be used as the terrain for a map. Additionally,
I've been
researching methods for displaying the height field optimally depending
on where you are (essentially putting more triangles closer to the
eye), as well as a fast method for frustum culling to be used by
the rendering engine.
|