Results 1 to 10 of 87

Thread: Space Shooter Game Editor

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    I could not attach to previous post for some reason , so here it is .

    I've edited a bit more , and added BackGround.OnMove
    Code:
    procedure TBackGround.Move(const MoveCount: Single);
    begin
      inherited;
      if StartDemo = true then
        begin
          WorldY:=WorldY+4;
        end;
    end;
    Using this it scrolls trough one screen of my map, but wont create new lines, wonder why? I tried playing with VisibleArea on a per sprite bases when creating the map but could not get it working properly
    Code:
    BackGround[z,x,y].VisibleArea := rect(-32,(y*32-32),640,(y*32)+480));
    The idea is that I'd create each sprite with a different Visible area... but for some reason, the above code does not do what I expected it to do...

    so for now I'm doing onmove using

    Y:=Y+4;

    seems smoth now on my laptop in smoothscreen, maybe I must do movement in onMove ?

    Greetings
    Robert
    Attached Files Attached Files
    Last edited by robert83; 26-02-2013 at 09:11 AM.

  2. #2
    (Sorry for some reason I cannot get the file upload to show when editing my post)

    Anyway I think I did it...

    Code:
    procedure TBackGround.Move(const MoveCount: Single);
    begin
      inherited;
      if StartDemo = true then
        begin
          if SpriteEngine.WorldY = 0 then
            SpriteEngine.WorldY:=(Map.MapLength*32)-480;
          SpriteEngine.WorldY:=SpriteEngine.WorldY-0.0010;
        end;
    end;
    Note I had to move SpriteEngine from Private to Public...

    The strangest thing is , if it's running non fullscreen I get 27FPS probably the visible area not kicking in, but if I run fullscreen it runs at full 60 fps smooth , on this laptop with integrated gpu...I think that is a big word... I set the visible area for each sprite, I did set it on purpose to be less then screen size to see what happens and if it works.

    So this means I have to make the Editor itself fullscreen to ? (or leave editor as is, since it's easier to work with components available, and do the game in fullscreen later....)

    Update : if Form size is same as asphyre device size, it works in non full screen mode as well at same speed.
    Question : why do I have to use such a low value to move the WorldY now ? 0.0010 , the Speed for Timer is 15 only...

    Greetings
    Robert
    Attached Files Attached Files
    Last edited by robert83; 26-02-2013 at 09:39 AM.

  3. #3
    Quote Originally Posted by robert83 View Post
    The strangest thing is , if it's running non fullscreen I get 27FPS probably the visible area not kicking in, but if I run fullscreen it runs at full 60 fps smooth , on this laptop with integrated gpu...I think that is a big word... I set the visible area for each sprite, I did set it on purpose to be less then screen size to see what happens and if it works.
    Not so strange. Most games run better in FullScreen.

    Quote Originally Posted by robert83 View Post
    So this means I have to make the Editor itself fullscreen to ? (or leave editor as is, since it's easier to work with components available, and do the game in fullscreen later....)
    I suggest that you leave editor as it is since you actually don't realy need smoth movment in editor. But when you would be designing your game you would deffinitly do it in FullScreen mode.
    But if you are prepared to do lot of work you could made Editor to work in FullScreen mode but for this you would need to recreate all VCL components in it and this is nowhere an easy job. I know since I'm trying to do something like this myself. I'm developing a library which would alow me to create VLC-like components which would be rendered by AsphyreSphinx graphic engine. And since 2D portion of AsphyreSphinx graphics engine isn't so different than Asphyre Extreme engine I could probably port my library to it also.

    Quote Originally Posted by robert83 View Post
    Question : why do I have to use such a low value to move the WorldY now ? 0.0010 , the Speed for Timer is 15 only...
    Speed of 15 in timer means that OnProcess will try to execute every 15 miliseconds which means aprox 66 times per second. You need to know that values in AsphyreTimer are just desired delays in miliseconds. And if Rendering takes to much time OnProcess would be executed more than once to catch up.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •