Exemplo n.º 1
0
b3DynamicBvhBroadphase::b3DynamicBvhBroadphase(int proxyCapacity, b3OverlappingPairCache* paircache)
{
	m_deferedcollide	=	false;
	m_needcleanup		=	true;
	m_releasepaircache	=	(paircache!=0)?false:true;
	m_prediction		=	0;
	m_stageCurrent		=	0;
	m_fixedleft			=	0;
	m_fupdates			=	1;
	m_dupdates			=	0;
	m_cupdates			=	10;
	m_newpairs			=	1;
	m_updates_call		=	0;
	m_updates_done		=	0;
	m_updates_ratio		=	0;
	m_paircache			=	paircache? paircache	: new(b3AlignedAlloc(sizeof(b3HashedOverlappingPairCache),16)) b3HashedOverlappingPairCache();
	
	m_pid				=	0;
	m_cid				=	0;
	for(int i=0;i<=STAGECOUNT;++i)
	{
		m_stageRoots[i]=0;
	}
#if B3_DBVT_BP_PROFILE
	b3Clear(m_profiling);
#endif
	m_proxies.resize(proxyCapacity);
}
Exemplo n.º 2
0
b3Barrier*	b3Win32ThreadSupport::createBarrier()
{
	unsigned char* mem = (unsigned char*)b3AlignedAlloc(sizeof(b3Win32Barrier),16);
	b3Win32Barrier* barrier = new(mem) b3Win32Barrier();
	barrier->setMaxCount(getNumTasks());
	return barrier;
}
Exemplo n.º 3
0
b3CriticalSection* b3Win32ThreadSupport::createCriticalSection()
{
	unsigned char* mem = (unsigned char*) b3AlignedAlloc(sizeof(b3Win32CriticalSection),16);
	b3Win32CriticalSection* cs = new(mem) b3Win32CriticalSection();
	return cs;
}