38void SceneHash::visitNodeCamera(NodeCamera &cam)
40 double *proj = cam.projectionMatrix();
41 for (
int i = 0; i < 16; i++) {
42 adler32((
uchar *)&proj[i],
sizeof(
double));
46void SceneHash::visitIndexedFaceSet(IndexedFaceSet &ifs)
48 const float *
v = ifs.vertices();
49 const uint n = ifs.vsize();
51 for (
uint i = 0; i < n; i++) {
52 adler32((
uchar *)&
v[i],
sizeof(
v[i]));
58void SceneHash::adler32(
const uchar *data,
int size)
61 uint32_t sum2 = (_sum >> 16) & 0xffff;
63 for (
int i = 0; i <
size; i++) {
67 _sum = sum1 | (sum2 << 16);
ATTR_WARN_UNUSED_RESULT const BMVert * v
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
static const int MOD_ADLER
static const char hex[17]