Qbasicnews.com
July 04, 2020, 03:12:04 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Back to Qbasicnews.com | QB Online Help | FAQ | Chat | All Basic Code | QB Knowledge Base
 
   Home   Help Search Login Register  
Pages: 1 ... 4 5 [6]
  Print  
Author Topic: Here comes a preview of the forthcoming new AFlib2!!  (Read 40211 times)
Adigun A. Polack
Ancient Guru
****
Posts: 691



WWW
« Reply #75 on: February 25, 2006, 07:01:19 PM »

To all of you right now:

I am QUITE very happy to say that the documentation for AFlib2 is getting a dead-serious boost forward and then a lot!!!  d=Cheesy=b !  Here is why: I have just gone over the 200-page mark, covering every single routine so far in the Sprite Routines, PP256 Font Routines, Built-in 8x8 Font Routines, and Drawing Primitives Routines.  These things are covered down pat!!  Wink  But now, I am working on documenting the Screen Routines, Scale2X/4X/8X Routines, Screen Collision Routines, Sprite Collision Routines, and a lot more.  I will promise you, it will be *well* worth the wait as this lib eventually gets released sometime between March and April 2006 (potentially so, definitely!!  :cool: ! ).

While I was working extensively on my documentation, I had the computer shut itself off on me abruptly a couple of times, but all is under some serious control now, thank God!!  Cheesy !

In the meantime, take a whiff at this little glimpse of what is gonna be in my AFlib2 doc:

Code:
Defint a-z
Option Explicit


' Let's load up AFlib2 in here...
'--------------------------------------------------------------------------
'$include: 'AFlib2.bi'


' ...and set the graphics resolution to 640x480 windowed graphics mode,
' 8bpp, with 2 pages!!
'--------------------------------------------------------------------------
ScreenRes 640, 480, 8, 2, 0


' Setting up the arrays!
'--------------------------------------------------------------------------
Dim as ushort ptr TestSprite, BGtile
Dim as Integer GFX_h, GFX_v, Blit
Dim as Single Brightness, Trans_fading, One_color, Bg.X, Bg.Y, scroll
Dim as Single Rotate, ScaleX, ScaleY
Dim as Integer Brightness.ctrl, Trans_fading.ctrl, ScaleX.ctrl, ScaleY.ctrl
Dim as ImageType AFlib2_title, AFlib2_titleshadow


' Now extracting the physical graphics mode size here with variables
' "GFX_h" and "GFX_v", so that we can put them to good use later on!!  ;)
'--------------------------------------------------------------------------
ScreenInfo GFX_h, GFX_v

WindowTitle "The AFlib2 Hit-List of Sprite Blits!!!"
Locate 1, 1: ? "Just a moment, please......."
ScreenSet 1, 0


' Next, we set up our palette and sprites in a jiffy, including also our
' "AFlib2" logo (and its shadow, too!  ;) )!
'--------------------------------------------------------------------------
AF2.GeneratePalette 1  ' <--- This automatically generates our default
                       '      AFlib2 palette!

AF2.DisplayAllChars 1, 1, 18, 0, 2
AF2.DisplayAllChars 0, 0, 31, -1, 2
AF2.OptimizeFontSet 0, 0, 1
AF2.ClearScreen 0

Circle (31, 31), 31, 56, , , , f
Line (0, 0)-(63, 63), 31, b
Circle (31, 31), 24, 58, , , , f
Circle (31, 31), 18, 0, , , , f
Line (0, 0)-(63, 63), 234
Line (63, 0)-(0, 63), 234

TestSprite = AF2.InitCustomSpr(0, 0, 65, 65)
Get (0, 0)-(65, 65), TestSprite

AF2.ClearScreen 0

Line (0, 0)-(64, 64), 183, bf

AF2.Globe 31, 31, 20, 8, 2, .5, 1
Line (0, 63)-(63, 63), 18, bf
Line -(0, 63), 22, bf
Line -(0, 0), 26, bf
Line -(63, 0), 30, bf

BGtile = AF2.InitCustomSpr(0, 0, 65, 65)
Get (0, 0)-(65, 65), BGtile

AF2.ClearScreen 0

AF2.InitSpr_BMP AFlib2_title, 280, 104, "AFlib2_titleC.bmp"
AF2.InitSpr_BMP AFlib2_titleshadow, 280, 104, "AFlib2_titleC-shadow.bmp"


