本文整理汇总了C++中ObjectBase::drawNext方法的典型用法代码示例。如果您正苦于以下问题:C++ ObjectBase::drawNext方法的具体用法?C++ ObjectBase::drawNext怎么用?C++ ObjectBase::drawNext使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ObjectBase
的用法示例。
在下文中一共展示了ObjectBase::drawNext方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: UnLink
//=============================================================================
// リンク解除
//=============================================================================
void DrawList::UnLink(ObjectBase* object)
{
// 存在チェック
if(object->drawList(m_shaderPatternId) == nullptr)
return;
ObjectBase* prev = object->drawPrev(m_shaderPatternId);
ObjectBase* next = object->drawNext(m_shaderPatternId);
int priority = object->priority(m_shaderPatternId);
//----------------------------
// 前オブジェクトの再設定
//----------------------------
object->drawPrev(m_shaderPatternId, nullptr);
if(prev != nullptr)
{
// 前オブジェクトに次オブジェクトを連結
prev->drawNext(m_shaderPatternId, next);
}
else
{
// 先頭オブジェクトを変更
m_top[priority] = next;
if(m_top[priority] != nullptr)
// 先頭の前をnullptrに
m_top[priority]->drawPrev(m_shaderPatternId, nullptr);
}
//----------------------------
// 次オブジェクトの再設定
//----------------------------
object->drawNext(m_shaderPatternId, nullptr);
if(next != nullptr)
{
// 次オブジェクトに前オブジェクトを連結
next->drawPrev(m_shaderPatternId, prev);
}
else
{
// 終端オブジェクトを変更
m_end[priority] = prev;
if(m_end[priority] != nullptr)
// 終端をnullptrに
m_end[priority]->drawNext(m_shaderPatternId, nullptr);
}
//----------------------------
// 描画リストを解除
//----------------------------
object->drawList(nullptr, m_shaderPatternId);
}
示例2: AllDraw
//=============================================================================
// 全オブジェクトの描画
//=============================================================================
void DrawList::AllDraw(LPD3DXCONSTANTTABLE vsc, LPD3DXCONSTANTTABLE psc, D3DXMATRIX vp)
{
ObjectBase* cur = nullptr;
for(int cnt = 0; cnt < m_priorityLevel; ++cnt)
{
cur = m_top[cnt];
while(cur)
{
cur->Draw(vsc, psc, vp);
cur = cur->drawNext(m_shaderPatternId);
}
}
}