Seite 1 von 3

anfänger fragen

Verfasst: 18.04.2005 14:06
von diGGa
huhu
hab mich entschieden bis bmax demo draussen ist erstmal ausschließlich mit pbasic zu beschäftigen... ich will auch wenn ich games mache diese im fenster haben ;)

drum erstmal:
ich bin einfach zu blöd^^ wie bekomm ich es hin das ich n fenster aufmache und da mein game reinzeichne. so wie zB pBarrows.

ich habs per

Code: Alles auswählen

WindowID = OpenWindow(#PB_Any, 10, 10, 640, 480, #PB_Window_SystemMenu, "bla") 
OpenWindowedScreen(ScreenID(), 10, 10, 640, 480, 0,0,0) 
versucht nur is damit die fps rate im arsch und man kann das window nicht verschieben wenn ich darin etwas mache (zB pong laufen lasse)...

und ich lese immer was von 2d engines etc. bei bb(was ich vorher gemacht habe) is das ja alles dabei und bei pb gehts auch, aber was können diese 2d engines und was ist eine gute(kostenlose) ?

ansonsten danke schonmal ;) wenn ich nochmehr fragen habe, ich werde diesen thread dazu missbrauchen um nich den ganzen anfänger bereich zuzumüllen ;)

Re: anfänger fragen

Verfasst: 18.04.2005 14:13
von Danilo
diGGa hat geschrieben:

Code: Alles auswählen

WindowID = OpenWindow(#PB_Any, 10, 10, 640, 480, #PB_Window_SystemMenu, "bla") 
OpenWindowedScreen(ScreenID(), 10, 10, 640, 480, 0,0,0) 
OpenWindowedScreen() will als ersten Parameter die WindowID(),
nicht ScreenID().

Da #PB_Any nicht direkt die WindowID (hWnd) zurückliefert,
nimmst Du besser den Befehl WindowID():

Code: Alles auswählen

Window = OpenWindow(#PB_Any, 10, 10, 640, 480, #PB_Window_SystemMenu, "bla")
If Window
  If OpenWindowedScreen(WindowID(),0,0,640,480, 0,0,0)
    ...

Verfasst: 18.04.2005 14:18
von diGGa
;) ändert aber merkwürdiger weise nix... muss ich da noch irgendwas machen ausser ein fenster zu öffnen? oder hast du vll nen bsp code der ne kleine animation oder sowas in nem fenster abspielt? oder n kasten bewegt oder so?

Verfasst: 18.04.2005 14:38
von Danilo

Code: Alles auswählen

;
; by Danilo, 18.04.2005
;
If InitSprite()=0 Or InitKeyboard()=0
  MessageRequester("ERROR","Cant initialize game engine !",#MB_ICONERROR):End
EndIf

#ScreenWidth  = 640
#ScreenHeight = 480
#ScreenName   = "diGGa"

If OpenWindow(1,0,0,#ScreenWidth,#ScreenHeight,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,#ScreenName)=0
  MessageRequester("ERROR","Cant open window !",#MB_ICONERROR):End
EndIf

If OpenWindowedScreen(WindowID(),0,0,#ScreenWidth,#ScreenHeight,0,0,0)=0
  MessageRequester("ERROR","Cant open screen !",#MB_ICONERROR):End
EndIf

If CreateSprite(1,50,50)=0
  MessageRequester("ERROR","Cant create sprite !",#MB_ICONERROR):End
EndIf

If StartDrawing(SpriteOutput(1))
  Circle(25,25,24,RGB($FF,$00,$00))
  Circle(25,25,20,RGB($FF,$FF,$00))
  StopDrawing()
EndIf

Repeat
  Select WindowEvent()
    Case #PB_Event_CloseWindow
      Break
    Case 0
  EndSelect

  While oldtime > ElapsedMilliseconds():Delay(1):Wend
  oldtime = ElapsedMilliseconds()+20

  ExamineKeyboard()
  FlipBuffers()
  If IsScreenActive()
    ClearScreen($FF,$88,$33)
    wert.f + 0.1 ; speed
    DisplayTransparentSprite(1,#ScreenWidth/2+Sin(wert)*200,#ScreenHeight/2+Cos(wert)*50)    
  EndIf
Until KeyboardPushed(#PB_KEY_ESCAPE)
Sowas?

Verfasst: 18.04.2005 14:43
von diGGa
vielen dank ;)
das entscheidene war
Select WindowEvent()
Case #PB_Event_CloseWindow
Break
Case 0
EndSelect
wenn ich kein event abfrag kann man mit dem fenster wohl nix machen :)
und ich lese immer was von 2d engines etc. bei bb(was ich vorher gemacht habe) is das ja alles dabei und bei pb gehts auch, aber was können diese 2d engines und was ist eine gute(kostenlose) ?
weisst darüber was?

Verfasst: 18.04.2005 14:47
von 125
ne 2D Engine ist quasi die Drawin/Sprite/Screen LIB bei PB. Die ist auch vollkommen ausreichend hab bisher keine anderen für PB gesehen :)

Verfasst: 18.04.2005 14:56
von diGGa

Verfasst: 18.04.2005 14:57
von 125
Da ist ja bisher soweit mans dem Thread ansehen kann noch nicht eine Zeile gecodet worden ;)

Verfasst: 18.04.2005 15:22
von diGGa
nein aber wenn man weiterliest sieht man was von spartan etc... aber das is ne rpg engine^^

Verfasst: 18.04.2005 15:44
von 125
Also ich les da nix von Spartan???

MVXA will eine neue 2D Engine schreiben mit mehr funcs die kompatibel mit OpenGL und DX ist.

Quasi eine verbesserte PB-2DLib....