Jump to content



Photo
* * * * * 26 votes

WIP: Visual Pinball in Unity


  • Please log in to reply
813 replies to this topic

#81 freezy

freezy

    Member title

  • Members
  • PipPipPipPip
  • 685 posts

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

  • Favorite Pinball: T2, TOM, AFM

Posted 14 February 2020 - 03:19 PM

@Rawd Nice! Be aware that saving to .vpx is a really fresh feature and there are probably still bugs (for starters I think the textures are screwed up) - and it only works if you "Import VPX as asset". Save backup your files before saving :)



#82 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 14 February 2020 - 03:20 PM

ray tracing to the rescue then..  ;)



#83 tictox

tictox

    Enthusiast

  • Members
  • PipPipPip
  • 143 posts

  • Flag: South Africa

  • Favorite Pinball: space

Posted 14 February 2020 - 04:11 PM

ray tracing to the rescue then..  ;)

 

Will wait to see some clever solution here a quote from Nvidia guy : "David Luebke, an engineer at Nvidia, made the following remark, and it's totally in line with reality: "Rasterization is fast, but needs cleverness to support complex visual effects. Ray tracing supports complex visual effects, but needs cleverness to be fast."

One of the fast things is bundling rays .. and of coarse , that technique does not work well with alpha testing ;) So it not that it cant do it. It is whether it can do it fast enough.  look on this page , where this info comes from :

 

https://www.tomshard...ion,2351-6.html

 

They have an image of rendering cost for transparent pixels with ray tracing on a certain game and they are heavy hitters. 

 

Hopefully some clever folks at unity solve this, or some other clever developers , definitely not me ;)

 

old article I know, but it is an old problem , maybe RTX hardware solves all this ;) 


Edited by tictox, 14 February 2020 - 04:31 PM.


#84 DJRobX

DJRobX

    Pinball Fan

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

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 14 February 2020 - 04:15 PM

You know you gotta post a pic or better...a video, right? What table? :)

 

High Roller Casino.    

 

Attached File  Screen Shot 2020-02-14 at 8.14.07 AM.png   569.1KB   25 downloads


Edited by DJRobX, 14 February 2020 - 04:16 PM.


#85 DJRobX

DJRobX

    Pinball Fan

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

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 14 February 2020 - 04:26 PM

. I Personally just hid it, then I would grab the pixels myself from VPinMame and recreate the DMD within Unity .. so I could control it. 

 

 

Yes I think this is how it should be done for a large number of reasons.   We just need to figure out something to get the DMD colorizations working with this method.     The VPM API has a colorized pixel variant, but of course the colorizer lives in DMDext, so we need a way to retrieve those pixels.  



#86 freezy

freezy

    Member title

  • Members
  • PipPipPipPip
  • 685 posts

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

  • Favorite Pinball: T2, TOM, AFM

Posted 14 February 2020 - 04:31 PM

dmdext is mainly a c# library, since the .exe and the .dll use the same code. So that would be pretty easy to integrate.


Edited by freezy, 14 February 2020 - 04:31 PM.


#87 DJRobX

DJRobX

    Pinball Fan

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

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 14 February 2020 - 04:34 PM

Looked at your branch. So a guy named syllebra created it and already used it in Unity at some point? That was mid 2017, then you guys maintained it for another two years?

I've been watching Toxie's commits for years.   He is positively relentless, constantly doing "behind the scenes" type of cleanup work like this to keep the chaos organized and preserve everyone else's contributions.   It's so valuable, even though it's not the sort of thing that gets a lot of attention.   He is amazing, full-stop.



#88 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 14 February 2020 - 04:40 PM

 

ray tracing to the rescue then..  ;)

 

Will wait to see some clever solution here a quote from Nvidia guy : "David Luebke, an engineer at Nvidia,

 

..who is by now the head/VP of gfx research at NVIDIA, btw



#89 Iain1986

Iain1986

    Enthusiast

  • Members
  • PipPipPip
  • 55 posts

  • Flag: United Kingdom

  • Favorite Pinball: Monster Bash

Posted 14 February 2020 - 04:44 PM

@freezy

 

Looks amazing! I'm an ex-professional Unity3d game developer, been a while since I've done any fiddling in Unity3D but I've starred the github repo and if I manage to get some time in the future I'll let you know if I spot any areas I could hop on and help out with.

Just in the process of quitting my job and getting a new one though so time isn't the best at the moment :S

Looks super exciting though and going to keep my eye on it closely!



#90 tictox

tictox

    Enthusiast

  • Members
  • PipPipPip
  • 143 posts

  • Flag: South Africa

  • Favorite Pinball: space

Posted 14 February 2020 - 04:46 PM

NICE! Yeah The article is old but does conclude that ray tracing is probably the future of rendering , regardless of performance , just like high level programming languages became the future of programming even though assembly was faster. 



#91 toxie

toxie

    VPF Veteran

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

  • Flag: Germany

  • Favorite Pinball: AFM

Posted 14 February 2020 - 04:52 PM

The future is already here. ;)

At least Quake II RTX is fantastic, and also at least it can also be fantastic for pre-processing additional information in VPX IMHO.

 

For handling raster transparency i'd think that Unity would offer solutions like https://casual-effec...nded-order.html or stochastic transparency?



#92 blindpeser

blindpeser

    Enthusiast

  • Members
  • PipPipPip
  • 421 posts

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

  • Favorite Pinball: WCS94

Posted 14 February 2020 - 05:00 PM

@freezy
 
Looks amazing! I'm an ex-professional Unity3d game developer, been a while since I've done any fiddling in Unity3D but I've starred the github repo and if I manage to get some time in the future I'll let you know if I spot any areas I could hop on and help out with.

Just in the process of quitting my job and getting a new one though so time isn't the best at the moment :S

Looks super exciting though and going to keep my eye on it closely!


Yes please!

#93 tictox

tictox

    Enthusiast

  • Members
  • PipPipPip
  • 143 posts

  • Flag: South Africa

  • Favorite Pinball: space

Posted 14 February 2020 - 05:38 PM

The future is already here. ;)

At least Quake II RTX is fantastic, and also at least it can also be fantastic for pre-processing additional information in VPX IMHO.

 

For handling raster transparency i'd think that Unity would offer solutions like https://casual-effec...nded-order.html or stochastic transparency?

 

I cant remember what they implemented with HDRP now , but that is where to look. I quickly googled and I see something I remember , a checkbox or something named "Transparent Depth Prepass" was available in HDRP



#94 Practicedummy

Practicedummy

    Multi-Level Madman

  • Platinum Supporter
  • 2,683 posts
  • Location:Indiana

  • Flag: United States of America

  • Favorite Pinball: I like multi-level pinball the most


  • Trophies:

Posted 14 February 2020 - 08:59 PM

Unity has the ability to port to many different platforms, does this mean that we potentially will be able to play VP tables on android and linux without needing wine? Maybe even play on a raspberry pi?


Awesome... I can finally retire :D

 

NOOOOOOOOO PLEASE!!!!

I predict many a Pi death before they make one powerful enough to run VP lol


I could have been smart, but I never learned anything by being smart!

 

 


#95 DCrosby

DCrosby

    Enthusiast

  • Platinum Supporter
  • 125 posts

  • Flag: United States of America

  • Favorite Pinball: Phantom Of The Opera (Currently, may change tomorrow) ;D

Posted 15 February 2020 - 12:11 AM


I predict many a Pi death before they make one powerful enough to run VP lol

 

I disagree, the Pi is only responsible for the DMD, so right now realDMD and [[Pin2DMD uses stolen and/or infringes IP. PinDMD is the genuine product ;) ] uses stolen and/or infringes IP. PinDMD is the genuine product ;) ] are using small serial interfaces, and definitely nothing as powerful as a pi, since all they have to do is interpret the signals (switches) from the PI, and fire off a pixel matrix.

If we're talking about a full on VPX game on 1-3 monitors, yes I'd have to agree, that'd be a fire hazard any way you slice it...

 

BTW my contribution Secret Service in Unity :

Attached File  SecretService.jpg   80.18KB   14 downloads


Edited by DCrosby, 15 February 2020 - 12:16 AM.


#96 Practicedummy

Practicedummy

    Multi-Level Madman

  • Platinum Supporter
  • 2,683 posts
  • Location:Indiana

  • Flag: United States of America

  • Favorite Pinball: I like multi-level pinball the most


  • Trophies:

Posted 15 February 2020 - 12:24 AM

I think Rascal was implying that VP (with Unity) can eventually be played on the Pi, not just using it for DMD display therefore my attempt at humor. :D


Edited by Practicedummy, 15 February 2020 - 12:25 AM.

I could have been smart, but I never learned anything by being smart!

 

 


#97 gtxjoe

gtxjoe

    VPF Veteran

  • VIP
  • 5,132 posts

  • Flag: United States of America

  • Favorite Pinball: Medieval Madness, AbraCadabra



Contributor

Posted 15 February 2020 - 12:46 AM

Hmm. I am upgrading to 4k and deciding between a GTX 1660 ti vs RTX 2060.

Should VPE influence my decision on which card to buy?

#98 rascal

rascal

    two-faced as they come

  • VIP
  • 1,374 posts
  • Location:Indiana USA

  • Flag: United States of America

  • Favorite Pinball: Bally Eight Ball



Posted 15 February 2020 - 01:39 AM

I think Rascal was implying that VP (with Unity) can eventually be played on the Pi, not just using it for DMD display therefore my attempt at humor. :D

My thoughts for a pi would be more so like a handheld pinball console, not a cab. probably just VP and VPM only, not any feedback or led lights. Something with like a 7" screen. Kind of like I did with a windows tablet only smaller.

 


Edited by rascal, 15 February 2020 - 01:41 AM.

Posted Image


#99 fuzzel

fuzzel

    spaghetti code

  • VP Dev Team
  • PipPipPipPipPip
  • 2,818 posts

  • Flag: Germany

  • Favorite Pinball: yes I have

Posted 15 February 2020 - 08:40 AM

Hmm. I am upgrading to 4k and deciding between a GTX 1660 ti vs RTX 2060.

Should VPE influence my decision on which card to buy?

Yes. If you want to go 4k I would recommend agfx card with at least 8GB ram. I have a 1660ti it's a great card but it only has 6GB and you notice that if you use really high res textures. As long as you stick to HD everything is fine.

#100 chepas

chepas

    t.me/horsepin

  • Members
  • PipPipPipPip
  • 1,966 posts

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

  • Favorite Pinball: BSD, Tr0n, SW:Stern

Posted 15 February 2020 - 04:50 PM

I would go Godot over Unity but that's just because of my bad experiences with Unity and Unity3D. I've barely scratched the surface in Godot3d though.

 

I do have a good prototype with a PROC, VP, COM, GODOT combo which I named PinGo to use on a real game.

 

With this, at least there would probably would be no need for COM?


Bump maps are the new auto-tune :BDH:
VPX - RSS Updates ---- blog.flippingflips.xyz/en/ -- Visual Pinball No.1 (2021) . Est.2000