dwi@manta.NOSC.MIL (Steve Stamper) (07/07/89)
I am using the standard Amiga GEL system to animate 3 BOB's
and 1 VSprite on a 320X200 64 color ExtraHalfbrite, double
buffered display. I have done this a lot with BOB's and have
done programs with VSprites before but for some reason the
VSPrite in this program does not get drawn. When I traverse
the GELSINFO structure I see it on the list, but it is not
being drawn.
All BOB's behave normally but the VSprite is not there.
To set up the VSprite I basically do the same things I do to
the VSprite structures for the BOB's except:
1) Set the VSprite->Flags structure to VSPRITE for the Vsprite
and to SAVEBACK|OVERLAY for the BOB's
2) set the VSprite->SprColors field to point to a 3 word array
containing {0xfff,0xfff,0xfff} so that it will be all white.
(of course I have tried other colors too, just to see if
it was somehow blending into the brown background, but no go)
3) Set the VSprite->Width to 1 the VSprite->Depth to 2 and the
VSprite->Height to 16 (I have Imagedata, and the masks set up
for this size as well). The Bob's have depth of 6 and differing
widths and heights but they are all fine.
4) For the VSprite, PlanePick and Planeonoff are set to 0
the VSprite->VSBob field is set to null.
I do not use Morerows or any overscan, The program seems to run fine
except for the VSprite is not there.
I add the bobs using AddBob(Bobptr,rp) and add the
VSprite using AddVSprite(Vsp,rp).
Am I missing something, must I set up my GELSINFO structure any
differently? I tried inserting the ON_DISPLAY ON_SPRITE macros
in the redraw section, it made no difference (they are unnecesary
with SortGList()DrawGList()MakeScreen()RethinkDisplay() since
ON_SPRITE is the default for the system).
Any ideas why a VSprite could be added to the GEL List and not
drawn?
-Rogerrap@peck.ardent.com (Rob Peck) (07/08/89)
In article <866@manta.NOSC.MIL> dwi@manta.nosc.mil.UUCP (Roger Uzun) writes: >I am using the standard Amiga GEL system to animate 3 BOB's > [other details omitted] >and 1 VSprite on a 320X200 64 color ExtraHalfbrite, double >with SortGList()DrawGList()MakeScreen()RethinkDisplay() since >ON_SPRITE is the default for the system). > >Any ideas why a VSprite could be added to the GEL List and not >drawn? > See the sample program in the Programmer's Guide To The Amiga on VSprites. If I remember right, it does the DrawGList, (which creates a sprite copper list) and a MrgCop among other things. But then, RethinkDisplay I believe does a MrgCop too. HMMM. (Programmer's Guide To The Amiga is from SYBEX, author: ME.) The other thing that would DEFINITELY prevent vsprites from being allocated is the sprite-reserved fields (I forget their names) in the GfxBase and the GelsInfo structures. If these fields say there are no sprites available to the vsprite engine, no vsprites are drawn. Hope this helps Rob Peck
scott@ssgp32.UU.NET (Scott Evernden) (07/08/89)
In article <866@manta.NOSC.MIL>, dwi@manta.NOSC.MIL (Steve Stamper) writes: ... > All BOB's behave normally but the VSprite is not there. ... What's your GelsInfo->sprRsrvd field set to? -scott -- Scott Evernden PRIME Computer Inc. scott@ssgp32.Prime.COM Commercial Systems Group uunet!ssgp32!scott Technology Drive (508) 478-8600 x2984 Milford, MA 01757
dwi@manta.NOSC.MIL (Steve Stamper) (07/09/89)
In article <7162@ardent.UUCP> rap@peck.ardent.com (Rob Peck) writes: > >See the sample program in the Programmer's Guide To The Amiga on VSprites. > >The other thing that would DEFINITELY prevent vsprites from being allocated >is the sprite-reserved fields (I forget their names) in the GfxBase and >the GelsInfo structures. If these fields say there are no sprites available >to the vsprite engine, no vsprites are drawn. > >Rob Peck I bought your book a couple of years ago and have used it a lot. It has been a GREAT help. Unfortunately for some reason, this program does not want to show VSprites for any reason (I checked above ones), so I punted and am using simple sprites now, actually they are working out a lot better for me anyway. Funny because i have other 64 color EHB programs using VSprites with no problems. Thanks for a great book, it has helped me many times. -Roger Uzun
dwi@manta.NOSC.MIL (Steve Stamper) (07/09/89)
In my VSprite/BOB program my GelsInfo->SprRsrvd = 0xfc & (~(GfxBase->SpriteReserved)); This works for all my other programs. -Roger Uzuun