Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 46 ] Choď na stránku: predchádzajúca 1, 2
AutorSpráva
Offline

Skúsený užívateľ
Skúsený užívateľ
postava z blenderu do hry

Registrovaný: 11.01.09
Prihlásený: 28.03.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 16.03.2009 12:47

No presne tak. A potom už iba pracuješ s funkciami MoveToEx a LineTo.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.11.07
Prihlásený: 04.07.12
Príspevky: 405
Témy: 89
Príspevok Napísal autor témyOffline : 16.03.2009 17:26

a kde zozenem API funkcie na assembler MASM32 ked na C++ su api ale oni sa nejako lisia v parametroch od tych s assembleru co davas push


Offline

Skúsený užívateľ
Skúsený užívateľ
postava z blenderu do hry

Registrovaný: 11.01.09
Prihlásený: 28.03.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 16.03.2009 17:45

Moment, moment. API funkcie máš určite na počítači :) Nachádzjú sa v knižniciach user32.dll a kernel32.dll. (Myslím, že tu patria aj gdi32.dll, advapi32.dll a iné, ale to je teraz nepodstatné). Stačí, ak v projekte assembleru pripojíš pomocou direktívy INCLUDELIB danú knižnicu a možeš používať všetky jej funkcie. Tie ale musíš najprv uviesť direktívou EXTERN.
V assemlberi je štandardne použitá stdcall konvencia predávania parametrov (to je to hore - .MODEL stdcall). To znamená, že funkcii sú predávané parametre sprava doľava. Teda opačne. Preto sa ti možno zdalo, že je to odlišné ako v C++ (i keď aj C++ využíva túto konvenciu, tam sa o to netreba starať).

Malý príklad:

Volanie funkcie v C++:
Kód:
myFunction(firstParameter, secondParameter);


Volanie funkcie v assembleri:
Kód:
push secondParameter
push firstParameter
call myFunction


Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 08.03.09
Prihlásený: 06.10.20
Príspevky: 1116
Témy: 88
Bydlisko: 00100100
Príspevok NapísalOffline : 17.03.2009 15:44

AKO sa robí ten PNG textúra a co to je??







_________________
Programming is The Best
Hackers Are Not Crackers!!! Hackers build things, crackers break them!
;-)
Offline

Skúsený užívateľ
Skúsený užívateľ
postava z blenderu do hry

Registrovaný: 11.01.09
Prihlásený: 28.03.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 17.03.2009 16:02

Otvoríš si krelenie, nakreslíš si niečo a uložíš to ako *.png
A máš textúru ...
Textúra je dvojrozmerný alebo jednorozmerný obrázok. To je to, čo "vidíš" pri akejkoľvek hre (2D či 3D, to je jedno)


Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 02.11.07
Prihlásený: 18.03.15
Príspevky: 470
Témy: 22
Bydlisko: Zilinska Un...
Príspevok NapísalOffline : 20.03.2009 14:44

necital som o com tu pisete, nemam cas, ale ak ces robit grafiku, tak OpenGL a tu najdes uplne vsetko, od kreslenia, pohybu, texturovania + multitexturing, blendingu, praca s textom. Nie je problem nieco vykreslit, ale neprogromovat tomu pohyb a cool fyziku.

http://nehe.ceske-hry.cz/tut_obsah.php







_________________
Notebook: HP EliteBook 8740w
You can see my work in my www
Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 08.03.09
Prihlásený: 06.10.20
Príspevky: 1116
Témy: 88
Bydlisko: 00100100
Príspevok NapísalOffline : 20.03.2009 15:14

diky







_________________
Programming is The Best
Hackers Are Not Crackers!!! Hackers build things, crackers break them!
;-)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.11.07
Prihlásený: 04.07.12
Príspevky: 405
Témy: 89
Príspevok Napísal autor témyOffline : 05.04.2009 20:15

pisal si mi ten mousemove v assemblery pomocou api moveto a lineto nemohol by si mi to dat teraz ako by to vyzeralo v c++ aj s oknom kompletne ako program
cize a ake by tam boli funkcia na to vykreslenie a ako sa tam robi slucka sprav neviem si to dat dokopy tu jednu formulku ako je
registracia + vytvorenie
slucka
a procedura
a to iste dokola to bezi ako by to bolo???
pls.


