Register    Login    Forum    FAQ    PinSimDB.org

Board index » Welcome to GoPinball » General Discussion




Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2, 3  Next
Author Message
 Post subject: creation dmd animation
 Post Posted: Thu Feb 21, 2019 5:44 am 
Offline

Joined: Sun Dec 30, 2018 8:17 am
Posts: 68
Location: France
what is the best way to do this?


Last edited by backup on Thu May 09, 2019 2:51 pm, edited 2 times in total.

Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 6:51 am 
Offline

Joined: Thu Aug 16, 2012 11:12 pm
Posts: 2252
Location: Arkansas, USA
Gimli has created three tutorials for DMDs that are available here:

viewtopic.php?f=55&t=5050
viewtopic.php?f=55&t=5186
viewtopic.php?f=55&t=5147

George


Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 8:21 am 
Offline

Joined: Sun Dec 30, 2018 8:17 am
Posts: 68
Location: France
ok


Last edited by backup on Thu May 09, 2019 2:52 pm, edited 2 times in total.

Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 8:29 am 
Offline

Joined: Mon Jan 27, 2014 12:36 pm
Posts: 2686
Location: Ontario, Canada
If you are extracting from an existing ROM Gin and likely Francisco probably can help.
This uses DMD fonts

If you are creating your own Slam had this old video which uses image lists and overlays for dmd
https://youtu.be/j3Z6WBHXV6U

And this
https://youtu.be/Sg6N_Bjq8Vk

And this
https://youtu.be/7ER4w0kWJxs


Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 11:17 am 
Offline
User avatar

Joined: Mon Sep 21, 2015 10:33 am
Posts: 160
Location: UK - Bridgnorth (Shropshire)
Hi Backup,

If you wish to create your own (original) DMD 'Animations'; 16x128, 32x128 and/or 64x192 (Pixel-by-Pixel or otherwise), the tools that may help you are:

- DMDPaint http://ainc.de/
- Gfx2Dmdf http://www.pinsimdb.org/pinres/index-10-future_pinball?searchTitle=gfx2dmdf&searchType=-1&searchSubtype=-1&searchAuthor=&searchAuthorIdx=-1 - where an understanding of additional graphics applications would also be of use.

Hopefully you already have the above tools/applications, and that they make sense to you, but if not - please reach out and I will help where possible.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FYI: I can assist with creating a Future Pinball *.dmdf file with either the above tools, or an original font within Future Pinball's own "DMDFont Manager" application; and have created DMD fonts such as Stern's 'The Walking Dead' (Blood) Font (Alpha-Numeric), Stern's KISS 'Fire' Animation Number Fonts (5 x DMD font sets required to create the 'Fire/Flicker' animation), Service Menu options fonts etc. ** which being honest - I enjoy making :geek: :lol: **

I could also assist with the extraction of DMD Animations from available ROMs through the use of vPinMAME (as well as Music/Audio, SFX if required); and have assisted Gimli in the past with DMD Animation extracts for Indiana Jones, Monster Bash etc.. Not that I have the knowledge/experience of Francisco/Smoke etc. - but definitely enjoy this as a hobby.

I agree with you that a 'DMD' adds to a tables appeal (especially at my age... LOL), but I also like the JJP, Spooky Pinball, Stern etc. LCD Videos/Animations; all of which could be easily achieved through the use of Future Pinball and "PinUp System/Player" IMHO :roll: ... so with this and the ever seemingly increasing BAM functions/capabilities (a Big Thanks to Rav :) ) will allow Future Pinball to continue being a great program/simulator for both original and future pinball table re-creations; not that I have created a pinball table myself :? .

I also attempt to create what I like to call a "PAM".... that being a Pointless Apron Modification (PAM), where I use BAMs Mini-Playfields to capture DMDs etc. and scale, rotate etc. and use on the apron ... Totally 'Pointless', but none the less ... fun for me.

So - If I can help :?: - please let me know.

Gin


Last edited by Gin on Thu Feb 21, 2019 3:32 pm, edited 1 time in total.

Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 12:08 pm 
Offline

Joined: Sun Dec 30, 2018 8:17 am
Posts: 68
Location: France
merci à tous .


Last edited by backup on Thu May 09, 2019 2:52 pm, edited 1 time in total.

Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 6:15 pm 
Offline
User avatar

Joined: Mon Aug 15, 2011 10:02 am
Posts: 1872
Location: Argentina
What I have done in my little eperince:

Fonts:
* Hand redraw dot by dot all fonts and numbers using FP DMD font editor, take in mind that the font MUST include the separation in between letters, usually is a dot.-
* Diferent fonts for diferent size.-

Using images:
* If you going to use a image, a .png is recomended and your font must be 128 x 32 pxs for most comon DMD in a grey scale like:

Attachment:
Show000000.jpg


* If you use DMD Paint ALLWAYS keep the .txt as backup since you cant esit there the .dmdf


Table implementation:

Basics:
The way we use the fonts in FP is this

-You have a set of fonts:
ABCDEFGH.........

And each letter is a frame of the DMD animation:

Lets say that the animation have 4 frames, we save each frame in a single letter, dosent matter wich ones since you going to use all the letters and symbol, like this:

Image

So what we going to do is script something so the DMD show the letters a,b,c,d in the DMD


You do not have the required permissions to view the files attached to this post.


Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 6:18 pm 
Offline
User avatar

Joined: Mon Aug 15, 2011 10:02 am
Posts: 1872
Location: Argentina
So the DMD looks like this:

