Ana Menü
· Ana Sayfa
· Dosyalar
· Dökümanlar
· Forum
· Günün Resmi
· Haber Arşivi
· WWW Linkleri
· Üye Listesi

     Forumlar

 strncpy ve strncpy_s
 Konu adi : Borland c++ Builder ile Amiral Batti
 Rady10 - YerliOyun
 Kabusta Kaybolmak
 Konsol da programı bekletmek
 Oyun programlama icin hangi programlama dilli ?
 flash! şanlıurfa bilgisayar oyununda(no rapid)
 Sevgilim Olur musun?
 Directx'e başlamak isteyenler bi bakın
 PSP programlama
 Flash tan php
 Bilgisyr oyunu yapmam için üniverstde hangi bölüme girmeliym
 www.arshiv.gen.ms
 Cimg.h ilgilenenler icin
 müttefik oyunu

Konu Disi
 Emraah
 Yeni sitemiz açıldı
 Kalp krizi durumunda ne yapılmalı?
 Oyun sektöründe hangi görevde çalışmak isterdiniz?
 Takım arkadaşı sorunu
 msn de renklı nıck
 pc hata veriyor ! YARDIM!!
 Gülmek isteyenler Buraya
 İnanılmaz hl 2 modu görüntüsü
 Computer Languages History

[ Forumlara Git ]


oyunyapimi.org: Forums

www.oyunyapimi.org :: Başlığı Görüntüle - directx alpha sorunu
 SSSSSS   AramaArama   Kullanıcı GruplarıKullanıcı Grupları   ProfilProfil   LoginLogin 

directx alpha sorunu
Sayfa Önceki  1, 2
 
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> OpenGL, DirectX
Önceki başlık :: Sonraki başlık  
Yazar Mesaj
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Fri Jul 01, 2005 12:07 pm    Mesaj konusu: Alıntıyla Cevap Ver

ya arkadaşlar akşam benim bilgisayarda çalıştı şimdi internet kafeye geldim b#k gibi bişeyle karşılaştım noluyor yaw benim bilgisayarmı bozuk acaba

edenediğim tnt2 P2 400 xp
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Fri Jul 01, 2005 12:35 pm    Mesaj konusu: Alıntıyla Cevap Ver

internet kafede derleyici olmadığı için asmde crakladım burdaki bilgisayarda çalıştı birde siz bakın


http://www.free-webhosting.com/devreci/progs/3ddeney2.exe


şunu değiştirdim:

Setrenderstate(srcblend,srcalpha);
Setrenderstate(destblend,invsrcalpha);

sağol asyncore ama bu benim bilgisayara uymuyo kafayı yiyecem
not:sourceyi değiştiremedim
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
asyncore



Kayıt: Jan 13, 2004
Mesajlar: 110
Nereden: Gevrek, darı ve çiğdem yenen yerden

MesajTarih: Fri Jul 01, 2005 1:20 pm    Mesaj konusu: Alıntıyla Cevap Ver

Hah olmuş şimdi bravo Wink
Senin bilgisayara uymayan ne?
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Fri Jul 01, 2005 1:50 pm    Mesaj konusu: Alıntıyla Cevap Ver

evet usta eve geldim benim bilgisayarda çalışmadı cam opak tahta saydam, galiba dx9.0 tnt2 ekran kartını asimile etti. neyse bende dx8.0
la yazarım. (saten dx80 ile 9.0 arasında bir fark göremedim)

P2-400-tnt2 bilgisayarda

////
Setrenderstate(srcblend,srcalpha);
Setrenderstate(destblend,invsrcalpha);
//// yanlış (iyi ekran kartı için doğru)

///
Setrenderstate(srcblend,srccolor);
Setrenderstate(destblend,bothsrcalpha);
///// doğru (iyi ekran kartı için yanlış)

burdan duyurulur
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
scg



Kayıt: Oct 30, 2002
Mesajlar: 38
Nereden: Ankara

MesajTarih: Fri Jul 01, 2005 2:21 pm    Mesaj konusu: Alıntıyla Cevap Ver

@Devreci : Yolladığın .exe dekine özdeş bir görüntüyü ben şu kodla oluşturdum:
Kod:


int WINAPI WinMain (HINSTANCE inst1,HINSTANCE inst2,LPSTR argv,int stil)
 {
  wincreat(inst1);
  if(!dx9creat()) MessageBox(0,"HATA","dx9kurulamdı",0);

       d3d9->SetTexture(0,tex);
       d3d9->SetRenderState(D3DRS_ZENABLE,D3DZB_TRUE);
       d3d9->SetRenderState(D3DRS_CULLMODE,D3DCULL_NONE);
       d3d9->SetRenderState(D3DRS_LIGHTING,FALSE);

       // Disable et bu komutları
       //d3d9->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
       //d3d9->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCCOLOR);
       //d3d9->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_BOTHSRCALPHA );

  while(msgdrw());

  dvbf->Release();   
  d3d9->Release();
  lpdd9->Release();
  return 0;
 }




char msgdrw()
{
 float tmm;
  tmm=time();
  d3d9->Clear(0,NULL,3,0x00200040,1.0f,0);
  d3d9->BeginScene();
  TransformA();

  //katı
  d3d9->SetRenderState(D3DRS_ZWRITEENABLE,TRUE);
  d3d9->DrawPrimitive(D3DPT_TRIANGLELIST,0,12);
  d3d9->DrawPrimitive(D3DPT_TRIANGLELIST,540,1068);

  //Transparan
  d3d9->SetRenderState(D3DRS_ZWRITEENABLE,FALSE);
  d3d9->SetRenderState(D3DRS_ALPHABLENDENABLE,TRUE);
  d3d9->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
  d3d9->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);
  d3d9->DrawPrimitive(D3DPT_TRIANGLELIST,36,168);
  d3d9->SetRenderState(D3DRS_ALPHABLENDENABLE,FALSE);
 
  d3d9->EndScene();
  d3d9->Present(0,0,0,0);

  PeekMessage (&msj, NULL, 0, 0,PM_REMOVE);
  TranslateMessage(&msj);
  DispatchMessage(&msj);
  tmm-=time();
  dondr+=(tmm/2.0f);
   
  if(msj.message==WM_QUIT) return 0; else return 1;

}


MSDN diyor ki:
D3DBLEND_BOTHSRCALPHA Obsolete for Microsoft DirectX 6.0 and later. You can achieve the same effect by setting the source and destination blend factors to D3DBLEND_SRCALPHA and D3DBLEND_INVSRCALPHA in separate calls.

tnt2 makinanın driverlarını güncelle ve DX9 a devam.

scg
Başa dön
Kullanıcı profilini gör
asyncore



Kayıt: Jan 13, 2004
Mesajlar: 110
Nereden: Gevrek, darı ve çiğdem yenen yerden

MesajTarih: Fri Jul 01, 2005 3:21 pm    Mesaj konusu: Alıntıyla Cevap Ver

scg çözümü açıklamış.
DX8 ile DX9 arasında bir hayli fark var aslında. (D3D açısından ise çoook)
Sadece DInput ve bir kitaplık daha (DPlay veya DShow olabilir) DX8'den beri gelişmedi sanıyorum.
Ancak senin kodu yazdığın kadarıyla DX8 ile DX9 arasında pek bir fark yok tabi. Yine de bu DX8'e dönmek için bir sebep olmamalı.
DX 9.0c herşeyine yeter diyorum. Yeter ki doğru kullan...
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder
lucifer



Kayıt: Nov 02, 2002
Mesajlar: 215
Nereden: Istanbool

MesajTarih: Fri Jul 01, 2005 4:15 pm    Mesaj konusu: Alıntıyla Cevap Ver

once tum scene'deki opak obceleri ciz, sonra tum scene'deki transparan obceleri ciz.
transparent'leri cizerken soyle kolay bi yol var: Eger cizdirdigin sey convex ise...yada soyle diyeyim, kuptur kuredir basit birsey ise...

depth_buffer write/test/hepsini ac .. once arka yuzeylerini cizdir.. sonra on yuzeyleri cizdir..

arka yuzeyleri nasil cizicen... glbirsey...glDrawFace( GL_FRONT) gibi birseydi.. glClip (GL_BACK)... bu da diil...

ya iste, once arkaya bakan poly'leri sonra one bakan poly'leri cizersen, obje de basitse, hic sort yapmadan, 'arkadan one cizme' benzeri birsey yapmis olursun.

unutmusuz ogl'yi.
Başa dön
Kullanıcı profilini gör Kullanıcının web sitesini ziyaret et
devreci



Kayıt: Mar 04, 2005
Mesajlar: 256

MesajTarih: Sat Jul 02, 2005 11:35 am    Mesaj konusu: Alıntıyla Cevap Ver

arkadaşlar pardon bi hatamı düzeltiyim dedim ;

benim bilgisayardaki ekran kartında bir hata var başka bilgisayarın ekran kartında (tnt2) denediğimde sorunsuz çalıştı. hatta diamond 4mb dede
çalıştı yani dx9.0 tnt2 ve eski ekran kartlarında ahenk içinde çalışıyor.

herkeze teşekkürler sorun bitti Very Happy .

(bu arada formlar ne çabuk ilerliyor.. güzel bir durum)
Başa dön
Kullanıcı profilini gör E-Posta'yı gönder Kullanıcının web sitesini ziyaret et
Mesajları göster:   
Yeni Başlık Gönder   Cevap Gönder    www.oyunyapimi.org Forum Ana Sayfası -> OpenGL, DirectX Tüm saatler GMT +2 Saat
Sayfa Önceki  1, 2
2. sayfa (Toplam 2 sayfa)

 
Forum Seçin:  
Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız


Powered by phpBB 2.x.x © 200x phpBB Group
Türkçe Çeviri : Onur Turgay & Erdem Çorapçıoğlu
Türkçe Düzenleme: Alexis Canver
Version 2.x.x of PHP-Nuke Port by Tom Nitzschner © 200x www.toms-home.com




Web site powered by PHP-Nuke
Web site engine\'s code is Copyright © 2002 by PHP-Nuke. All Rights Reserved. PHP-Nuke is Free Software released under the GNU/GPL license.
Sayfa Üretimi: 0.301 Saniye