Offline

Skúsený užívateľ
Skúsený užívateľ
postava z blenderu do hry

Registrovaný: 11.01.09
Prihlásený: 28.03.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 05.04.2009 21:21

Kód:
#include <windows.h>

LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

char szClassName[ ] = "WindowsApp";

bool lbtn_down = 0;
HDC__ * hDC;

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)

{
    HWND hwnd;               
    MSG messages;           
    WNDCLASSEX wincl;   

    wincl.hInstance = hThisInstance;
    wincl.lpszClassName = szClassName;
    wincl.lpfnWndProc = WindowProcedure;     
    wincl.style = CS_DBLCLKS;                 
    wincl.cbSize = sizeof (WNDCLASSEX);
    wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
    wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
    wincl.lpszMenuName = NULL;       
    wincl.cbClsExtra = 0;                     
    wincl.cbWndExtra = 0;                     
    wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

    if (!RegisterClassEx (&wincl))
        return 0;

    hwnd = CreateWindowEx (
           0,                   
           szClassName,
           "Windows App",
           WS_OVERLAPPEDWINDOW,
           CW_USEDEFAULT,
           CW_USEDEFAULT,
           544,
           375,
           HWND_DESKTOP,
           NULL,
           hThisInstance,
           NULL
           );

    ShowWindow (hwnd, nFunsterStil);

    while (GetMessage (&messages, NULL, 0, 0))
    {
        TranslateMessage(&messages);
        DispatchMessage(&messages);
    }

    return messages.wParam;
}


LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)
    {
        case WM_DESTROY:
            PostQuitMessage (0);
            break;
           
        case WM_CREATE:
             hDC = GetDC(hwnd);
             break;
             
        case WM_LBUTTONDOWN:
             lbtn_down = 1;
             MoveToEx(hDC, LOWORD(lParam), HIWORD(lParam), NULL);
             break;
       
        case WM_MOUSEMOVE:
             if (lbtn_down)
                 LineTo(hDC, LOWORD(lParam), HIWORD(lParam));
             break;
             
        case WM_LBUTTONUP:
             lbtn_down = 0;
             break;
           
        default:
            return DefWindowProc (hwnd, message, wParam, lParam);
    }

    return 0;
}


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.11.07
Prihlásený: 04.07.12
Príspevky: 405
Témy: 89
Príspevok Napísal autor témyOffline : 06.04.2009 16:49

vysvetlite mi este raz co to je
v datovom segmente sa pise za napr.
lenstr1 "ahoj",0,13
co to je to 0 a 13???
dalej napr.
lenstr2 dd <?>
co je to ten otaznik???
dalej napr.
mov dword ptr [ebx+0ch]
co je to v tej zatvorke a co je dword ptr??
napr.
wm_command equ 1
co je to equ??a preco 1 preco nie 215123


Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 19.09.06
Prihlásený: 17.01.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 06.04.2009 17:01

0 je ukoncovaci znak retazca, 13 je znak, ktory vrati kurzor na zaciatok riadku.
? znamena neinicializovane data
dword ptr [ebx+0ch] znamena, ze sa vezme dword z adresy ebx+Ch,
equ znamena deklarovanie konstanty


Offline

Skúsený užívateľ
Skúsený užívateľ
postava z blenderu do hry

Registrovaný: 11.01.09
Prihlásený: 28.03.24
Príspevky: 1385
Témy: 9
Bydlisko: Hrinova
Príspevok NapísalOffline : 06.04.2009 17:18

Citácia:
co to je to 0 a 13???


Nulou sa ukončuje každý reťazec (aby bolo jasné, kde končí). 13 značí ENTER, teda znak nového riadku. Presnejšie vysvetlenie. Každý reťazec je iba zhluk ASCII znakov. Teda reťezec "Ahoj" môžeš napísať takto:
Kód:
pozdrav DB 'Ahoj', 0

ale aj takto:
Kód:
pozdrav DB 65, 104, 111, 106, 0

Všimni si, že nula je v oboch prípadoch.

? - znamená, že danú premennú neinicializuješ. To znemená, aká hodnota bola na danom pamäťovom mieste pred tým, tá tam bude aj teraz - teda v tejto premennej.

