Jump to content



Photo
* * * * * 12 votes

Dev thread: Road to DX9


  • Please log in to reply
2087 replies to this topic

#1241 gogo69

gogo69

    Enthusiast

  • Members
  • PipPipPip
  • 446 posts
  • Location:Salzburg

  • Flag: Austria

  • Favorite Pinball: hard to tell

Posted 12 March 2014 - 07:18 PM

on my laptop atm

W8.1, 4GB ram ...

will try it on my cab when i come home

file - new table - crashes it too

 

whhaaat ? .if i run it as administrator it works... strange ...

didn't have to run the older dx9 versions as admin so i didn't think of this right away

 

yes it works but i have to run it as admin

thank you :)


Edited by gogo69, 12 March 2014 - 07:36 PM.

my cab : click!


#1242 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 12 March 2014 - 07:22 PM

Well, having to run VP as administrator has been pretty much a given I think?



#1243 The Loafer

The Loafer

    Pinball Wizard

  • VIP
  • 3,471 posts
  • Location:Embrun, Ontario, Canada

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

  • Favorite Pinball: Superman, Firepower & Tron



Posted 12 March 2014 - 07:32 PM

I am pretty sure one of the devs had put in a change In the code that removed the need to run vp in admin mode, I think this dates back to over a year ago?

Edited by The Loafer, 12 March 2014 - 07:33 PM.


#1244 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 12 March 2014 - 07:34 PM

I am pretty sure one of the devs had put in a change In the code that removed the need to run vp in admin mode, I think this dates back to over a year ago?

 

Hm. For me it never worked properly without setting the "Run as administrator" flag, so I assumed that that's what everybody still does.



#1245 The Loafer

The Loafer

    Pinball Wizard

  • VIP
  • 3,471 posts
  • Location:Embrun, Ontario, Canada

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

  • Favorite Pinball: Superman, Firepower & Tron



Posted 12 March 2014 - 07:59 PM

There is reference in the following thread on the "run as admin" issue

http://www.vpforums....min#entry218257

#1246 kiwi

kiwi

    Pinball Fan

  • VIP
  • 2,672 posts

  • Flag: Italy

  • Favorite Pinball: Star Trek 25th Anniversary



Posted 12 March 2014 - 08:06 PM

The 3D Mesh with standard color (no image) are dark, this also happens in test9 and I thought to depend on the Sphere Map issues.
 

pegs.png

 

The plunger works well.

 

Thanks

 

Max



#1247 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 12 March 2014 - 08:19 PM

There is reference in the following thread on the "run as admin" issue

http://www.vpforums....min#entry218257

 

So the outcome there was that VP has to be run as administrator at least the first time, past that it may work without. In my experience this is due to VP having to register its TypeLib to COM (a registry operation). So still seems consistent with what I experience.

 

In particular, if you switch between different versions (e.g., DX9 and DX7), you have to run as administrator every time you switch, so it may be safer just to have the flag set.


The 3D Mesh with standard color (no image) are dark, this also happens in test9 and I thought to depend on the Sphere Map issues.
 

pegs.png

 

The plunger works well.

 

Thanks

 

Max

 

Maybe you have to check "Disable lighting". EDIT: Or actually uncheck "Enable lighting", on primitives.


Edited by mukuste, 12 March 2014 - 08:31 PM.


#1248 unclewilly

unclewilly

    sofa king.....

  • VIP
  • 5,173 posts
  • Location:Baltimore, Maryland

  • Flag: United States of America

  • Favorite Pinball: tz, tom, big hurt, who dunnit



Posted 12 March 2014 - 08:42 PM

Disable lighting should fix that

"it will all be ok in the end, if it's not ok, it's not the end"
 
Monster Bash VP10 WIP https://dl.dropboxus... (vpx)WIP15.vpx

uw2.gif


#1249 krille81

krille81

    Enthusiast

  • Members
  • PipPipPip
  • 197 posts

  • Flag: Sweden

  • Favorite Pinball: Junk Yard, White Water, Star Wars (Data East)

Posted 12 March 2014 - 10:24 PM

Thank you for test10 and the great info about the frame limiter options 120hz was very great an smooth for me too. And all the good work ofcourse ;)


Sent from my iPhone using Tapatalk

#1250 BananaBoat

BananaBoat

    Enthusiast

  • Members
  • PipPipPip
  • 228 posts

  • Flag: Australia

  • Favorite Pinball: Tron LE

Posted 12 March 2014 - 11:01 PM

 

There is reference in the following thread on the "run as admin" issue

http://www.vpforums....min#entry218257

 

So the outcome there was that VP has to be run as administrator at least the first time, past that it may work without. In my experience this is due to VP having to register its TypeLib to COM (a registry operation). So still seems consistent with what I experience.

 

In particular, if you switch between different versions (e.g., DX9 and DX7), you have to run as administrator every time you switch, so it may be safer just to have the flag set.


The 3D Mesh with standard color (no image) are dark, this also happens in test9 and I thought to depend on the Sphere Map issues.
 

pegs.png

 

The plunger works well.

 

Thanks

 

Max

 

Maybe you have to check "Disable lighting". EDIT: Or actually uncheck "Enable lighting", on primitives.

 

 

For those of us who are not sure how this is done, could you please elaborate slightly?

Thanks.



#1251 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 13 March 2014 - 12:08 AM

Hmm, in test10, balls go out into the shooter lane, but don't launch in Apollo 13.    Probably something in the new collision stuff.

 

*Edit* - Got it to work by modifying the "StartRamp" object with a larger Bottom Width (50 to 60).    In this version, with the frameskip set to 120, all of the stutter is gone in 13 ball multiball.  Very nice. 


Edited by DJRobX, 13 March 2014 - 12:54 AM.


#1252 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 13 March 2014 - 12:21 AM


 

For those of us who are not sure how this is done, could you please elaborate slightly?

Thanks.

 

 

