Windows alatt teljes képernyő használat, hang
2003-05-09T12:56:59+02:00
2003-05-14T13:42:07+02:00
2022-07-27T19:12:50+02:00
  • ...baj lehet a megoldással, hogy villoghat rajta a tálca meg ilyesmik...

    WNDCLASS wc;
    wc.style = CS_HREDRAW | CS_VREDRAW;
    ...
    hWnd = CreateWindowEx(WS_EX_TOPMOST, ..., WS_POPUP, 0, 0, GetSyetemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN), ...)

    én így csinálok teljes képernyőt. De tényleg ma már a 2D-s játékokat DDraw-val vagy ha más nem, D3D-vel csinálják.
    Mutasd a teljes hozzászólást!
  • ...elfelejtettem a vegere irni hogy ez Visual C.
    Mutasd a teljes hozzászólást!
  • CWnd *desktop = GetDesktopWindow();
    CDC *dc = desktop->GetWindowDC();

    .............
    dc->SetPixel(x,y,color);
    .............

    desktop->ReleaseDC(dc);

    De ha valami komolyabb grafikat akarsz akkor DirectX vagy OpenGL.
    Mutasd a teljes hozzászólást!
  • szamos variacio van felsorolva, nezd meg probald ki oket
    ha valamelyikkel kapcsolatban konkret kerdesed van akkor azt tedd fel!!

    nah
    Mutasd a teljes hozzászólást!
  • Köszönöm az információkat.

    A DOS-t már kitéptem a szívemből, tudom, az már a múlté.
    A kérdésem nem is arra irányult, hogyan tudnék én DOS-ozni, hanem hogy a Windows-zal hogyan tudnám megbeszélni azt (pl. Visual c++-ban), hogy Én rajzolhassak a Teljes képernyőre. Mint pl. a screensaverek.
    Mutasd a teljes hozzászólást!
  • mint ahogy a OpenGl, DirektX, 3D programozás topicban emlitettem PTC
    ha nem kell semmifele gyorsito funkcio, olvasd ott, keresd a net-en
    Mutasd a teljes hozzászólást!
  • Azt erősen kétlem hogy DOS-hoz mostanság találsz drivert a hangkártyádhoz. A másik problémája a DOS-nak valahol az volt hogy nem igazán létezett olyan hogy hangkártya driver. Ezért van az hogy a legtöbb DOS-os játék megy Sound Blaster-rel meg megy Sound Blasterrel meg megy Sound Blasterrel is. Akkortájt ugyanis szinte alig volt más hangkártya. Volt még az Adlib amivel az SB fölülről kompatiblis volt, meg a Gravis aminek baromira szép hangja volt de alig volt sw ami használni tudta. Volt neki ugyan egy SB emuláló felülete de ez a játékok 90%-ánál nem működött. Kb. ugyanez a helyzet a videokártyákkal is, bár ott idővel a VESA rendet csinált valamennyire, igaz ez a megoldás gyakran elég lassacska megoldást eredményezett. Én egyébként a linux + SDL vagy a win + DirectX megoldást javaslom. Az SDL-nek még külön előnye hogy platformfüggetlen, műxil linuxon, DOS-on de talán MacOS-en is. A DOS-t meg felejtsd el, egyszerű de csak addig amíg két kockát kell kirajzolni Turbo Pascalból.
    Mutasd a teljes hozzászólást!
  • Nem tudom hogy fogod kikerülni a hardver programozását (merthogy nem írsz DOS-os drivert az alaplapodhoz ), ha a "lassúcska" Windows+DirectX-nél gyorsabb grafikát szeretnél, ami elég rendesen támaszkodik a hardveres gyorsítókártyák kihasználására
    Mutasd a teljes hozzászólást!
  • Ha nem Windows-környezetet használó programot akarsz írni, akkor ne használj Windows környezetet. Ilyen egyszerű

    Ez az egyik.

    A másik meg, hogy a Windows algoritmusai nem hibásak, nem lassúak, hanem nagyságrendekkel gyorsabb és jobb eredményt produkálnak, mint amit te bármikor is össze tudnál hozni egy saját pixelrajzolóval. Nem azért, mert annyira királyok az MS programozói, hogy 50x gyorsabb kódot csinálnak mint bárki más (bár biztos lehetsz abban is, hogy ésszerű keretek között a lehető leggyorsabb algoritmust építették a GDI-be és egyéb a teljesítmény szempontjából kulcsfontosságú helyekre), hanem mert az összetett GDI függvények a videókártyák gyorsítófunkciót használják.

    Utóbbiak működésének amiknek pont az a lényege, hogy komplett magasszintű műveletek implementálnak hardverből, ami a drótozott logika lévén eleve gyorsabb mint amit szoftverből egy általános célú CPU-n elérhető lenne, ráadásul kikerülik az igen szűk keresztmetszetet jelentő rendszersínt is, és közvetlenül a videomemóriába írnak.

    Szóval szép dolog az önérzet, meg az "ezt én is meg tudom csinálni" hozzáállás, de azon kívül, hogy gazdaságilag nem előnyös, sok esetben nem is megalapozott.
    Mutasd a teljes hozzászólást!
  • Ha nem Windows-környezetet használó programot akarsz írni, akkor ne használj Windows környezetet. Ilyen egyszerű. Használj pl. Linuxot. Vagy írj egy saját oprendszert. SZerintem mindkettőhöz rengeteg segítséget kaphatsz itt a fórumokon.
    Mutasd a teljes hozzászólást!
  • nekem a Windows csak ne segítgessen a saját lassú, hibás, ellenőrizhetetlen algoritmusaival, mindezt gyorsan, nem emulálgatva 68 ellenőrzésgetést mellőzve, mint abban a jó öreg DOS-ban?


    DirectX-nek hívják és szerintem elég jól rajzol, nemde?

    Vagy az egyszerű, gyors programoknak mindörökre lőttek?


    Nem. Rakj fel DOS-t.

    Péter
    Mutasd a teljes hozzászólást!
  • Remélem hasonló topic még nincs.
    Na, problémám: mivel alaplapra integrált hangkártyával rendelkezem (ez bőven elég), és még sok más valakivel is előfordulhat ez, ezért DOS alatt nincs hang. Chipset vagy Chupset, vagy Upset vagy milyen driver-adat-renszer-fájlokat meg nem biztos, hogy lehet ezekhez szerezni DOS alá. Na, a lényeg: ha valami értelmes (nem Windows környezetet használó) programot akarok írni, de úgy, hogy a kis kedves, súlyos ezrekért megvásárolt alaplapom áldásos funkciókészletét kihasználva hanghullámokat generáljon megfelelő eszközeivel a hangfalon keresztül a fülembe, akkor az nem megy máshogy, csak Windows alatt. Viszont akkor meg ott vannak azok az aranyos ablakocskák, amiknek rendszeréből úgy néz ki, nem tudok kiszakadni.
    Hogyan tudnám azt elérni, hogy én legyek a "Big Master Of My Truly Own Purchased Little Video Memory", és nem a Windows? Hogyan tudnék képpontokat kirakni, vonalat húzni, kört rajzolni ahogy csak én akarom, <i>nem Windows segítséggel ám</i>, nekem a Windows csak ne segítgessen a saját lassú, hibás, ellenőrizhetetlen algoritmusaival, mindezt gyorsan, nem emulálgatva 68 ellenőrzésgetést mellőzve, mint abban a jó öreg DOS-ban?
    Vagy az egyszerű, gyors programoknak mindörökre lőttek?

    Hát úgy röviden ez lenne a kérdésem. A hozzászólásokat előre is köszönöm szépen.
    Mutasd a teljes hozzászólást!
abcd