⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch17p2_constspeedmelttransition.cpp

📁 游戏开发特殊技巧-special.effects.game.programming
💻 CPP
字号:
#include "Ch17p2_ConstSpeedMeltTransition.h"


void CConstSpeedMeltTransition::SetDuration(const float data) 
{ 
  CTransition::SetDuration(data);
  m_FallSpeed.m_Min = 2.0f / m_fDuration;
  m_FallSpeed.m_Max = 7.0f / m_fDuration;

  m_ColumnDropSpeed.clear();

  for (int q=0; q < m_iNumVertsX; q++) {
    m_ColumnDropSpeed.push_back(m_FallSpeed.GetRandomNumInRange());
  }
}

void CConstSpeedMeltTransition::DoTransition(float fTransTime)
{
  m_fFadeTime += fTransTime;

  HRESULT hr;
  VERTEX_XYZ_DIFFUSE_TEX1* pVertices; 
 
  if( FAILED( hr = m_pVBMelt->Lock( 0, m_iNumVertsX*m_iNumVertsY*sizeof(VERTEX_XYZ_DIFFUSE_TEX1), 
      (BYTE**)&pVertices, 0 ) ) )
    return;

  float fTotalSize = 2.0f;
  float fSizeDiv2 = fTotalSize / 2.0f;
  for (int x=0; x < m_iNumVertsX; x++) {
    for (int y=0; y < m_iNumVertsY; y++) {
      pVertices[(y*m_iNumVertsX)+x].position.y -= m_ColumnDropSpeed[x] * fTransTime;
    }
  }
  if(FAILED(hr = m_pVBMelt->Unlock())) return;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -