Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. Thank you for your support. Tom Speirs

Patreon

[RESOLVED] Media DMD when game rotate


PcTeknic

Recommended Posts

I have configured Pinball Arcade with FreeCameraMod.
The direct opening of the tables works.
Closing the game works only if PinballX runs as administrator.
FCM manages the Backglass correctly.
FCM shows the DMD, but it shows a black screen, so I have had to use hybrid cameras so that the tables are visible with the included speaker panel and DMD.
Since the game's DMD is not visible, I have sent it elsewhere so that it doesn't get in the way and so PinballX can display the Pinball Arcade logo on the DMD monitor.
But since running the game rotates the screen, the DMD is not shown as being out of range.
Could PinballX be able to recalculate the position of the DMD when the screen rotates?
This should not happen if the reference position was calculated by Monitor, eg. Monitor 3 x = 0 y = 0 w = 1024 h = 256
But seeing that this failure is procucted, I understand that PinballX calculates the position based on the sum of the screens, for example. x = 5760 y = 0 and this is correct when the screens are horizontal, but when changing to vertical it becomes x = 4080 y = 0
If PinballX took into account whether the screen rotates or not, it would fix this problem.

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

He configurado Pinball Arcade con FreeCameraMod.
La apertura directa de las mesas funciona.
Cerrar el juego funciona solo si PinballX se ejecuta como administrador.
FCM gestiona los Backglass correctamente.
FCM muestra el DMD, pero muestra una pantalla negra, por lo que he tenido que usar camaras hybridas de manera que se vean las mesas con el panel de altavoces y DMD incluidos.
Dado que no se ve el DMD del juego, lo he enviado a otra parte para que no estorbe y que PinballX pueda mostrar el logo de Pinball Arcade en el monitor del DMD.
Pero como al ejecutar el juego se rota la pantalla, el DMD no se muestra por quedar fuera de rango.
¿Se podría conseguir que PinballX recalculase la posición del DMD cuando rota la pantalla?
Esto no debería ocurrir si la posición de referencia fuera calculada por Monitor, por ej. Monitor 3 x=0 y=0 w=1024 h=256
Pero viendo que se procuce este fallo, entiendo que PinballX calcula la posición basándose en la suma de las pantallas, por ej. x=5760 y=0 y esto es correcto cuando las pantallas están en horizontal, pero al cambiar a vertical pasa a ser   x=4080 y=0
Si PinballX tuviera en cuenta si la pantalla gira o no, solucionaría este problema.

Link to comment
Share on other sites

Pinballx can probably not do it correctly, as the process that is being launched rotates the screen unless you position the dmd wrong before the game launches. I also have the blackscreen problem but it is possible to setup fcm without cabinet mode so it will display the dmd on the playfield and mirror the dmd to your dmd screen using dmdext but then you need to display the backglass yourself (which i do using my image monitor view tool). also  what i do is rotate the screen myselve using irotate and after i rotated the screen i launch ffplay with the movie i want to see to play the movies on my dmd this works nice and you can pass the tablename of the game as a parameter to the launch before script so you know which movie to load in ffplay. In the launch after script i kill ffplay 

my Launch before script :
 

start pinball_arcade_remap.exe
powershell -Command "Start-Process 'irotate.exe' '/2:rotate=90 /exit' -Verb runAs -WorkingDirectory 'C:\Program Files (x86)\iRotate\'"
start Image_Monitor_View.exe 0 "C:\PinballX\Media\Pinball Arcade\Backglass Images\%1.png"
start "" "c:\pinballx\ffplay.exe" -left 2360 -top 0 -x 1920 -y 540 -alwaysontop -noborder -loop 0 "C:\PinballX\Media\Pinball Arcade\Topper Videos\%1.mp4"
powershell -Command "Start-Process 'dmdext.exe' 'mirror --source=pinballarcade --destination=virtual --virtual-stay-on-top --virtual-hide-grip --virtual-position=2360 540 1920 540 --virtual-dotsize=1.1' -Verb runAs -WorkingDirectory 'c:\pinballx\scripts\'"


you have to use Start for everything except irotate so the other commands do not get executed before the screen has rotated  %1 is the tablename

My launch after script

taskkill /IM pinball_arcade_remap.exe
taskkill /IM Image_Monitor_View.exe
taskkill /IM ffplay.exe
taskkill /IM dmdext.exe
powershell -Command "Start-Process 'irotate.exe' '/2:rotate=0 /exit' -Verb runAs -WorkingDirectory 'C:\Program Files (x86)\iRotate\'"

I can't remember exactly but i think i also had to set it up as other system and here is my configimage.thumb.png.14667583c7e506ed13425301dfb60b08.png

and here is my fcm config as you will see i disabled cabinet mode

Settings.ini

Disabling the cabinet mode is only needed if you want to mirror the dmd from playfield to dmd screen if you do not need or want that you can only use the ffplay.exe part in combination with irotate to rotate your screen manually and then use ffplay to display whatever movie you like.

It is a workaround that works as i'm doing it and it works nice ffplay.exe is nice for this and you can also use irotate + ffplay.exe to display anything you like on your dmd screen

do note make sure to use latest ffplay.exe as older versions do not have all the options i use like to position the video

als do note the mirroring of the dmd does not work for all dmd's. and it is possible if the game got updated that it won't work anymore as i have not tried it lately but you can always use only the ffplay.exe part to display what you like

 

Link to comment
Share on other sites

Thanks joyrider, always with solutions for all.

With this setup the game show 2 DMD's, true?

One in playfield and other one mirror in DMD and this is not valid for all tables.

The monday i can made some test with yours files.

But this method need no one or two External programs to work (FCM and iRotate for rotate playfield after), this method need 6 ir 7 External programs to work, FCM, iRotate, DMDExt, Image Monitor for Backglass, FFPlay if you need Topper, script Launch Before and script Launch After.

If is possible Launch table and show medias only with PinballX, i don't use FCM.

But this don't work, ok, i use FCM, but if need use 6 or 7 External programs, i decline.

Pinball Arcade always with problems.

Arcooda looks great, but don't support all tables and isn't free, 150€ for cabinet unlock Code its very money.

Link to comment
Share on other sites

i'm not sure if the dmd on playfield needs to be visible its possible dmdext grabs it from memory but i have not ran pinball arcade lately so can not remember. It is possible if pinballarcade got updated recently (which i think it has recently) dmdext needs update for memory grabber also and it does not work for all tables that i do remember. (thats why i also display ingame dmd)

you could always use ffplay.exe + irotate to show a video a on your dmd.

I display 2 things on my dmd screen half for topper video half for dmdext mirroring. I like to have control over things so i rotate my screens myselve using irotate. Do note positions can be different with you because of this you might have to calculate the ffplay positions.

FCM is not being updated anymore and they never fixed the black dmd screen problem with steam version in the beginning it worked without all that. But i also wanted to display topper and the only workaround is to rotate screen yourselve and display a movie yourselve using ffplay.exe otherwise dmd from pinballx is not at correct positions due to the rotation of the screens or it stops displaying the dmd movie after screen rotation

Its the only solution i had found but you don't need to use dmdext if you just want to show a video on your dmd screen without score

i would not buy arcooda it's too expensive and fcm might not work correctly to be able to direct launch a table but never tried it. i only posted about what i do to give you the combination of ffplay + irotate to show something on your dmd screen.

With me i had problem to display the ingame dmd if fcm was running in cabinet mode thats why i had disabled it only then i could get it to display the ingame dmd

  • Like 1
Link to comment
Share on other sites

That's what I had thought after your comment or advice, use Image Monitor or FFPlay to display an image or video in the DMD.

I think that if PinballX were to rotate the screen, before and after launch, PinballX itself could recalculate the position of all the screens, not just the DMD and we could manage the images of DMD, topper or Backgalss, directly from the database .

PinballX has the option to rotate the screen for games that allow you to do it in the game, such as FX2 or FX3, however it does not have it for Pinball Arcade, which is precisely mandatory to run vertically.

If it were also possible for PinballX to directly open the tables, even FCM would no longer be necessary.

On some occasion I think I remember that the tables could be opened directly from PinballX, I do not remember how long ago and still I was wrong and it was with NukePA.

Regarding Arcooda, supposedly if you use Arcooda you no longer need FCM, but paying € 150 to have support on only 76 tables and not all, I do not see sense.

Thanks for your joyrider comments and for the great work you do with the Scripts, I have used your work for Pinball Wicked before they released the cabinet bracket and for some other game, so it's not that I don't want to use what you've done and So much work will have cost you, I am just looking for a way to simplify the whole process and I think that if PinballX manages the rotation, it will solve many problems.

