cemalggevenc 1
cemalggevenc
Bvural41 1
Bvural41
yarka0000 1
yarka0000
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle

Cevaplanmadı dx9ex geçil sonrası problemler

  • Konuyu başlatan Konuyu başlatan apikomt2
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 77

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

1780997122312.png


burası karakter ekranındna entere basınca gpu fırlıyor.
if (m_stFileName.empty())
{
// 폰트 텍스쳐
if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, D3DUSAGE_DYNAMIC, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, nullptr)))
return false;
}

D3DUSAGE_DYNAMIC
burayı 0 statik bıraksam
düzeliyor ama yazılar gözükmüyor
nasıl çözeceğimi bulamadım


Kod:
bool CGraphicImageTexture::CreateDeviceObjects()
{
    assert(ms_lpd3dDevice != NULL);
    assert(m_lpd3dTexture == NULL);

    if (m_stFileName.empty())
    {
        // 폰트 텍스쳐
        if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, D3DUSAGE_DYNAMIC, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, nullptr)))
            return false;
    }
    else
    {
        auto fp = GetVfs().Open(m_stFileName.c_str(), kVfsOpenFullyBuffered);
        if (!fp)
            return false; // nullptr yerine bool döndürülmeli

        const auto size = fp->GetSize();

        storm::View data(storm::GetDefaultAllocator());
        fp->GetView(0, data, size);

        return CreateFromMemoryFile(size, data.GetData());
    }

    m_bEmpty = false;
    return true;
}
 
bazı formatlar dynamic istiyor bazıları istemiyor, kontrolünü bu şekilde düzenle

Kod:
        if (m_d3dFmt == D3DFMT_A8R8G8B8 || m_d3dFmt == D3DFMT_A4R4G4B4)
        {
            if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, D3DUSAGE_DYNAMIC, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, NULL)))
                return false;
        }
        else
        {
            if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, 0, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, NULL)))
                return false;
        }
 
bazı formatlar dynamic istiyor bazıları istemiyor, kontrolünü bu şekilde düzenle

Kod:
        if (m_d3dFmt == D3DFMT_A8R8G8B8 || m_d3dFmt == D3DFMT_A4R4G4B4)
        {
            if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, D3DUSAGE_DYNAMIC, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, NULL)))
                return false;
        }
        else
        {
            if (FAILED(ms_lpd3dDevice->CreateTexture(m_width, m_height, 1, 0, m_d3dFmt, D3DPOOL_DEFAULT, &m_lpd3dTexture, NULL)))
                return false;
        }


D3DUSAGE_DYNAMIC dx8 ve 9 da bu kullanılmıyor D3DPOOL_managemnt kullnıyor bu otomatik ayarlıyor
ama 9exde D3DPOOL_DEFAULT olması gerekiyor.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst