Jump to content



Photo
* * * * - 7 votes

The VP 10.3 beta thread


  • Please log in to reply
616 replies to this topic

#181 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 14 April 2017 - 02:15 PM

Whats the consensus on changing from VP units to actual measurement units (Inch/mm)?  Is this even feasible?  My biggest annoyance with things in VP is how they are not correctly sized.  Even the default table doesn't set a good example for proper sizes.

 

-Mike

Well IMHO it's not feasible. The VP units are used not only in VP but also in the scripts. Changing that would mean that no table would be playable anymore or at least would have issues. An internal conversion from mm/inches to VP units would give you rounding errors and vice versa. A wall with a height of 50 VP units would be 1.0638297872340425531914893617021 inches or 27.021276595744680549 mm. In the UI you have room to enter 3-4 decimal places most of the time but that would mean 1.0638 inches -> 49.9986 VP units. What about a conversion information in the status bar or a tooltip for selected textboxes? Would that be an alternative?


Edited by fuzzel, 14 April 2017 - 02:16 PM.


#182 sliderpoint

sliderpoint

    Pinball Fan

  • Members
  • PipPipPipPip
  • 760 posts
  • Location:Spokane, WA

  • Flag: United States of America

  • Favorite Pinball: Metallica

Posted 14 April 2017 - 04:50 PM

Well actually, if the ball is 50 VP units, that would be 1.0625 inches or 26.988 mm. It's all the small rounding that cause problems as they add up across the objects (like saying that 1inch equals 47vp units).

I bring this up because on a different project we have did all the math calculations to make objects in VP have the correct sizes out 4-6 decimals, and we were impressed at how closely VP matched a real physical behaviors when doing so. On a real physical machine a 1/16 inch can make a big difference. But doing all that math sucked.

My thought was that it could be like an editor option, your entry can be in inch or mm and behind the scenes VP would do a very precise calculation back to VP units for execution.


-Mike

#183 Andypc

Andypc

    Enthusiast

  • Members
  • PipPipPip
  • 167 posts
  • Location:London, United Kingdom

  • Flag: United Kingdom

  • Favorite Pinball: Medieval Madness / Lethal Weapon 3

  • PS3 Gamer Tag: Andypc
  • 360 Gamer Tag: Andypc

Posted 15 April 2017 - 12:19 AM

Has anyone managed to solve the frame rate problems when using UltraDMD and adaptive Vsync (Option 2).

 

This was a post I made in JP's Ghostbusters, but have noticed the same issue which quite a few UltraDMD games. The video show's the problem.as JP added UltraDMD to v1.2.1

 

"I was using the beta of 10.21, but am now running 10.21 final. I have updated all the scripts that came with 10.21final, but am still getting this issue. Not sure what has changed between v1.2.0 and v1.2.1 that is causing the issue? DOF or UltraDMD script changes? (I don't use DOF) I am getting the same issue with the latest version of a couple of JP's other tables (Mortal Kombat 2 etc) I am just running the slightly older version on my cab for the time being, but there is something in the latest versions causing a problem that wasn't there before.

 

I figured a video of the issue would make it much clearer to see what I am talking about. I don't have an issue with any other tables on my set-up. The video shows both versions running with exactly the same settings. v1.2.0 rock solid 60fps, v1.2.1 fps jumping up and down.

 

