Jump to content

How do I make a looping LightImage?


Recommended Posts

I'm trying it create a LightImage that loops continuously and can be turned off and on.  It looks like the best I can do is make it ping pong by turning it on and off.  I'm using a LightImage because it allows transparent, self illuminated images to be placed on a playfield.  Has anyone tried this?

I think I might be able to do this with a single image LightImage and manually swap the textures based on a timer.   Does anyone know if you can replace the texture on a LightImage object with the xBAM.SetTexture() method?

 

I've also thought about creating a separate LightImage and ImageList object for each frame and toggling them on and off in sequence.... but I'm talking about a 15 or 30 frame animation.  That's a lot of objects.

 

Thanks. 

Edited by SpacePirateScott
Link to comment
Share on other sites

The only thing I can think of is to create an overlay the same size as the playfield.  Then create an animation using an image list.  Look at the frame option in the manual.  You won't need to use xBAM.SetTexture() or timers.  If you want an example, look at any FP table that has video.  I think 30 images might be a little demanding on some PCs if you use images of 2048x4096.  I think images of 1024x2048 would probably work.  You can make the overlay transparent by using a transparent frame.  If you don't have the transparent frame, you can use the one that is in the FizX AIO or many tables use a texture that is named "AAtransparentPerfect.tga". 

 

There might be other ways to do this.  TeryRed might have a different approach. 

Edited by GeorgeH
Link to comment
Share on other sites

  • Content Provider
Posted (edited)
1 hour ago, SpacePirateScott said:

I thought about this but I need this to be self illuminated like a light. I believe overlays are just lit with the defuse brightness of the main light or the flashers.  I could be mistaken about that

 

That is the case with ALL lights in FP except for flashers. None of them are "self illuminated". They are all affected (limited) by FP's main lighting and BAM's changes to global lighting and Post Processing, including diffusion, etc.

 

The only things that are self-illuminated are holograms, flashers, the HUD, display elements (gas segment, etc) and the translite.

 

 

So for any "light" (except for flashers), you may need to brighten them alot past their normal amount of 1.0 with a BAM brightness command. You would need to adjust this to match what you want depending on your BAM lighting / post processing settings.

 

 

*** To brighten a Light / Bulb / Image Light, etc ***

 

You need to add the following to allow Ext commands to be used.

 

xBAM.CreateAllExt()    ' create BAM Extension commands

 

 

Then you can adjust any light with various bam commands. You need to add Ext to the name of the light in the BAM command. 1.0 is default FP brightness, but you'll need much brighter in most cases. Example:

 

NameOfLightExt.brightness = 2.5

 

 

*** To brighten anything else ***

 

With anything else you need use BAM to brighten the texture. This can textures used on anything. It can be overlays, surfaces, etc. (the only thing you can't brighten are decals I think). 1.0 is the FP default... but you'll need much brighter in most cases.

 

You MUST have the texture added to an Image List to allow BAM to "see" the texture in FP, or the command will have no effect! So I always create a "Textures" Image List, and I add ALL textures to it, just in case. Then save the table before testing!

 

xBAM.GetTexture("name of texture image").brightness = 2.5

 

 

 

So you can use Overlays to act as a light (you would need to add code to control it like that), and then control them the way you want... BUT... you will need to brighten each texture used. This is what I had to do with "Blue Vs Pink - Bam Edition" for the Overlay it used on the playfield.

 

 

 

 

Edited by TerryRed
Link to comment
Share on other sites

Posted (edited)

Wow, the overlay worked worked perfectly.  It was exactly the effect that I wanted.  Right now, I'm doing a reskin on the Space Cadet table, to learn the tools and techniques.  My next table I wanted to learn how to create pup packs so I wanted to update a simple table that would benefit from the addition of videos. I'm going to update the Roller Disco table, and you can't update the Roller Disco table without adding a mirrored disco ball.  The animated overlay will work great for adding the disco ball's moving light spots to the play field.  I will post some videos when I get it working.

 

Thanks for the help 

Edited by SpacePirateScott
Link to comment
Share on other sites

There is a hologram option that is lighted but it is translucent.  The only way to make it work in your case would be to add a black overlay under the hologram.  The GetTexture BAM code is easier if you can get it bright enough for you. 

Link to comment
Share on other sites

Thanks for the idea.  I tried this as well, but it looks like the holograms are rendered after all of the other playfield objects are rendered.  That's also useful, but in my use case, I want it to like the shadow maps and render under the playfield objects.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...