I understand that PinballX sends the DMD image out of range when a rotation occurs that he has not done since we do it with iRotate or with FCM, if the rotation were done by PinballX everything would be different.

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

Eso había pensado tras tu comentario o consejo, usar Image Monitor o FFPlay para mostrar una imagen o video en el DMD.

Yo pienso que si PinballX se encargase de rotar la pantalla, antes y después del lanzamiento, el mismo PinballX podría recalcular la posición de todas las pantallas, no solo del DMD y podríamos gestionar las imágenes de DMD, topper o Backgalss, directamente desde la database.

PinballX tiene la opción rotar pantalla para juegos que permiten hacerlo en el juego, como FX2 o FX3, sin embargo no la tiene para Pinball Arcade que precisamente es obligatorio ejecutarlo en vertical.

Si además fuera posible que PinballX hiciera la apertura directa de las mesas, ya no sería necesario ni siquiera FCM.

En alguna ocasión creo recordar que se podían abrir las mesas directamente desde PinballX, no recuerdo hace cuanto tiempo e igual me equivoco y era con NukePA.

Respecto a Arcooda, supuestamente si usas Arcooda ya no necesitas FCM, pero pagar 150€ para tener soporte en solo 76 mesas y no en todas, no le veo sentido.

Gracias por tus comentarios joyrider y por el gran trabajo que haces con los Scripts, he usado trabajos tuyos para Pinball Wicked antes de que sacaran el soporte cabinet y para algún juego más, por lo que no es que no quiera usar lo que has hecho y tanto trabajo te habrá costado, simplemente busco la manera de simplificar todo el proceso y creo que si PinballX gestiona la rotación, solucionará muchos problemas.

Entiendo que PinballX envía la imagen de DMD fuera de rango al producirse una rotación que el no ha hecho ya que la hacemos con iRotate o con FCM, si la rotación la hiciera PinballX todo sería distinto.

Link to comment
Share on other sites

Integrated Pinball Arcade support worked much the same as Pinball FX2/3 back in the day before they changed up the loading menu and other functions. Since, FCM was the only recourse.

Since you are requesting a functionality change for PinballX, please submit your request here:

 

  • Like 1
Link to comment
Share on other sites

Thanks Again joyrider.

I use image monitor to show in DMD one logo image of Pinball Arcade.

Work fine.

My PinballX Seetings:

[PinballArcade]
WorkingPath=C:\Pinball Arcade\FreeCameraMod
Executable=TPAFreeCamMod.exe
Parameters=-table [TABLEFILE] skipwhatsnew
Process=PinballArcade11.exe
WaitForSelect=100
Enabled=True
LaunchBeforeEnabled=True
LaunchBeforeWorkingPath=C:\Pinball Arcade
LaunchBeforeExecutable=TPALauchBefore.bat
LaunchBeforeParameters=
LaunchAfterEnabled=True
LaunchAfterWorkingPath=C:\Pinball Arcade
LaunchAfterExecutable=TPALaunchAfter.bat
LaunchAfterParameters=
WaitFor=15

The Launch Before Script only for ImageMonitor

start Image_Monitor_View.exe 2 "C:\Pinball Arcade\DMD.png"

Free Camera Mod rotate screen and open tables, DMD its send to same monitor as Backglass for hiden

The Launch After script close image monitor and rotate again the screen with iRotate

taskkill /IM Image_Monitor_View.exe
powershell -Command "Start-Process 'irotate.exe' '/1:rotate=0 /exit' -Verb runAs -WorkingDirectory 'C:\iRotate\'"

Draco this isn´t a feature request, this is a bug report, we shouldn't need ImageMonitorView, if PinballX had the option to rotate the screen like Pinball FX2 and Pinball FX3 (although in those games it is not necessary), I suppose that PinballX could recalculate the positions by having done the rotation instead of a program external and simply put in the database <hidedmd> True </hide>

DMD.png

Image_Monitor_View.exe TPALauchBefore.bat TPALaunchAfter.bat Settings.ini PinballX.ini

Link to comment
Share on other sites

If the function to rotate was not needed, then is later needed or requested, that would define it as a feature request to add functionality.  

If the function to rotate was already a part of the integrated support for the simulator and is not functional, then that would define it as a bug 

I hope that clears things up a little.

Link to comment
Share on other sites

Well, it depends how you look at it.
If we consider that games that do not need that option do have it and precisely this one that needs it does not have it, I think they could practically be understood as a bug, but you are right, surely it should have been raised there.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...