Jump to content
Sign in to follow this  
KevKelley

Multiple vblank in bB?

Recommended Posts

After reading some of the comments and threads about splitting the color of a scanline, and after reading RT's site, I was curious if it is possible in bB to use multiple vblanks to split the colors of a play field.

 

So the desired effect would probably be something like this:

 

The playfield would be something like this:

 

Playfield:

XXXXXXXXX

X..........x.....X

X.......x........X

X....x...........X

XXXXXXXXX

 

Using vblanks, basically make the border a different color and any pfpixel inside the border be a different color.

 

I had read how to use it but my understanding was that in bB I could only use it once and it would essentially force the entire playfield a different color during the loop. Not sure if this is correct but was interested in learning more. If this is something more complex involving assembly, I may have to put off playing around with it but I thought it would be interesting, especially when seeing the amazing effects like in the Stay Frosty menu.

Share this post


Link to post
Share on other sites

I guess my main question would be how to time it's use or if it's even practical?

Share this post


Link to post
Share on other sites

You can "interlace" your playfield.

 

Have your colors alternate between even and odd scanlines each frame. 

 

I have a stage select screen designed that I never added to Tron that uses it to get all four colors.

  • Like 1

Share this post


Link to post
Share on other sites
59 minutes ago, orange808 said:

You can "interlace" your playfield.

 

Have your colors alternate between even and odd scanlines each frame. 

 

I have a stage select screen designed that I never added to Tron that uses it to get all four colors.

By doing that, wouldn't it have a somewhat of a flicker effect?

Share this post


Link to post
Share on other sites
2 hours ago, KevKelley said:

By doing that, wouldn't it have a somewhat of a flicker effect?

Yep, but it gets you two colors on a scanline without modding the kernel.

Share this post


Link to post
Share on other sites

How would you determine where the second color would start? 

Share this post


Link to post
Share on other sites
4 hours ago, KevKelley said:

How would you determine where the second color would start? 

Make two playfield maps and two color profiles.  Alternate between them at run time.

 

Playfield frame one:

xxx...   red line

...xxx   blue line

xxx...   red line

.x.x.x   blue line

 

Playfield frame two:

...xxx   blue line

xxx...   red line

...xxx   blue line

x.x.x.   red line

 

Result:

RRRBBB

RRRBBB

RRRBBB

RBRBRB

Share this post


Link to post
Share on other sites

Depending on the kernel you're using, you might be able to use CTRLPF to set either side of the playfield to P0 and P1 colors. It sounds like that might meet your requirements.

 

[edit] nope. Reading your original post again, sounds like you want just the border to be a different color. You'll need a custom kernel, or flicker.

Share this post


Link to post
Share on other sites

I see what you were saying. Since I use pfpixels in the middle,bi couldn't see a way to make it work (except with a custom kernel). Unfortunately I am not that far along in my learning to do so... But it seems like an interesting project to undertake. 

 

Currently I will just play with background colors for now to break up the monotony.

 

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...