I posted this on the JP Ghostbuster thread on VPF, but thought someone hear may know the answer. V1.2.0 of JP tables run perfectly, but there is an issue with v1.2.1 Not sure what has changed between v1.2.0 and v1.2.1 that is causing the issue? DOF or UltraDMD script changes? (I don't use DOF) Using adaptive Vsync (Option 2) v1.2.0 is rock solid 60fps, v1.2.1 fps jumping up and down. I am getting the same issue with the latest version of a couple of JP's other tables (Mortal Kombat 2 etc) I am just running the slightly older version on my cab for the time being, but there is something in the latest versions causing a problem that wasn't there before.
 
I figured a video of the issue would make it much clearer to see what I am talking about. I don't have an issue with any other tables on my set-up. The video shows both versions running with exactly the same settings.
 

 

 

Hope this helps solve the problem."

 

 

I checked the CPU usage and with v1.2.1 it is maxing out (100%). With v1.2.0 cpu usage is fine. Gameplay with v1.2.1 is choppy even without vsync.


Edited by Andypc, 15 April 2017 - 10:53 AM.


#184 Drybonz

Drybonz

    Really bad at pinball, but having fun.

  • Members
  • PipPipPipPip
  • 1,538 posts

  • Flag: ---------

  • Favorite Pinball: Theatre of Magic

Posted 15 April 2017 - 02:09 AM

 

Whats the consensus on changing from VP units to actual measurement units (Inch/mm)?  Is this even feasible?

Well IMHO it's not feasible. The VP units are used not only in VP but also in the scripts. Changing that would mean that no table would be playable anymore or at least would have issues.

 

I hope that, whatever you guys all decide upon, that is does not break tables.



#185 flupper1

flupper1

    Enthusiast

  • Members
  • PipPipPip
  • 464 posts
  • Location:Netherlands

  • Flag: Netherlands

  • Favorite Pinball: Visual Pinball

Contributor

Posted 15 April 2017 - 07:28 PM

A new feature request: replace (or enable not using) layback. And because I am not sure I understand correctly: please correct me if I read the code wrong and or mis-interpreted the render logic. 

What's my point: 

When trying to write down a tutorial on ramps with refraction textures, like in Diner, I tried to understand how the renderpipeline works in VPX. I needed to do this, in order to show people how to easily set up Blender in order to render ramps with refraction. 

So with the addition in the 10.3 beta of the actual camera position I thought I had all the necessary information to properly setup the camera and objects. I have done this already for Diner, but that was a lot of trial and error and not exact positioning. The Diner ramps are made by making a proper ramp in Blender with Cycles set up for a glass-like shader and render that on top of an actual VPX screenshot, without the ramps, but with all the lights etc. In order to do this, the camera viewpoint from which the ramp is rendered in Blender, needs to be the same as the VPX viewpoint. As said, for Diner I found the correct set up by trial and error (for days on end...).

The good news is: with the actual camera position it is much easier to find the proper set up in Blender. To show that it works:

blenderwithlayback_t.jpg

In the red circles, you can see the camera position in VPX and divided by 1000 also the same in Blender. The blue areas are rendered objects in Blender on top of a VPX screenshot. In Blender the following variables are used for this setup: xscale, yscale, zscale, inclination, camera position and layback. 

During making this work, I had to investigate how the render pipeline works to replicate it in Blender. I think it works like this (but please correct me if I am wrong...):

- table elements are scaled with X scale, Y scale and Z scale 

- table elements are rotated along inclination (the table is, not the camera)

- table elements are skewed (in Blender: sheared) for half the angle value of layback

- some other code to position the camera based on the objects (I do not understand what is really happening here  :stunned: )

So all in all: the table with everything on it is transformed in many ways, the camera stays more or less put (after the code has determined where it should be). So changing inclination rotates the table, not the camera. In blender this looks like this:

blenderwithlaybackcamera_t.jpg

 

So far this looks fine, but when you look at the table sideways, you can see what "shear/layback/skew" does to the table:

blenderwithlaybackshear_t.jpg

 

The camera is straight and in the middle of the table above it, the table itself is transformed for the view:

blenderwithlaybackcam2_t.jpg

 

What I originally thought it would look like and what my feature request now is, is this:

blenderwithoutlayback_t.jpg

 

This is the camera in the position where a person's head would be and the view is keystoned. In Blender this is called "shift" in the red circle.  Also the camera has an angle (comparable to inclination, only that the camera is angled, not the table). 

 

Currently you can "trick" VPX into showing what that would look like, by setting a very high resolution and only using a part of the screen. This still has the table at an angle (inclination), but layback=0:

nolayback2original_t.jpg

 

The cutout of only the table, looks quite normal and should be proper 3D (no shear):

nolayback2_t.jpg

 

So to add this functionality, in essence this would only need the "shift parameter" as an addition to layback (which I then would set at zero). This shift parameter "only" moves the camera along the screen axis. This addition does not have to break compatibility, since for older tables it is just zero. 

This is not only useful for rendering stuff (ramps with refraction, but maybe later also true reflections of metallic surfaces, mirrors...). But it also gives people more freedom in achieving a proper keystone for cabinets.

 

Long story, but I hope I make sense to the dev's. Also maybe a first step to full dynamic rendering?



#186 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 15 April 2017 - 11:14 PM

Very nice post flupper. At the moment I don't have an idea how to add the shift parameter to the camera matrix. I have to research the way blender calculates the matrix first. Your understanding of the render pipeline is correct, the backdrop settings are used to create a view matrix that skews the scene if you set layback to something different than 0. Back in the VPX 10.0 alpha days I played a lot with the camera and there is some dead code inside that can be used to get what you want I guess but the values used for setting this up are totally different from what we use today. So just adding a shift parameter isn't that easy as it sounds but maybe I'm wrong ;)

#187 flupper1

flupper1

    Enthusiast

  • Members
  • PipPipPip
  • 464 posts
  • Location:Netherlands

  • Flag: Netherlands

  • Favorite Pinball: Visual Pinball

Contributor

Posted 16 April 2017 - 11:32 AM

Does this help?

http://ksimek.github...8/13/intrinsic/

 

About half way down the page is an interactive demo of the concept, and just above it some matrices used for this.



#188 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 16 April 2017 - 02:20 PM

should be pretty simple, we just need an additional shift of the geometry/cam matrix at the very end of the pipeline (after layback), right?



#189 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 16 April 2017 - 02:28 PM

That's exactly the stuff we need to test/experiment with

#190 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 16 April 2017 - 02:57 PM

rev3038 is up:

 

- change hotkey for toggling table/backdrop view to ctrl+space

- UI change: select view mode with drop down list (DESKTOP, FULLSCREEN and FULL_SINGLE_SCREEN) and use only one set of POV textboxes also change all comboboxes to 'drop list'
- add 3rd backdrop config column, especially for FSS
- unify camera/light mode special input code and increase update rate to avoid visual stutter
- fix bug in image manager if an image was imported/deleted not showing up in the properties drop down list
 



#191 jimmihenry

jimmihenry

    Hobbyist

  • Members
  • PipPip
  • 48 posts

  • Flag: Germany

  • Favorite Pinball: Alien Star (Gottlieb 1984); Genesis (Gottlieb 1986); Attack From Mars (Bally 1995); Nautilus (Playmatic 1984).

Posted 16 April 2017 - 05:41 PM

What can i say excellent, really useful feature. Didn't find the scaling key yet.

Alien_Star_Res_And_Dev.png



#192 vampirolatino2

vampirolatino2

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,430 posts

  • Flag: Spain

  • Favorite Pinball: Medieval Madness

Posted 16 April 2017 - 06:12 PM

Loving all the improvements!



#193 dark

dark

    3D model-man

  • VIP
  • 1,936 posts
  • Location:Toronto

  • Flag: Canada

  • Favorite Pinball: Star Wars, AbraCadaBra,MB, LAH,JPark...too many to choose!

Contributor

Posted 16 April 2017 - 06:23 PM

Checking out latest build, I like the change to back drop options, this makes me wonder if it could be changed to be a bit more stream lined and allow for more versatility?

 

Why not just remove the old selection method all together and just have the 'mode' drop down menu?  Also with the menu you set up as a drop down (which I really like btw) there's no reason why an author couldn't include as many backdrop xmls in the list as they wanted allowing for more creative views not to mention there are many cab users who run in portrait mode who this could help accommodate as well.

backdrop.jpg



#194 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 16 April 2017 - 06:33 PM

With the mode selection its a mixed bag. Usually i'd assume that a user just likes to choose the setup globally in the video preferences. But with FSS vs DT i'm not so sure.

There it might depend on a case by case basis. That's why i chose it to be like it is now. A 'test DT vs FS' setting that works only temporary (e.g. for authoring), and a 'real' setting (that is also saved with the table) to choose DT vs FSS.

Maybe that last setting should even move to the user options then??


Edited by toxie, 16 April 2017 - 06:35 PM.


#195 dark

dark

    3D model-man

  • VIP
  • 1,936 posts
  • Location:Toronto

  • Flag: Canada

  • Favorite Pinball: Star Wars, AbraCadaBra,MB, LAH,JPark...too many to choose!

Contributor

Posted 16 April 2017 - 07:24 PM

Perhaps the first 3 modes could be reserved for these some what standardised modes to keep with the global settings,  I guess my main point is it just would be nice to add additional custom backdrop settings.  I'm really not sure either what's best but I think it's worth discussing.



#196 Ben Logan

Ben Logan

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,275 posts
  • Location:California

  • Flag: ---------

  • Favorite Pinball: System 11

Posted 16 April 2017 - 08:49 PM

I love the idea of being able to toggle over to Full Single Screen on my cab, just for a different playing experience. That view looks so cool.

 

EDIT: I have turned off "force all table to cab mode" in video settings. Using the new FSS option in backdrop settings doesn't work for me. Is it supposed to put the backglass on the main monitor (similar to Hanzoverfist's hybrid view tables)? Or, am I missing something? Maybe I need to download a Hanzoverfist or Rascal hybrid view table for this to work? Thanks!


Edited by Ben Logan, 16 April 2017 - 09:33 PM.


#197 hanzoverfist

hanzoverfist

    Enthusiast

  • VP Dev Team
  • PipPipPip
  • 406 posts

  • Flag: Canada

  • Favorite Pinball: arabian nights, congo... heck I love e'm all

Posted 16 April 2017 - 10:04 PM

I've noticed in the latest build that background color in backdrop is not working properly, set to pure black is fine, but as soon as the values rise lets say 30,30,30 or higher the color is no longer representative of the color chosen in the color dialog.

 

 

This is affecting almost all my tables because most of them have not been set to pure black by the authors, and now appear washed out, like this:

 

 

EDIT: I know what is going on on the backdrop, the renderer is no longer rendering backdrop images in DT image field.. and it doesn't draw them in the editor backdrop area either

 

 

Attached File  bug in background color Clipboard-1.png   768.65KB   15 downloads


Edited by hanzoverfist, 17 April 2017 - 04:16 AM.

space-invader-wheel1_t.png


#198 hanzoverfist

hanzoverfist

    Enthusiast

  • VP Dev Team
  • PipPipPip
  • 406 posts

  • Flag: Canada

  • Favorite Pinball: arabian nights, congo... heck I love e'm all

Posted 17 April 2017 - 03:46 AM

I love the idea of being able to toggle over to Full Single Screen on my cab, just for a different playing experience. That view looks so cool.

 

EDIT: I have turned off "force all table to cab mode" in video settings. Using the new FSS option in backdrop settings doesn't work for me. Is it supposed to put the backglass on the main monitor (similar to Hanzoverfist's hybrid view tables)? Or, am I missing something? Maybe I need to download a Hanzoverfist or Rascal hybrid view table for this to work? Thanks!

 

Hi Ben,

 

Yes my FSS MOD tables have the backglass included INSIDE the vpx file. this is not a B2S mod.


space-invader-wheel1_t.png


#199 kiwi

kiwi

    Pinball Fan

  • VIP
  • 2,665 posts

  • Flag: Italy

  • Favorite Pinball: Star Trek 25th Anniversary



Posted 17 April 2017 - 05:50 AM

The new view mode drop-down menu to me rarely works,
only once I was able to switch modes.



#200 toxie

toxie

    VPF Veteran

  • VP Dev Team
  • PipPipPipPipPipPip
  • 5,734 posts
  • Location:berlin, germany

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 17 April 2017 - 06:24 PM

I've noticed in the latest build that background color in backdrop is not working properly, set to pure black is fine, but as soon as the values rise lets say 30,30,30 or higher the color is no longer representative of the color chosen in the color dialog.

 

 

This is affecting almost all my tables because most of them have not been set to pure black by the authors, and now appear washed out, like this:

 

 

EDIT: I know what is going on on the backdrop, the renderer is no longer rendering backdrop images in DT image field.. and it doesn't draw them in the editor backdrop area either

 

 

attachicon.gifbug in background color Clipboard-1.png

 

I could also force it to load the image from DT if no FSS settings are set. I'll do that, i guess.