Keresés

Aktív témák

  • GBX

    aktív tag

    válasz Polyák #12 üzenetére

    én speciel azé ajánlom az elején a 320*200-as felbontást mert GYORS, de nagyon. Írtam régebben egy pici hajós programot ahol a hajókat kell kilőni (Ships!)
    Ott sok billboardot használtam sok textúrával. A totál átlagos 2ghz-es gépen átlag 250 fps-t (210-280fps) hozott ki.
    Kezdésnek nem rossz, és később lehet mégjobban berhelni a megjelenítéseket.
    Ennek a 320*200 as felbontás kezeléséhez szum 7 (magic7) eljárás kellett:
    -init
    -deinit
    -clear
    -set/getpixel
    -swapbuffers (érdemes dupla buffereléssel dolgozni (csak +64K memoria))
    -setpalette (256 color rulez)
    -draw
    ezeket érdemes asm-ben csinálni, (ettől olyan gyors:) )
    Innentől teljesen trivi.
    +tipp : érdemes olyan globális változókat (esetleg konstansokat) felvenni ahol jelezve van hogy mekkora a felbontás/színmélység stb... és renderelni mindig ezek figyelembevételével történjen. Ne legyen az hogy egyik felbontásban okés de egy nagyobb felbontásban minden elvan csúszva esetleg nem jelenik meg.

    A BGI-kkel nekem sajna eddig nem volt túl sok jó tapasztalatom, lassúak, esetenkén bugzanak, nincs duplapuff , kevés szín , nem mindenhol müxik stb...

    De szerintem majd te is rá fogsz jönni miután már a 5ezredik sornál tartasz, hogy a pascal egyre inkább korlátoz, leginkább a kevés lefoglalható memória miatt (640K (BillGates: ááá, az mindenre elég, 10 év múlva : Izé én 640MB-ra gondoltam :)) ))
    és te is be fogod látni hogy az objektumoriantált programozás (OOP) a te barátod, és akkor írhatod át az egészet C++-ba mert OOP-re az egy jó nyelv (de akár Java is jöhet, de az is csutkára c++).
    Tehát mielőtt belevágsz/nagyon elásod magad, ajánlom használj vmi magasabb szintű fejlesztőrendszert és esetleg vmi grafikai API-t.
    Ajánlom figyelmedbe a OpenGL + C++ párosítást. Ezt kb 2 év aktív tanulással sacc/kb el tudod sajátítani kb közepes/haladó szintre. És ha ezeket tudod akkor úgy grafikázhatsz ahogy akarsz, mert megint visszatér a grafika a perpixel számításokra (úgy mint réges régen, képpontról képpontra számolunk az eddig megszokaott CSAK texturázott sokszögekkel szemben) á lá pixelshader.

  • GBX

    aktív tag

    válasz Polyák #1 üzenetére

    Szia, én régebben programoztam 3d-t pascalban.
    Pár tapasztalat:
    Grafika megjelenitésre a leggyorsabb a 320*200-as felbontás amit asm parancsokkal inditasz és asm-ben éredemes rá hivatkozni (pixel elérés, beállitás stb..)
    Ha 3d-ben akarsz vmit csinálni érdemes 1szőr a mateknál kezdeni, merhát ez matek,
    Alapok: pontok/vonalak/drótháló mozgatása, stb,
    ajánlom hogz csinálj egy mátrixokkal dolgozó unit-ot, ami legalább 3x3-as mátrixokkal tud dolgozni
    és csinálj egz vector unitot ami 3 komponenses vectorokkal (x,y,z) tud műveleteket végezni
    Egy pici gyorsitási tipp: a sin,cos,tg fv-eket előre egy tömbben tárold és egy spec. eljárással (pl mysin(alfa single)) olvasd ki a megefelelő szöghöz a megfelelő sin értéket.
    Ajánlom a prog.hu -t ahol sok ilyen saját készitésű 3d-s fv található.
    Sok sikert.

Aktív témák