Attachment:
output_BKs98g.gif


next scriptting a DMD


You do not have the required permissions to view the files attached to this post.


Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 6:24 pm 
Offline
User avatar

Joined: Mon Aug 15, 2011 10:02 am
Posts: 1872
Location: Argentina
My code, have thing grabed from Glxb code I will paste here and explain it

Code:


'*************************************************************************************************************
'*************************************************************************************************************
'******************************************************** D M D ********************************************************
function RandomNumber(ByVal max)
   RandomNumber = Int(max * Rnd + 1)
end function

            sub stopdmds
               TimerDMD.Enabled = false                
               TimerDMD2.Enabled = false                
               Timeraddzero.Enabled = false
            end sub
'DMD

' *****dmd tHIngS
dim dmdstring
Dim PrimerLetra
Dim UltimaLetra
Dim Fuente
Dim Dmdinuse
dim velocidad
DIM textstring
dim atractcount
dim mantener


dim showingjackpot
DIM dmdinuselow

'MODELO
sub Target100000_hit
PrimerLetra=32
UltimaLetra=125
fuente =1
velocidad=50
textstring="[f1] "
mantener=10
empiezadmd
end sub



Sub empiezadmd
   TimerDMD2.Enabled = false
   TimerDMD.Enabled = false
   TimerDMD.Interval = velocidad
   Timeraddzero.Enabled = False   
   TimerDMD.Enabled = True
   Dmdinuse=true
   if showingjackpot=true then
      exit sub
   end if
end sub


sub TimerDMD_expired()
                        'AddDebugText "timer exp"
                        'AddDebugText ""&PrimerLetra   
   TimerDMD.Enabled = false
   PrimerLetra = PrimerLetra + 1
   dmdstring = "[f"+cstr(fuente)+"][xc][yc]" &chr(PrimerLetra) &"[f1] "&textstring
   MyDmd.Text=dmdstring
   MyDMD2.Text=dmdstring
   if (PrimerLetra => UltimaLetra) then    
      'AddDebugText "to zero"

      
      TimerDMD.Enabled = false
      Timeraddzero.Interval = mantener
      Timeraddzero.Enabled = true
      
      exit sub   
   end if
   TimerDMD.Interval = velocidad
   TimerDMD.Enabled = True
end sub


sub Timeraddzero_expired
      'AddDebugText "dmd libre"
      textstring="[f1]"
      Timeraddzero.Enabled = False   
      Dmdinuse=false
      dmdinuselow=false
      showingjackpot=false
      bumpersindisp=false
      MyDMD.FlushAnimation
      MyDMD.FlushQueue   
      MyDMD2.FlushAnimation
      MyDMD2.FlushQueue         
      addscore(0)
end sub





Sub empiezadmd2
   if dmdinuse=true then
      exit sub
   end if
   TimerDMD2.Enabled = false
   TimerDMD2.Interval = velocidad
   Timeraddzero.Enabled = False   
   TimerDMD2.Enabled = True
   Dmdinuselow=true
end sub

sub TimerDMD2_expired()
                        'AddDebugText "timer exp"
                        'AddDebugText ""&PrimerLetra   
   TimerDMD2.Enabled = false
   PrimerLetra = PrimerLetra + 1
   dmdstring = "[f1] "&textstring &"[f"+cstr(fuente)+"][xc][yc]" &chr(PrimerLetra)
   MyDmd.Text=dmdstring
   MyDMD2.Text=dmdstring
   if (PrimerLetra => UltimaLetra) then    
   '   AddDebugText "to zero"
      TimerDMD2.Enabled = false
      Timeraddzero.Interval = mantener
      Timeraddzero.Enabled = true
      exit sub   
   end if
   TimerDMD2.Interval = velocidad
   TimerDMD2.Enabled = True
end sub





Function FormatScore(num)
    Dim n, f, s
    n = CStr(num)
    f = ""
       
    do while len(n)>3
        if len(f)>0 then
            f = Right(n, 3) & "," & f
        else
            f = Right(n, 3)
        end if
        n = Left(n, Len(n)-3)
    loop
    if len(n)>0 then
        if len(f) > 0 then
            f = n & "," & f
        else
            f = n
        end if
    end if
    FormatScore = f
End Function


Top 
 Profile  
 
 Post subject: Re: creation dmd animation
 Post Posted: Thu Feb 21, 2019 6:37 pm 
Offline
User avatar

Joined: Mon Aug 15, 2011 10:02 am
Posts: 1872
Location: Argentina
This part, as the name says, stop all dmds

The DMD works with 2 timers, one that will change the font after it expires if there are a font next, and one that will add 0 points when the last frame (letter) is show, becouse if not the DMD will stick with the last frame

In the code are 2 DMD timers (TimerDMD and TimerDMD2) becouse tables usually have a priorization about what show the DMD if 2 animations come, The Jackpot is the usually example of that, lets say that the bumpers have a animation when hit and sudenly you hit a Jackpot, the Jackpot DMD animation cant be stoped, there are a lot of priorization en pinball tables

Code:
            sub stopdmds
               TimerDMD.Enabled = false                
               TimerDMD2.Enabled = false                
               Timeraddzero.Enabled = false
            end sub


Top 
 Profile  
 
Display posts from previous:  Sort by  
 
Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2, 3  Next

Board index » Welcome to GoPinball » General Discussion


Who is online

Users browsing this forum: Charleschela, Google [Bot] and 9 guests

 
 

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to: