mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-03-09 07:20:40 +00:00
Merge branch 'development' into EngineAPI-Refactor
This commit is contained in:
commit
3a71c75596
1937 changed files with 102332 additions and 70549 deletions
|
|
@ -645,12 +645,12 @@ void AnimationComponent::advanceThreads(F32 dt)
|
|||
|
||||
if (mOwnerShapeInstance && !isClientObject())
|
||||
{
|
||||
for (U32 i = 1; i < 32; i++)
|
||||
for (U32 stateIDx = 1; stateIDx < 32; stateIDx++)
|
||||
{
|
||||
if (mOwnerShapeInstance->getTriggerState(i))
|
||||
if (mOwnerShapeInstance->getTriggerState(stateIDx))
|
||||
{
|
||||
const char* animName = st.thread->getSequenceName().c_str();
|
||||
onAnimationTrigger_callback(this, animName, i);
|
||||
onAnimationTrigger_callback(this, animName, stateIDx);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -357,12 +357,12 @@ void CollisionTrigger::setTriggerPolyhedron(const Polyhedron& rPolyhedron)
|
|||
{
|
||||
mCollisionTriggerPolyhedron = rPolyhedron;
|
||||
|
||||
if (mCollisionTriggerPolyhedron.pointList.size() != 0) {
|
||||
if (mCollisionTriggerPolyhedron.mPointList.size() != 0) {
|
||||
mObjBox.minExtents.set(1e10, 1e10, 1e10);
|
||||
mObjBox.maxExtents.set(-1e10, -1e10, -1e10);
|
||||
for (U32 i = 0; i < mCollisionTriggerPolyhedron.pointList.size(); i++) {
|
||||
mObjBox.minExtents.setMin(mCollisionTriggerPolyhedron.pointList[i]);
|
||||
mObjBox.maxExtents.setMax(mCollisionTriggerPolyhedron.pointList[i]);
|
||||
for (U32 i = 0; i < mCollisionTriggerPolyhedron.mPointList.size(); i++) {
|
||||
mObjBox.minExtents.setMin(mCollisionTriggerPolyhedron.mPointList[i]);
|
||||
mObjBox.maxExtents.setMax(mCollisionTriggerPolyhedron.mPointList[i]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
@ -374,7 +374,7 @@ void CollisionTrigger::setTriggerPolyhedron(const Polyhedron& rPolyhedron)
|
|||
setTransform(xform);
|
||||
|
||||
mClippedList.clear();
|
||||
mClippedList.mPlaneList = mCollisionTriggerPolyhedron.planeList;
|
||||
mClippedList.mPlaneList = mCollisionTriggerPolyhedron.mPlaneList;
|
||||
// for (U32 i = 0; i < mClippedList.mPlaneList.size(); i++)
|
||||
// mClippedList.mPlaneList[i].neg();
|
||||
|
||||
|
|
@ -412,7 +412,7 @@ void CollisionTrigger::setTriggerPolyhedron(const Polyhedron& rPolyhedron)
|
|||
|
||||
bool CollisionTrigger::testObject(GameBase* enter)
|
||||
{
|
||||
if (mCollisionTriggerPolyhedron.pointList.size() == 0)
|
||||
if (mCollisionTriggerPolyhedron.mPointList.size() == 0)
|
||||
return false;
|
||||
|
||||
mClippedList.clear();
|
||||
|
|
@ -507,17 +507,17 @@ U32 CollisionTrigger::packUpdate(NetConnection* con, U32 mask, BitStream* stream
|
|||
// Write the polyhedron
|
||||
if (stream->writeFlag(mask & PolyMask))
|
||||
{
|
||||
stream->write(mCollisionTriggerPolyhedron.pointList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.pointList.size(); i++)
|
||||
mathWrite(*stream, mCollisionTriggerPolyhedron.pointList[i]);
|
||||
stream->write(mCollisionTriggerPolyhedron.mPointList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.mPointList.size(); i++)
|
||||
mathWrite(*stream, mCollisionTriggerPolyhedron.mPointList[i]);
|
||||
|
||||
stream->write(mCollisionTriggerPolyhedron.planeList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.planeList.size(); i++)
|
||||
mathWrite(*stream, mCollisionTriggerPolyhedron.planeList[i]);
|
||||
stream->write(mCollisionTriggerPolyhedron.mPlaneList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.mPlaneList.size(); i++)
|
||||
mathWrite(*stream, mCollisionTriggerPolyhedron.mPlaneList[i]);
|
||||
|
||||
stream->write(mCollisionTriggerPolyhedron.edgeList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.edgeList.size(); i++) {
|
||||
const Polyhedron::Edge& rEdge = mCollisionTriggerPolyhedron.edgeList[i];
|
||||
stream->write(mCollisionTriggerPolyhedron.mEdgeList.size());
|
||||
for (i = 0; i < mCollisionTriggerPolyhedron.mEdgeList.size(); i++) {
|
||||
const Polyhedron::Edge& rEdge = mCollisionTriggerPolyhedron.mEdgeList[i];
|
||||
|
||||
stream->write(rEdge.face[0]);
|
||||
stream->write(rEdge.face[1]);
|
||||
|
|
@ -555,19 +555,19 @@ void CollisionTrigger::unpackUpdate(NetConnection* con, BitStream* stream)
|
|||
{
|
||||
Polyhedron tempPH;
|
||||
stream->read(&size);
|
||||
tempPH.pointList.setSize(size);
|
||||
for (i = 0; i < tempPH.pointList.size(); i++)
|
||||
mathRead(*stream, &tempPH.pointList[i]);
|
||||
tempPH.mPointList.setSize(size);
|
||||
for (i = 0; i < tempPH.mPointList.size(); i++)
|
||||
mathRead(*stream, &tempPH.mPointList[i]);
|
||||
|
||||
stream->read(&size);
|
||||
tempPH.planeList.setSize(size);
|
||||
for (i = 0; i < tempPH.planeList.size(); i++)
|
||||
mathRead(*stream, &tempPH.planeList[i]);
|
||||
tempPH.mPlaneList.setSize(size);
|
||||
for (i = 0; i < tempPH.mPlaneList.size(); i++)
|
||||
mathRead(*stream, &tempPH.mPlaneList[i]);
|
||||
|
||||
stream->read(&size);
|
||||
tempPH.edgeList.setSize(size);
|
||||
for (i = 0; i < tempPH.edgeList.size(); i++) {
|
||||
Polyhedron::Edge& rEdge = tempPH.edgeList[i];
|
||||
tempPH.mEdgeList.setSize(size);
|
||||
for (i = 0; i < tempPH.mEdgeList.size(); i++) {
|
||||
Polyhedron::Edge& rEdge = tempPH.mEdgeList[i];
|
||||
|
||||
stream->read(&rEdge.face[0]);
|
||||
stream->read(&rEdge.face[1]);
|
||||
|
|
|
|||
|
|
@ -441,16 +441,15 @@ void PlayerControllerComponent::updateMove()
|
|||
|
||||
// get the head pitch and add it to the moveVec
|
||||
// This more accurate swim vector calc comes from Matt Fairfax
|
||||
MatrixF xRot, zRot;
|
||||
MatrixF xRot;
|
||||
xRot.set(EulerF(mOwner->getRotation().asEulerF().x, 0, 0));
|
||||
zRot.set(EulerF(0, 0, mOwner->getRotation().asEulerF().z));
|
||||
zRot.set(EulerF(0, 0, mOwner->getRotation().asEulerF().z));//reset prior uses
|
||||
MatrixF rot;
|
||||
rot.mul(zRot, xRot);
|
||||
rot.getColumn(0, &moveVec);
|
||||
|
||||
moveVec *= move->x;
|
||||
VectorF tv;
|
||||
rot.getColumn(1, &tv);
|
||||
rot.getColumn(1, &tv);//reset prior uses
|
||||
moveVec += tv * move->y;
|
||||
rot.getColumn(2, &tv);
|
||||
moveVec += tv * move->z;
|
||||
|
|
|
|||
|
|
@ -254,8 +254,8 @@ void MeshComponent::updateShape()
|
|||
|
||||
mOwner->getWorldToObj().mulP(pos);
|
||||
|
||||
min = mMeshAsset->getShape()->bounds.minExtents;
|
||||
max = mMeshAsset->getShape()->bounds.maxExtents;
|
||||
min = mMeshAsset->getShape()->mBounds.minExtents;
|
||||
max = mMeshAsset->getShape()->mBounds.maxExtents;
|
||||
|
||||
if (mInterfaceData)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue