mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-15 08:34:40 +00:00
commit
d7042fb6c3
6 changed files with 26 additions and 9 deletions
|
|
@ -355,7 +355,7 @@ bool ParticleData::protectedSetSizes( void *object, const char *index, const cha
|
||||||
U32 i;
|
U32 i;
|
||||||
|
|
||||||
if (!index)
|
if (!index)
|
||||||
i = 0;
|
return (val >= 0.f && val <= MaxParticleSize);
|
||||||
else
|
else
|
||||||
i = dAtoui(index);
|
i = dAtoui(index);
|
||||||
|
|
||||||
|
|
@ -371,7 +371,7 @@ bool ParticleData::protectedSetTimes( void *object, const char *index, const cha
|
||||||
U32 i;
|
U32 i;
|
||||||
|
|
||||||
if (!index)
|
if (!index)
|
||||||
i = 0;
|
return (val >= 0.f && val <= 1.f);
|
||||||
else
|
else
|
||||||
i = dAtoui(index);
|
i = dAtoui(index);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1825,22 +1825,22 @@ void ParticleEmitter::setupOriented( Particle *part,
|
||||||
lVerts->point = start + crossDir;
|
lVerts->point = start + crossDir;
|
||||||
lVerts->color = partCol;
|
lVerts->color = partCol;
|
||||||
// Here and below, we copy UVs from particle datablock's texCoords (oriented)
|
// Here and below, we copy UVs from particle datablock's texCoords (oriented)
|
||||||
lVerts->texCoord = part->dataBlock->texCoords[0];
|
lVerts->texCoord = part->dataBlock->texCoords[1];
|
||||||
++lVerts;
|
++lVerts;
|
||||||
|
|
||||||
lVerts->point = start - crossDir;
|
lVerts->point = start - crossDir;
|
||||||
lVerts->color = partCol;
|
lVerts->color = partCol;
|
||||||
lVerts->texCoord = part->dataBlock->texCoords[1];
|
lVerts->texCoord = part->dataBlock->texCoords[2];
|
||||||
++lVerts;
|
++lVerts;
|
||||||
|
|
||||||
lVerts->point = end - crossDir;
|
lVerts->point = end - crossDir;
|
||||||
lVerts->color = partCol;
|
lVerts->color = partCol;
|
||||||
lVerts->texCoord = part->dataBlock->texCoords[2];
|
lVerts->texCoord = part->dataBlock->texCoords[3];
|
||||||
++lVerts;
|
++lVerts;
|
||||||
|
|
||||||
lVerts->point = end + crossDir;
|
lVerts->point = end + crossDir;
|
||||||
lVerts->color = partCol;
|
lVerts->color = partCol;
|
||||||
lVerts->texCoord = part->dataBlock->texCoords[3];
|
lVerts->texCoord = part->dataBlock->texCoords[0];
|
||||||
++lVerts;
|
++lVerts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6158,7 +6158,10 @@ U32 Player::packUpdate(NetConnection *con, U32 mask, BitStream *stream)
|
||||||
stream->writeFlag(!(mask & NoWarpMask));
|
stream->writeFlag(!(mask & NoWarpMask));
|
||||||
}
|
}
|
||||||
// Ghost need energy to predict reliably
|
// Ghost need energy to predict reliably
|
||||||
stream->writeFloat(getEnergyLevel() / mDataBlock->maxEnergy,EnergyLevelBits);
|
if (mDataBlock->maxEnergy > 0.f)
|
||||||
|
stream->writeFloat(getEnergyLevel() / mDataBlock->maxEnergy, EnergyLevelBits);
|
||||||
|
else
|
||||||
|
stream->writeFloat(0.f, EnergyLevelBits);
|
||||||
return retMask;
|
return retMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -230,6 +230,9 @@ bool ProjectedShadow::_updateDecal( const SceneRenderState *state )
|
||||||
lightCount++;
|
lightCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (mShapeBase)
|
||||||
|
fade *= mShapeBase->getFadeVal();
|
||||||
|
|
||||||
lightDir.normalize();
|
lightDir.normalize();
|
||||||
|
|
||||||
// No light... no shadow.
|
// No light... no shadow.
|
||||||
|
|
|
||||||
|
|
@ -290,6 +290,12 @@ bool MatInstance::init( const FeatureSet &features,
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
bool MatInstance::reInit()
|
bool MatInstance::reInit()
|
||||||
{
|
{
|
||||||
|
if (!mVertexFormat)
|
||||||
|
{
|
||||||
|
mIsValid = false;
|
||||||
|
return mIsValid;
|
||||||
|
}
|
||||||
|
|
||||||
SAFE_DELETE(mProcessedMaterial);
|
SAFE_DELETE(mProcessedMaterial);
|
||||||
deleteAllHooks();
|
deleteAllHooks();
|
||||||
mIsValid = processMaterial();
|
mIsValid = processMaterial();
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
|
|
||||||
#include "materials/materialFeatureTypes.h"
|
#include "materials/materialFeatureTypes.h"
|
||||||
#include "materials/materialFeatureData.h"
|
#include "materials/materialFeatureData.h"
|
||||||
|
#include "terrain/terrFeatureTypes.h"
|
||||||
|
|
||||||
void EyeSpaceDepthOutHLSL::processVert( Vector<ShaderComponent*> &componentList,
|
void EyeSpaceDepthOutHLSL::processVert( Vector<ShaderComponent*> &componentList,
|
||||||
const MaterialFeatureData &fd )
|
const MaterialFeatureData &fd )
|
||||||
|
|
@ -85,7 +85,12 @@ void EyeSpaceDepthOutHLSL::processPix( Vector<ShaderComponent*> &componentList,
|
||||||
LangElement *depthOutDecl = new DecOp( depthOut );
|
LangElement *depthOutDecl = new DecOp( depthOut );
|
||||||
|
|
||||||
meta->addStatement( new GenOp( "#ifndef CUBE_SHADOW_MAP\r\n" ) );
|
meta->addStatement( new GenOp( "#ifndef CUBE_SHADOW_MAP\r\n" ) );
|
||||||
meta->addStatement( new GenOp( " @ = dot(@, (@.xyz / @.w));\r\n", depthOutDecl, vEye, wsEyeVec, wsEyeVec ) );
|
|
||||||
|
if (fd.features.hasFeature(MFT_TerrainBaseMap))
|
||||||
|
meta->addStatement(new GenOp(" @ =min(0.9999, dot(@, (@.xyz / @.w)));\r\n", depthOutDecl, vEye, wsEyeVec, wsEyeVec));
|
||||||
|
else
|
||||||
|
meta->addStatement(new GenOp(" @ = dot(@, (@.xyz / @.w));\r\n", depthOutDecl, vEye, wsEyeVec, wsEyeVec));
|
||||||
|
|
||||||
meta->addStatement( new GenOp( "#else\r\n" ) );
|
meta->addStatement( new GenOp( "#else\r\n" ) );
|
||||||
|
|
||||||
Var *farDist = (Var*)Var::find( "oneOverFarplane" );
|
Var *farDist = (Var*)Var::find( "oneOverFarplane" );
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue