Esempio n. 1
0
void TMovieCue::HandlePlayback(uint32 theTime)
{	
	//	Calculate the frame for this time
	m_CurrentVideoFrame = (theTime - m_StartTime) / m_MSecsPerFrame;
		
	//	Check for out of bounds.  Set to last frame of file.
	if (m_CurrentVideoFrame >= m_Reader->VideoFrameCount())
		m_CurrentVideoFrame = m_Reader->VideoFrameCount() - 1;
	
	//	Get the frame
	AVIVideoFrame *theFrame = (AVIVideoFrame *)m_Reader->GetVideoFrameList()->ItemAt(m_CurrentVideoFrame);
	if (!theFrame)
	{
		printf("AVIProducer::INVALID FRAME!\n");
		return;
	}
		
	//	Decode frame
	bool retVal = m_VideoCodec->DecodeFrame(theFrame, m_Bitmap->Bits(), B_RGB32);
	if (!retVal)
	{
		printf("AVIProducer::DecodeFrame FAILURE!\n");
		return;
	}

	//	Process with any effects
	RenderData(theTime, m_CuePosition->Enclosure(false));
}
Esempio n. 2
0
Layer_D3D::RenderData& Layer_D3D::getNewRenderData()
{
	m_renderData.push_back(RenderData());
	RenderData &renderData = m_renderData.back();
	renderData.instanceData.rotationDepth.y = (float)m_layerIndex++;
	return renderData;
}
Esempio n. 3
0
//-----------------------------------------------------------------------------
// Monster data
//-----------------------------------------------------------------------------
void init()
{
    {
        // Player
        MonData& d = data[(size_t)MonId::player];
        d.render_d = RenderData('@', clr_white_high);
        d.speed = 100;
        d.life = 8;
        d.energy = 20;
    }
    {
        // Humanoid mutant
        MonData& d = data[(size_t)MonId::mutant_humanoid];
        d.render_d = RenderData('P', clr_white);
        d.speed = 80;
        d.life = 8;
        d.energy = 20;
    }
}
   void EndBitmapRender()
   {
      DrawElement &e = mBitmapBuffer.mElements[0];

      if (e.mCount)
      {
         RenderData(mBitmapBuffer,0,mBitmapTrans);
         e.mCount = 0;
      }

      if (e.mSurface)
      {
         e.mSurface->DecRef();
         e.mSurface = 0;
      }
      mBitmapBuffer.mArray.resize(0);
      mBitmapTexture = 0;
   }
   void Render(const RenderState &inState, const HardwareData &inData )
   {
      if (!inData.mArray.size())
         return;

      SetViewport(inState.mClipRect);

      if (mModelView!=*inState.mTransform.mMatrix)
      {
         mModelView=*inState.mTransform.mMatrix;
         CombineModelView(mModelView);
         mLineScaleV = -1;
         mLineScaleH = -1;
         mLineScaleNormal = -1;
      }
      const ColorTransform *ctrans = inState.mColourTransform;
      if (ctrans && ctrans->IsIdentity())
         ctrans = 0;

      RenderData(inData,ctrans,mTrans);
   }
Esempio n. 6
0
 virtual RenderData render_data() const
 {
     return RenderData();
 }