' Alright!  ^-^=b  In this first loop, this will show you the many sprite
' blits consisting of these: Normal, One-colored, Translucent, Translucent
' Dark, Translucent Darker, Translucent Darkest, Null-shaded, Translucent
' Fade Supported, and Brightness Supported!!  Press any key to exit this
' loop.
'--------------------------------------------------------------------------
Do
  AF2.ClearScreen 0

  If Brightness.ctrl = 0 then
    Brightness += 1
    If Brightness > 41 then Brightness.ctrl = 1
  else
    Brightness -= 1
    If Brightness < 0 then Brightness.ctrl = 0
  End if

  If Trans_fading.ctrl = 0 then
    Trans_fading += .25
    If Trans_fading > 10 then Trans_fading.ctrl = 1
  else
    Trans_fading -= .25
    If Trans_fading < 0 then Trans_fading.ctrl = 0
  End if

  One_color = int(rnd(1) * 255) + 1

  scroll += 1: If scroll > 63 then scroll = 0

  For Bg.Y = 0 to 8
    For Bg.X = 0 to 10
      If (Bg.X + Bg.Y) mod 2 = 1 then
        AF2.SprBlit (Bg.X * 64) - scroll, (Bg.Y * 64) - scroll, BGtile, GFX_h, GFX_v
      else
        AF2.SprBlit_trans (Bg.X * 64) - scroll, (Bg.Y * 64) - scroll, BGtile, GFX_h, GFX_v
      End if      
    Next
  Next

  AF2.SprBlit 8, 16, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Normal Sprite Blit", 80, 24, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_color 8, 88, One_color, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "One-colored Sprite Blit", 80, 96, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_trans 8, 160, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Translucent Sprite Blit", 80, 168, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_tr.dark 8, 232, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Translucent Sprite Blit", 80, 240, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(dark version)", 80, 248, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_tr.darker 8, 304, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Translucent Sprite Blit", 80, 312, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(darker version)", 80, 320, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_tr.darkest 8, 376, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Translucent Sprite Blit", 80, 384, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(darkest version)", 80, 392, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_null 320, 16, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Null-shaded Sprite Blit", 392, 24, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_tr.fadecust 320, 88, Trans_fading, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Fading Translucent Sprite Blit", 392, 96, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_brightness 320, 160, Brightness, TestSprite, GFX_h, GFX_v
  AF2.OptimizedPrint "Brightness-based Sprite Blit", 392, 168, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_trans 363, 379, @AFlib2_titleshadow.p_data[AFlib2_titleshadow.p_dataindex[0]], GFX_h, GFX_v
  AF2.SprBlit 360, 376, @AFlib2_title.p_data[AFlib2_title.p_dataindex[0]], GFX_h, GFX_v

  AF2.CustomSync fps70

  ScreenCopy

Loop while inkey$ = ""

AF2.ClearKeyBuffer

Rotate = 0
ScaleX = 0
ScaleY = 0


' Then in this second loop here, we show you even more *amazing* sprite
' blits for you: Rotated (normal and solid), Scaled (normal and solid), and
' Rotated/Scaled (normal and solid)!!!  Again, you can exit here by
' pressing any key!  :D
'--------------------------------------------------------------------------
Do
  AF2.ClearScreen 0

  If Brightness.ctrl = 0 then
    Brightness += 1
    If Brightness > 41 then Brightness.ctrl = 1
  else
    Brightness -= 1
    If Brightness < 0 then Brightness.ctrl = 0
  End if

  If Trans_fading.ctrl = 0 then
    Trans_fading += .25
    If Trans_fading > 10 then Trans_fading.ctrl = 1
  else
    Trans_fading -= .25
    If Trans_fading < 0 then Trans_fading.ctrl = 0
  End if

  If ScaleX.ctrl = 0 then
    ScaleX += .075
    If ScaleX > 1.2 then ScaleX.ctrl = 1
  else
    ScaleX -= .075
    If ScaleX < 0.1 then ScaleX.ctrl = 0
  End if

  If ScaleY.ctrl = 0 then
    ScaleY += .10
    If ScaleY > 1.2 then ScaleY.ctrl = 1
  else
    ScaleY -= .10
    If ScaleY < 0.1 then ScaleY.ctrl = 0
  End if

  Rotate += .01: If Rotate > 359 then Rotate = 0

  scroll += 1: If scroll > 63 then scroll = 0

  For Bg.Y = 0 to 8
    For Bg.X = 0 to 10
      If (Bg.X + Bg.Y) mod 2 = 1 then
        AF2.SprBlit (Bg.X * 64) - scroll, (Bg.Y * 64) - scroll, BGtile, GFX_h, GFX_v
      else
        AF2.SprBlit_trans (Bg.X * 64) - scroll, (Bg.Y * 64) - scroll, BGtile, GFX_h, GFX_v
      End if      
    Next
  Next

  AF2.SprBlit_rotate 8 + 32, 16 + 32, TestSprite, Rotate
  AF2.OptimizedPrint "Rotated Sprite Blit", 80, 24, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_rotate.solid 8 + 32, 88 + 32, TestSprite, -Rotate
  AF2.OptimizedPrint "Rotated Sprite Blit", 80, 96, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(solid version)", 80, 104, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_scale 8 + 32, 160 + 32, TestSprite, ScaleX, ScaleY
  AF2.OptimizedPrint "Scaled Sprite Blit", 80, 168, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_scale.solid 8 + 32, 232 + 32, TestSprite, ScaleX, ScaleY
  AF2.OptimizedPrint "Scaled Sprite Blit", 80, 240, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(solid version)", 80, 248, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_scale.rotate 8 + 32, 304 + 32, TestSprite, ScaleX, ScaleY, Rotate * 4
  AF2.OptimizedPrint "Scaled/Rotated Sprite Blit", 80, 312, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_scale.rotate.solid 8 + 32, 376 + 32, TestSprite, ScaleX, ScaleY, -(Rotate * 4)
  AF2.OptimizedPrint "Scaled/Rotated Sprite Blit", 80, 384, 1, AF2.false, GFX_h, GFX_v
  AF2.OptimizedPrint "(solid version)", 80, 392, 1, AF2.false, GFX_h, GFX_v

  AF2.SprBlit_trans 363, 379, @AFlib2_titleshadow.p_data[AFlib2_titleshadow.p_dataindex[0]], GFX_h, GFX_v
  AF2.SprBlit 360, 376, @AFlib2_title.p_data[AFlib2_title.p_dataindex[0]], GFX_h, GFX_v

  AF2.CustomSync fps70

  ScreenCopy