DWORD PTR - Ak pracuješ s pamäťovým miestom (napríklad so zásobníkom), musíš uviesť direktívu PTR. DWORD znamená, že chceš preniesť hodnotu o veľkosti DWORD (DD). Bez tejto direktívy by totiž nebolo jasné, aký veľký údaj hodláš preniesť.

EQU - klasická konštanta. Jej obsah sa nedá zmeniť. Preto 1 ;)

Dúfam, že už je všetko jasné, ak nie, pýtaj sa.

// EDIT - sorry Stopa27, keď som dopísal, už tu bol tvoj príspevok. Ale svoj som nezmazal, lebo som mu trocha presnejšie vysvetlil


Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 19.09.06
Prihlásený: 17.01.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 06.04.2009 17:55

13 neznamena enter, enter je kombinaciou 13 a 10, cize navrat na zaciatok riadku a posun o riadok nizsie.


Offline

Čestný člen
Čestný člen
postava z blenderu do hry

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 06.04.2009 18:26

Kde ako. Pokial viem, v DOSe (a Windowse) robis novy riadok pomocou CR+LF = 13 a 10, zatial co v Unixe len pomocou LF = 10 a v Mac je to zas CR = 13.


Offline

Užívateľ
Užívateľ
postava z blenderu do hry

Registrovaný: 19.09.06
Prihlásený: 17.01.24
Príspevky: 749
Témy: 31
Bydlisko: Ružomberok&...
Príspevok NapísalOffline : 06.04.2009 18:35

isteze, ale pokial viem, tak sme sa az doteraz bavili o windowse.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.11.07
Prihlásený: 04.07.12
Príspevky: 405
Témy: 89
Príspevok Napísal autor témyOffline : 03.05.2009 2:08

existuje nieco potrebujem informácie ohladne tohoto
medziapplikacia medzi os a aplikaciou nainstalovanou
konkretne o portoch kto sa pripája ako je v linuxe nejaky bash ktory komunikuje s portami a aplikaciou
tak daj nejaky zdroj
neviem este sa nad tym pozamyslam ale neviem v cmd je to nieco ako netstat ze? tot vlastne aplikacia
tak potom by som chcel spravit nejaky shell vo win ktory by to kontroloval a ked by sa niekto pripojil tak by to zapisovalo do suboru alebo vyhadzovalo okienko.
comand ok s popisom atd.no radsej ten command ok s popisom prave sa niekto pripojil a tak


Odpovedať na tému [ Príspevkov: 46 ] Choď na stránku: predchádzajúca 1, 2


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. WME_hlavna postava

v Ostatné

0

202

14.11.2014 15:48

tomas5665 Zobrazenie posledných príspevkov

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. V: Humble bundle hry za nejake ine hry

v Vymením a darujem

6

901

22.08.2014 12:04

peto9110 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zamrzol PC počas hry, dá sa zistiť či je to problém tej hry?

v Ostatné programy

3

743

29.05.2016 15:08

t0m@$ Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. P: PS4 hry - hry - Horizon Zero Dawn, Shadow of the Colossus, Final Fantasy XV.

v Predám

4

599

01.08.2019 23:13

Rainmaker Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ake hry na tejto zostave?Na strednom grafickom nastaveni hry

v Počítačové hry

6

949

10.06.2009 22:50

KingTommy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. CO JE LEPSIE NA HRY AMD ALEBO PENTIUM?? NA HRY

v PC zostavy

21

2012

23.05.2007 7:29

eXistenZ Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. PC zostava na hry+NB na hry

v PC zostavy

4

797

04.08.2010 15:14

Hexicek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Hry

v Počítačové hry

12

894

03.01.2010 18:21

shiro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hry

v Počítačové hry

2

505

19.06.2017 17:29

EXIREXT Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hry

v Počítačové hry

1

441

07.03.2013 17:02

void Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Hry

v Ostatné

2

1184

06.03.2007 9:47

Rammstein16 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hry

v Ostatné

2

370

22.01.2023 8:49

shiro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. HRY

v Predám

0

505

31.12.2013 17:49

xVladoX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hry

v Operačné systémy Microsoft

2

671

14.08.2009 12:40

maugggly Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. HRY 64bit

v Počítačové hry

2

589

17.01.2008 0:50

spajza X Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Stolné hry

v Voľný čas a hobby

4

476

01.05.2013 21:25

KuKOx Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra