Example #1
0
void Channel::frameClear( const eq::uint128_t& /*frameID*/ )
{
    if( stopRendering( ))
        return;

    _initJitter();
    resetRegions();

    const FrameData& frameData = _getFrameData();
    const int32_t eyeIndex = lunchbox::getIndexOfLastBit( getEye() );
    if( _isDone() && !_accum[ eyeIndex ].transfer )
        return;

    applyBuffer();
    applyViewport();

    const eq::View* view = getView();
    if( view && frameData.getCurrentViewID() == view->getID( ))
        glClearColor( 1.f, 1.f, 1.f, 0.f );
#ifndef NDEBUG
    else if( getenv( "EQ_TAINT_CHANNELS" ))
    {
        const eq::Vector3ub color = getUniqueColor();
        glClearColor( color.r()/255.f, color.g()/255.f, color.b()/255.f, 0.f );
    }
#endif // NDEBUG
    else
        glClearColor( 0.f, 0.f, 0.f, 0.0f );

    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
}
Example #2
0
	//-----------------------------------------------------------------------------
	Int CCampaignManager::preassignmentCampaignList( Int campaignNum,Int armyNum,U32 time )
	{
		clear();

		resetRegions();
		std::map<RegionIdType,Str16>::iterator itRegion = mRegionsCanCreate.begin();
		/////////////////////////////////////////////////////////////////////////////////////

		std::vector<CClient*>* clients = ThreadTaskManager::getInstance().getThreadClientVec(mThreadIndex);
		if (!clients)
		{
			return -1;
		}
		std::vector<CClient*>::size_type size = clients->size();
		if (size < armyNum
			|| size < 2)
		{
			return campaignNum;
		}
		std::vector<CClient*> tempClientsAttack;
		std::vector<CClient*> tempClientsDefense;
		Int i = 0;
		Int campCount = 0;

		for (std::vector<CClient*>::iterator it = clients->begin(); it != clients->end(); it++)
		{
			if( i % 2 == 0)
			{
				tempClientsAttack.push_back(*it);
			}
			else
			{
				tempClientsDefense.push_back(*it);
			}

			if (i % armyNum == armyNum - 1 || i == size - 1)
			{
				if (campCount >= campaignNum)
				{
					break;
				}
				CCampaign* campagin = MG_NEW CCampaign();	
				campagin->setOwned(true);
				campagin->addMember(FORCE_ATTACK,tempClientsAttack);
				campagin->addMember(FORCE_DEFENSE,tempClientsDefense);
				
				campagin->setRegionId(itRegion->first);
				tempClientsAttack.clear();
				tempClientsDefense.clear();
				campagin->setState(CCAMPAIGN_STATE_PREASSIGNMENT);
				mPreassignmentCampaigns.push_back(campagin);
				campCount++;
			}
			i++;
		}
		
		if (time)
		{
			mEndTime = MGTimeOp::getCurrTimestamp() + time;
		}
		mCtrlState = CampaignCtrlState_CanStart;
		return campaignNum - campCount;
	}