Loop while inkey$ = ""

AF2.ClearKeyBuffer


' Now, let's clean up the mess here to free up some memory!!  ;)
'--------------------------------------------------------------------------
AF2.RemoveCustomSpr TestSprite
AF2.RemoveCustomSpr BGtile
AF2.RemoveSpr AFlib2_title
AF2.RemoveSpr AFlib2_titleshadow
AF2.RemoveFontSet 1


' Thank you all, and good night, everybody!!!  :D !
'--------------------------------------------------------------------------


....and you can download the result of this code right here, as this one will remind you of all of the amazing sprite blitting that this game lib has to offer for all 8-bit graphics modes in FB!!!

With that happy thought in mind, be seeing you again now!!  :king:



GIVING YOU THE VERY LATEST HEADS-UP TONIGHT,


Adigun Azikiwe Polack
One of the Founders of “Aura Flow” ::: Continuing Developer of “Frantic Journey”
Current Developer of “Star Angelic Slugger” ::: Webmaster of the “AAP Official Projects Squad”
Original Creator of the “The New FreeBASIC 8-Bit Palette Machine” and “AFlib2 - Aura Flow Library 2”
Logged

url=http://dhost.hopto.org/aapproj/][/url]
Your *official* home of the FreeBasic GFX Demo Central, now holding over 150 FB graphics demos so far!!!  Cheesy !
Adigun A. Polack
Ancient Guru
****
Posts: 691



WWW
« Reply #76 on: March 14, 2006, 01:59:18 AM »

To all of you now:

Pardon me up front for making a double-post here, as I have got a brief yet *vital* announcement to make.

Right now, since the old Pionex 450mhz computer from my room area was shot from earlier this month of March 2006 due to a blown motherboard, I was (and currently am!  Wink ) allowed on at least one of the other computers to continue the work close to where I left off!!  The beauty of it is that I have already and successfully backed up my AFlib2 work (documentation and all!!) on both floppys and CD-R disks just a few days or so before that disaster even happened!!!  Cheesy !  Now, I am slowly but surely setting up and making camp on one of the other computers, so to speak, so that I can resume and finish up my documentation for this game lib there.  That will at least hold me over until I end up with a newer computer of my own in my room area, ok?  Smiley !

Thank you people so very much for your fine attention.  Bye for now as I do what I can to rock the AFlib2 joint wide open!!!  :king:



PICKING UP THE PIECES,


Adigun Azikiwe Polack
One of the Founders of “Aura Flow” ::: Continuing Developer of “Frantic Journey”
Current Developer of “Star Angelic Slugger” ::: Webmaster of the “AAP Official Projects Squad”
Original Creator of the “The New FreeBASIC 8-Bit Palette Machine” and “AFlib2 - Aura Flow Library 2”
Logged

url=http://dhost.hopto.org/aapproj/][/url]
Your *official* home of the FreeBasic GFX Demo Central, now holding over 150 FB graphics demos so far!!!  Cheesy !
xteraco
Ancient QBer
****
Posts: 450



WWW
« Reply #77 on: March 26, 2006, 12:11:13 AM »

wow, thats insane...  glad you got your data recovered.. keep up the good work
Logged

url=http://www.random-seed.net][/url]
Torahteen
Ancient Guru
****
Posts: 744



« Reply #78 on: March 26, 2006, 12:19:53 PM »

Phew, what a relief. After hearing about your computer, I thought that the lib would be delayed. But that just wouldn't be you. Good luck.
Logged

quote="Deleter"]judging gameplay, you can adaquately compare quake 4 with pong[/quote]
Pages: 1 ... 4 5 [6]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!