Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[FreeBASIC] EliteTanks projekat

[es] :: Ostali programski jezici :: [FreeBASIC] EliteTanks projekat
(TOP topic, by Gojko Vujovic)
Strane: << < .. 2 3 4 5 6 7 8 9 10 11 ... Dalje > >>

[ Pregleda: 68093 | Odgovora: 267 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

masterjoda
Ucenik
Kekenda

Član broj: 177447
Poruke: 6
212.200.34.*



Profil

icon Re: [FreeBASIC] EliteTanks projekat02.04.2008. u 20:43 - pre 195 meseci
Evo nesto






Use the FORCE

FORCE will be always with you
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.115.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 09:11 - pre 195 meseci
Dali neko zna kako da se dobije hWnd (window handler) prozora koji kreira screenres funkcija ?
Hteo sam da napravim malo bolje resenje za msg loop u ovoj igri (subklasiranjem window procedure) ali nemogu da nadjem hWnd ....
 
Odgovor na temu

masterjoda
Ucenik
Kekenda

Član broj: 177447
Poruke: 6
212.200.34.*



Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 09:13 - pre 195 meseci
A moji modeli... ???
Use the FORCE

FORCE will be always with you
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 10:04 - pre 195 meseci
@masterjoda: nije lose, mada su tenkici iz SpriteLib GPL-a nekako lepsi za oko, mozes da pokusas njih da obradis malo.

sto se tice eksplozija to nemoras da crtas to cemo da uradimo sa explosion generatorom, evo npr sta on moze da uradi:


Prikačeni fajlovi
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
77.46.186.*



+1 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 12:18 - pre 195 meseci
Moze li ta crna pozadina eksplozije da bude transparentna sa alfa kanalom?

Jer bi onda eksplozije izgledale super!

@Eurora
Ja u VB-u to resavam ovako:

Code:

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Dim ProzorHwnd as Long
Private Sub Form_Load()
        ProzorHwnd = FindWindow("Notepad", vbNullString) ' Ja sam stavio da trazi Notepad, ali tu upisujes ime prozora
End Sub


Moralo bi da radi i u FreeBASIC-u... :)

 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 13:04 - pre 195 meseci
Citat:
stefanpn: Moze li ta crna pozadina eksplozije da bude transparentna sa alfa kanalom?

Jer bi onda eksplozije izgledale super!


Naravno, magical wand tool :)

Citat:

@Eurora
Ja u VB-u to resavam ovako:

Code:

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Dim ProzorHwnd as Long
Private Sub Form_Load()
        ProzorHwnd = FindWindow("Notepad", vbNullString) ' Ja sam stavio da trazi Notepad, ali tu upisujes ime prozora
End Sub


Moralo bi da radi i u FreeBASIC-u... :)


