- Katılım
- 14 Eki 2021
- Konular
- 279
- Mesajlar
- 1,455
- Çözüm
- 12
- Online süresi
- 4mo 28d
- Reaksiyon Skoru
- 1,509
- Altın Konu
- 5
- TM Yaşı
- 4 Yıl 7 Ay 25 Gün
- Başarım Puanı
- 227
- MmoLira
- 3,445
- DevLira
- 30
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
Selam beyler,
Bildiğimiz gibi, bir ani-image içinde çok fazla resim varsa, yüklenmesi gerçekten yavaş olabilir ve oyunun bir an için donmasına neden olabilir. Bu bizi gerçekten sınırlıyor çünkü kullanıcı deneyimi üzerinde kötü bir etkisi olacağından daha uzun bir görüntü dizisi kullanamıyoruz.
Bazı öğreticilerimizi birleştirerek 126 görüntüden oluşan bir dizi oluşturdum, işte eski (sol) ve yeni (sağ) sürümü gösteren bir karşılaştırma GIF'i.
std::vector<CGraphicExpandedImageInstance*> m_ImageVector;
altına ekle
std::queue<std::string> m_ImageFileNames;
std::function<void(CGraphicExpandedImageInstance*)> m_SetRenderingRect, m_SetRenderingMode, m_SetDiffuseColor;[/CODE]
[CODE title="EterPythonLib/PythonWindow.cpp"]arat ve bu kod ile değiştir
void CAniImageBox::AppendImage(const char * c_szFileName)
{
m_ImageFileNames.push(c_szFileName);
}
tekrar arat
CAniImageBox::OnUpdate
kodun içine ekle
if (!m_ImageFileNames.empty())
{
const std::string& stFileName = m_ImageFileNames.front();
CResource* pResource = CResourceManager::Instance().GetResourcePointer(stFileName.c_str());
if (pResource->IsType(CGraphicImage::Type()))
{
CGraphicExpandedImageInstance* pImageInstance = CGraphicExpandedImageInstance::New();
pImageInstance->SetImagePointer(static_cast<CGraphicImage*>(pResource));
if (pImageInstance->IsEmpty())
{
CGraphicExpandedImageInstance:
elete(pImageInstance);}
else
{
pImageInstance->SetPosition(m_rect.left, m_rect.top);
if (m_SetRenderingRect)
m_SetRenderingRect(pImageInstance);
if (m_SetRenderingMode)
m_SetRenderingMode(pImageInstance);
if (m_SetDiffuseColor)
m_SetDiffuseColor(pImageInstance);
m_ImageVector.push_back(pImageInstance);
}
}
m_ImageFileNames.pop();
}
arat ve değiştir
void CAniImageBox::SetRenderingRect(float fLeft, float fTop, float fRight, float fBottom)
{
m_SetRenderingRect = std::bind(&CGraphicExpandedImageInstance::SetRenderingRect, std:
laceholders::_1, fLeft, fTop, fRight, fBottom);std::for_each(m_ImageVector.begin(), m_ImageVector.end(), m_SetRenderingRect);
}
arat ve değiştir
void CAniImageBox::SetRenderingMode(int iMode)
{
m_SetRenderingMode = std::bind(&CGraphicExpandedImageInstance::SetRenderingMode, std:
laceholders::_1, iMode);std::for_each(m_ImageVector.begin(), m_ImageVector.end(), m_SetRenderingMode);
}
arat ve değiştir
void CAniImageBox::SetDiffuseColor(float fR, float fG, float fB, float fA)
{
m_SetDiffuseColor = std::bind(&CGraphicExpandedImageInstance::SetDiffuseColor, std:
laceholders::_1, fR, fG, fB, fA);std::for_each(m_ImageVector.begin(), m_ImageVector.end(), m_SetDiffuseColor);
}
arat ve değiştir
void CAniImageBox::OnChangePosition()
{
std::for_each(m_ImageVector.begin(), m_ImageVector.end(),
std::bind(&CGraphicExpandedImageInstance::SetPosition, std:
laceholders::_1, m_rect.left, m_rect.top));}[/CODE]
ve bu kadar. İyi forumlar.
Distraught'a Teşekkürler.
Distraught'a Teşekkürler.
En Çok Reaksiyon Alan Mesajlar
Bu hali eksik, kullananlar sorun yaşar. ClearImages fonksiyonu da düzenlenmeli.
C++:void CAniImageBox::ClearImages() { while (!m_ImageFileNames.empty()) m_ImageFileNames.pop(); for_each(m_ImageVector.begin(), m_ImageVector.end(), CGraphicExpandedImageInstance::DeleteExpandedImageInstance); m_ImageVector.clear(); }
Eline sağlık
Paylaşım için teşekkürler cano
Paylaşım için teşekkürler
- Katılım
- 29 Mar 2020
- Konular
- 31
- Mesajlar
- 754
- Online süresi
- 4mo 13d
- Reaksiyon Skoru
- 213
- Altın Konu
- 0
- Başarım Puanı
- 111
- MmoLira
- 8,959
- DevLira
- 54
Eline sağlık
- Katılım
- 7 May 2010
- Konular
- 10,579
- Mesajlar
- 58,614
- Çözüm
- 219
- Online süresi
- 10mo 29d
- Reaksiyon Skoru
- 16,721
- Altın Konu
- 444
- TM Yaşı
- 16 Yıl 1 Ay 3 Gün
- Başarım Puanı
- 691
- MmoLira
- 19,925
- DevLira
- 601
Paylaşım için teşekkürler.
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 22
- Görüntüleme
- 3K
- Cevaplar
- 31
- Görüntüleme
- 7K
- Cevaplar
- 26
- Görüntüleme
- 5K
- Cevaplar
- 20
- Görüntüleme
- 4K
- Cevaplar
- 132
- Görüntüleme
- 32K