You mean the lighting stuff? You find the primitive in the editor (that's the hard part), you go over to its Options pane and you uncheck "Enable Lighting". That's all.



#1253 Slydog43

Slydog43

    Pinball Wizard

  • Platinum Supporter
  • 3,008 posts
  • Location:Hackettstown, NJ

  • Flag: United States of America

  • Favorite Pinball: Addams Family, All Williams 90's Games

Posted 13 March 2014 - 12:57 AM

Ive only played 4 different tables, but I had a little micro stutter in test9, but buttery smooth with test10.  Will continue but seems much better, great job!  

 

my micro stutter in test9 didn't seem consistant but was definitely there.  Cant seem to see any micro stutter at all, even with lots going on in backglass.



#1254 gtxjoe

gtxjoe

    VPF Veteran

  • VIP
  • 5,152 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness, AbraCadabra



Contributor

Posted 13 March 2014 - 02:07 AM

Hmm, in test10, balls go out into the shooter lane, but don't launch in Apollo 13.    Probably something in the new collision stuff.

 

*Edit* - Got it to work by modifying the "StartRamp" object with a larger Bottom Width (50 to 60).    In this version, with the frameskip set to 120, all of the stutter is gone in 13 ball multiball.  Very nice. 

I had the same issue with ball not launching.  Changing "StartRamp" as you mentioned fixed it.  

 

Apollo 13 is playing fine on my setup with test10 with vSync set to 120 or 0.  I went back to test9 release, and could not reproduce the 5fps I was encountering over the weekend - maybe a PC reboot fixed it (as this is my media server pc also so I rarely reboot my pincab).  I have to test more over the weekend and provide update.  I am probably not a good tester for providing overalll feedback on encountering stutter or microstutter.  All I can say is that I am very happy with the performance!

 

Thanks to all.

 

PS.  While testing test10, I did encounter VP getting stuck on "Preparing Table - backup table state" popup dialog box.  Happened 3 times.  VP is not completely frozen - it is like it is simply waiting for Backup Table state to return so it can execute the next step.  While this is displayed  I can select menu items and it opens the dialog box for that menu item.  If I select play again, vp crashes.  May have happened after I changed the StartRamp bottom ramp element to 60, click on the table and pressed F5 quickly afterwards.


Edited by gtxjoe, 13 March 2014 - 02:16 AM.


#1255 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 13 March 2014 - 04:18 AM

I FINALLY FOUND IT!   Remember those streaks in Twilight Zone and Airborne only a couple of us were seeing that would come and go?  I found another table that more reliably reproduced that problem - StarGate.   I isolated it to the wire ramp objects.  If I hid those, the errant polygons went away.  If I changed them to flat ramps, the polygons also went away.   

 

In Ramp.cpp, there's some strange code in prepareHabitrail that sets the wire ramps up.   I don't fully understand how it's supposed to work, but if I initialize the vertex buffer:

 

 staticVertexBuffer->lock(0,0,(void**)&buf, VertexBuffer::WRITEONLY);
   memset(buf, 0,numVertices*sizeof(Vertex3D_NoTex));

 

The garbage all goes away.     Of course, this means there's probably a bug in the code that also needs fixing, but at least this gets rid of the unpredictable behavior. 

 

I suspect the bug is here:

 

      if (i != 0)
      {
         memcpy( &buf[offset], rgv3D, sizeof(Vertex3D_NoTex)*32);
         offset+=32;
      }

 

The loop runs for "rampVertex" times, and the buffer is built for rampVertex*32 vertices, but this "i!=0" condition causes it to add (rampVertex-1)*32 vertices to the buffer, leaving the final 32 uninitialized.


Edited by DJRobX, 13 March 2014 - 05:26 AM.


#1256 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 13 March 2014 - 08:24 AM

Is the "Override by Global Physics" still -1 for auto....when i set it to -1, the table doesn't load.

 

0 is using the table values, everything else selects the set from the preferences..



#1257 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 13 March 2014 - 09:15 AM

I FINALLY FOUND IT!  

 

Fantastic find, really awesome job there!!

 

This is another of those old bugs which just never surfaced before. I've never even really looked at that routine since it seemed to do what it was supposed to. Now thanks to your sleuthing it was easy to fix this (and a similar bug in normal static ramp rendering, which however didn't have any catastrophic consequences).



#1258 BuckoBundy

BuckoBundy

    Hobbyist

  • Members
  • PipPip
  • 46 posts

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

  • Favorite Pinball: The Adams Family

Posted 13 March 2014 - 10:32 AM

Gosh I should read things better as I was under the impression that setting adaptive vsync to "1" would magically pick the perfect FPS or something.. my bad. I tried limiting frames by using "120" and that works so well. Did the Apollo 13, 13 multiball test and for the first time ever it doesn't make everything stutter like crazy, instead it is all smooth. Quite amazing on my old hardware.

 

Ok, off to play and test more. Thanks!



#1259 mukuste

mukuste

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 854 posts

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

  • Favorite Pinball: Centaur

Posted 13 March 2014 - 11:13 AM

I traced some random crashes at table startup/closing to memory corruption in the KD-tree; managed to fix it.

 

Also the launcher issue on Apollo 13 is related to yet another KD-tree problem, but I haven't figured out completely what and why. Will have to debug that more. Does anybody know if the ball launch on that table is done via a plunger or some other method?

 

BuckoBundy: That's good news, thanks for the report. But does it mean Apollo 13 works for you on Test10, or were you using an older build? Because the launcher doesn't seem to work on Test10.



#1260 BuckoBundy

BuckoBundy

    Hobbyist

  • Members
  • PipPip
  • 46 posts

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

  • Favorite Pinball: The Adams Family

Posted 13 March 2014 - 12:20 PM

BuckoBundy: That's good news, thanks for the report. But does it mean Apollo 13 works for you on Test10, or were you using an older build? Because the launcher doesn't seem to work on Test10.

It means that Apollo 13 works with test10, yeah. I used DJRobX' easy fix for the launcher problem.