evo moje LookupWindow fje (u ovom slucaju je jednostavnije koristiti FindWindow k'o sto je Stefan predlozio, al evo mozda nekom zatreba ovakva funkcionalnost)
Code:

Private Declare Function FindWindowEx Lib "user32.dll" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function GetClassName Lib "user32.dll" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long


Public Function LookupWindow(Optional ByVal ClassName As String, Optional ByVal Title As String, Optional UseLike As Boolean = False, Optional ByVal Parent As Long) As Long
    LookupWindow = GetChild(Parent, ClassName, Title, UseLike)
End Function
'

Private Function GetChild(Optional ByVal hwnd As Long, Optional ByVal ClassName As String, Optional ByVal Title As String, Optional UseLike As Boolean = False)
    
    Dim lHandle     As Long
    Dim lRet        As Long
    Dim sBuffer     As String
    Dim bClassMatch As Boolean
    Dim bTitleMatch As Boolean
    
    Do
        lHandle = FindWindowEx(hwnd, lHandle, vbNullString, vbNullString)
        
        bClassMatch = False
        bTitleMatch = False
        
        If lHandle <> 0 Then
            
            bClassMatch = LenB(ClassName) = 0
            bTitleMatch = LenB(Title) = 0
            
            If Not bClassMatch Then
                    
                sBuffer = String(160, 0)
                lRet = GetClassName(lHandle, sBuffer, 160)
                sBuffer = Left$(sBuffer, lRet)
                
                bClassMatch = (UseLike And (sBuffer Like ClassName)) Or (Not UseLike And (ClassName = sBuffer))
            
            End If
            
            If Not bTitleMatch Then
                
                sBuffer = String(160, 0)
                lRet = GetWindowText(lHandle, sBuffer, 160)
                sBuffer = Left$(sBuffer, lRet)
                
                bTitleMatch = (UseLike And (sBuffer Like Title)) Or (Not UseLike And (Title = sBuffer))
            
            End If
            
            If bClassMatch And bTitleMatch Then
                
                GetChild = lHandle
                Exit Function
            
            Else
                
                lRet = GetChild(lHandle, ClassName, Title, UseLike)
                
                If lRet <> 0 Then
                    
                    GetChild = lRet
                    Exit Function
                
                End If
                
            End If
        
        End If
    
    Loop While lHandle

End Function

samo treba sa Spy++ videti klasu prozora koji se dobije sa ScreenRes
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
77.46.186.*



+1 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 13:10 - pre 195 meseci
Ali sa magical wand ne bi dobili alpha chanel za mesta na kojima bi vatra mogla malo da se providi.

Nego moze li to cudo za eksplozije da napravi eksploziju na providnoj povrsini?
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 13:13 - pre 195 meseci
kako ne bi mogla da se providi?

dobijas transparentnu eksploziju za par min!

EDIT:

evo:

mada ipak, sa magic wand nisam dobio zadovoljavajuce rezultate, ali sam uspeo da postignem zeljenu transparenciju pomocu rgb kanala, tj njihove transparencije
Prikačeni fajlovi
 
Odgovor na temu

stefanpn
Total anonymous
Programer

Član broj: 172809
Poruke: 509
77.46.186.*



+1 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 13:31 - pre 195 meseci
Pa dobro, samo nisam bas tako mislio. Ovde se vidi crni trag ispod eksplozije ali i ovo daje dobre rezultate...
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 13:36 - pre 195 meseci
pa nema crnog traga... crna boja je uklonjena u potpunosti, ovo su samo nijanse crvene boje, nego sam ja duplirao lejer da pojacam jacinu crvene, to je mozda potamnilo neke delove (koji opet nisu crni nego tamno crveni)

EDIT:


evo uradio sam animated gif:


mada sam radio copy/paste frejmova tako da nisu pozicionirani tacno u pixel a i mogao sam malo da ubrzam animaciju... (ovo ce sve da bude mnogo lakse kroz fb)

[Ovu poruku je menjao Aleksandar Ružičić dana 03.04.2008. u 15:16 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

Aleksandar Vasic
Web Administrator, Uspon d.o.o
Čačak

Član broj: 91692
Poruke: 1226
*.eunet.yu.

Sajt: www.vasictech.net


+1 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 15:47 - pre 195 meseci
eo sa zvukom,ali zbog velicine fajla izbacio sam pesmu za background music,stoga ubacite fajl koji zelite u ovaj folder pod imenom pesma.mp3

Ne zamerite shto pri pucanje se chuje zvuk explozije ne dzukele koja laje ;)

tnx to @stefanpn, @krcko
Prikačeni fajlovi
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.112.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 16:02 - pre 195 meseci
:) Hvala za kod
Mislio sam da OGL cuva hWnd u nekoj info strukturi i da ima neka funkcija za to ... da ne nabadamo prozore :) al ok moze i ovako
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.112.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 16:20 - pre 195 meseci
Citat:
samo treba sa Spy++ videti klasu prozora koji se dobije sa ScreenRes

