Interface Programmieren
Übersicht

maviBetreff: Interface Programmieren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hallo bb gemeinde
Ich hänge mal wieder an einem kniffligen(für mich) Fall....ich bin gerade das interface am programmieren,.... es sollte ähnlich wie bei wow sein...ich möchte eins von 5 zielen anklicken können und dessen hp in einem extra fenster anzeigen lassen...nur ich möchte es variabel gestalten dass ich auch nur 3 mitglieder anzeigen lassen kann...wie realisiere ich das? Ich probier schon ziemlich lange dran hier mal mein "billiges Interface" Code: [AUSKLAPPEN] Graphics 800,600,16,0
SetBuffer BackBuffer() Global timer=CreateTimer(25) player_name$ = "LoW" font_player = LoadFont("Verdana", 16,1,0,0) neu$ = LSet(player_name$, 18) Repeat Color 255,255,255 ;Actionbar Oval 175,550,50,50,1 Oval 575,550,50,50,1 Rect 200,550,400,50,1 ;buttons Color 255,0,0 Rect 225,552,46,46,1 ;Button 1 Rect 273,552,46,46,1 ;Button 2 Rect 321,552,46,46,1 ;Button 3 Rect 369,552,46,46,1 ;Button 4 Rect 417,552,46,46,1 ;Button 5 Rect 465,552,46,46,1 ;Button 6 Rect 530,552,46,46,1 ;Button_MENU Rect 5,5,150,75,0 ;Border Player_FRAME ;Player_Frame ;leben Color 255,0,0 Rect 10,45,100,15,1 ;Variable für Berechnung einfügen ;energie Color 0,0,255 Rect 10,62,100,15,1 ;Variable für Berechnung einfügen ;border Color 255,255,255 Rect 10,45,100,15,0 Rect 10,62,100,15,0 ;Name SetFont font_player Text 10,10, neu$ ;Classicon Rect 115,45,32,32,0 WaitTimer(timer) Flip:Cls Until KeyHit(1):End |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
Stichwort Types | ||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dazu brauchst du types und evt. ein paar arrys.
Wenn du nicht weist was types sind und wa man damit macht kannst du es hier nachlesen/durcharbeiten: Tut1 https://www.blitzforum.de/foru...hp?t=25321 Tut2 https://www.blitzforum.de/foru...hp?t=25694 Tut3 https://www.blitzforum.de/foru...hp?t=25694 Wenn du dir noch nicht sicher bist mit den grundelementen von BB dann rate ich dir erstmal von Types ab, da diese eine gewisse komplexität mit sich bringen! Wenn du sie aber einmal beherrscht, wirst du sie lieben. Achja schnell noch einen Tipp: der Befehl rect und text ist sehr langsam, evt. helfen dir Guis(mGui,BlitzUi,draw3d2 SGG). Drawimage ist schneller als rect Gruß Dottakopf |
||
mavi |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke für eure hilfe...erstmal...ich tu mir mal die type tuts zugemüte führen (: und so
Ich wusste granicht das DrawImage schneller ist als Rect ich dachte andersrum deshalb hab ihc das gezeichnet....so kann ich ja "Bilder erstellen" und laden... |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() ![]() Ich konnte das mit DrawImage vs. Rect selbst grad nicht glauben und hab es mir daher genauer angeschaut: Code: [AUSKLAPPEN] Global gfx_w=800
Global gfx_h=600 Graphics gfx_w,gfx_h,0,2 SetBuffer BackBuffer() SeedRnd MilliSecs() Local timer=CreateTimer(50) Global size=50 Global fill=0 Local img=CreateImage(size,size) SetBuffer ImageBuffer(img) Rect 0,0,size,size,fill SetBuffer BackBuffer() Repeat start=MilliSecs() For i=1 To 100 DrawImage img,Rand(0,gfx_w-size),Rand(0,gfx_h-size) Next DebugLog "DrawImage: "+(MilliSecs()-start) start=MilliSecs() For i=1 To 100 Rect Rand(0,gfx_w-size),Rand(0,gfx_h-size),size,size,fill Next DebugLog "Rect: "+(MilliSecs()-start) Flip 0:Cls WaitTimer timer Until KeyHit(1) End Egal, ob ich "size" klein oder groß setze, egal ob gefüllt oder nicht - DrawImage ist schneller, auf meinem PC fast immer 0ms. Ja, bei so Zeitmessungen in Bltz gibts immer n paar Leute die uns erklären dass das ungenau / irrelevant ist. (Sieht man auch am Anfang, dass da beide Befehle länger brauchen als nach ein paar Hauptschleifen-Durchläufen) Aber der Unterschied ist so eindeutig und immer wieder festzustellen - für mich isses bewiesen. mfG, Christoph. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Rect wird aber schneller sein, wenn man den Puffer vorher sperrt
Code: [AUSKLAPPEN] LockBuffer BackBuffer()
start=MilliSecs() For i=1 To 1000 Rect Rand(0,gfx_w-size),Rand(0,gfx_h-size),size,size,fill Next DebugLog "Rect: "+(MilliSecs()-start) UnlockBuffer BackBuffer() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, mit Lockbuffer ist Rect tatsächlich schneller. | ||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group