Bavio sam se time (i window stvarima uopste) ... imate jedan program koji radi to i pravi providnost prozora (pisao sam ga je u asembleru) na http://www.eurora3d.com/files/TransparentWin.zip
Prosli put sam mislio na neku FB funkciju koja bi vratila window handler posle screenres ... al vidim da ni vi nemate neko bolje resenje od trazenja preko win API-a (trazio sam i po FB dokumentaciji)
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 16:41 - pre 195 meseci
evo ja naidjoh na jos jedan explosion generator, evo sta sam generisao (uradio gif, ali ovaj put sam vodio racuna o poziciji svakog frejma):



nekako mi ovo lepse za igru nego onaj predhodni...
Prikačeni fajlovi
 
Odgovor na temu

Aleksandar Vasic
Web Administrator, Uspon d.o.o
Čačak

Član broj: 91692
Poruke: 1226
*.eunet.yu.

Sajt: www.vasictech.net


+1 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 16:50 - pre 195 meseci
eo ubacio sam umesto dzukele gunshot
Prikačeni fajlovi
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 22:52 - pre 195 meseci
e ukljucite u zip/rar i potrebne dll-ove (bass, jpeg, sta vec) dovoljno je da budu u istom folderu kao i exe, ne moraju da budu u system32
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.113.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 23:23 - pre 195 meseci
@stefanpn
Probao sam da malo optimalizujem onaj tvoj primer (nije ova zadnja verzija) ... i nisam nesto narocito zadovoljan ... tako da ovaj kod bolje koristi ako ti bude trebao za neke proste stvari. CPU vreme je sad oko 10% (na mom cpu ... a bilo je oko 20) al mi je ventilator na laptopu urlao dok sam ovo programirao :)
Probao sam skoro sve sto znam ... od multithreadinga , kratkih loop-ova subklasiao sam i GL window (sad je malo poslusniji :) ) al na kraju sam zakljucio (pored toga sto si mogao malo srecnije da uradis glavnu petlju) da ova OGL library i nije nesto optimalizovana ... Koliko sam shvatio vi cete ionako da koistite nesto drugo za grafiku tako da ovaj kod moze nekom da sluzi kao neki primer
Nasao sam i kako se iz FB dobija hWnd posle screenres :) ...
U zipu su sve linkovane dll (3 kom), kod , program i slicice





[Ovu poruku je menjao Eurora3D Team dana 04.04.2008. u 01:32 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.113.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat03.04.2008. u 23:59 - pre 195 meseci
by the way :) Zasto niko ne ukljuci FbEdit project file. Ova zadnja verzija sa zvukom je ok al nije napravljen kompaktan projekat.
@Aleksandar Vasic netrebas da kompajlujes Music.bas i arrey ... ova dva fajla su ukompajlovana sa main fajlom
I mislim da je jednostavnije da su fajlovi dynarray.bas i music.bas bi fajlovi ...
Al sve u svemu dobro je :) vidi se da je nesto uradjeno ....

 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: [FreeBASIC] EliteTanks projekat04.04.2008. u 00:14 - pre 195 meseci
i ja se pitam sto ne prave .fbp fajlove (mozda ne koriste fbedit?) al dobro, ovo je ionako demo - vezbaju se momci :)
 
Odgovor na temu

Eurora3D Team
Nebojsa - Programer & Vodja tima
Beograd

Član broj: 120376
Poruke: 900
91.148.113.*



+7 Profil

icon Re: [FreeBASIC] EliteTanks projekat04.04.2008. u 00:27 - pre 195 meseci
da, to je i meni palo na pamet :) ... Mozda ne rade u FbEdit-u ... a secam se da se pricalo jel FbEdit i bilo je svi hoce ...

 
Odgovor na temu

[es] :: Ostali programski jezici :: [FreeBASIC] EliteTanks projekat
(TOP topic, by Gojko Vujovic)
Strane: << < .. 2 3 4 5 6 7 8 9 10 11 ... Dalje > >>

[ Pregleda: 68093 | Odgovora: 267 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.