Jump to content

johnparker007

  • Posts

    3,402
  • Joined

  • Last visited

  • Days Won

    159

Everything posted by johnparker007

  1. Yes man, that's the idea - will work better for some layouts than others based on the quality of the source art etc. But there will be various tools built into the workflow, to AI upscale, local and global normalise the light (so it'll work in adjustable dark/bright rooms), and then go into the 3d cabinets (which will be assembled in a separate Cabinet Editor). Once someone has made say a base Vogue cabinet, that can then be reused for different Vogue layouts (same as in original Arcade Sim). There is also planned reflections on the cabinets, so metal ones can reflect the flashing artwork/moving reels. All a long way off though, so it'll just be occasional demos of editor features etc for a good while yet!
  2. Started work on the 'projects hub'. This may end up being a seperate exe that is the full Oasis hub, showing layout/cabinet/arcade projects, but I'm just doing it for layouts only for now inside the LayoutEditor (quicker to prototype that way). UI is super basic, it allows to create/load Layout Editor projects. Here's a demo video making a couple of test projects, and shows then importing MFME layouts into those projects, making a simple but noticeable change to each one, and then the changes are saved to the project. Also shows a quick look at the project file structure - as rather than being a single file, it's all very open, so you can see images etc inside the project folder (and it will be possible to 'hot edit' images, so then alt-tabbing back to the Layout Editor from say photoshop, those changes would instantly be reflected on the layout, if you chose to work that way).
  3. Been checking into a few things for the layout editor - it looks like I can simply bundle a few files to have the upscaling working without the user needing to install the Upscayl program - which is cleaner Here's a command line demo showing upscaling an image 4x with the esrgan ultrasharp model, just using a small handful of files as part of the Oasis LE install:
  4. I started back on some LayoutEditor work last night, as from the visuals in my previous post, it's clear now that URP is the way to go for the Oasis rendering As it allows for lights and 'real' soft shadows to be cast on a front lit fruit machine glass whilst including HDR lighting, a basic but very clean looking flat reflection strategy, VR with more feasible FPS (than RTX). Covered in an earlier post plus demo videos proving this, but ray traced rendering simply does not work well with fruit machines, due to the rapid aggressive changes in brightness the light bulbs can and often do have. Just ends up looking like a mess as lamps quickly flash on/off, and the reflections are even worse. So the LayoutEditor component has been updated to latest Unity LTS, and then I've set it up to include URP. Nothing went wrong so far, I'll be able to test that further later (as currently there's no lights in the layout editor). LayoutEditor shows up on github: https://github.com/johnparker007/Oasis/commits/main/ Lots of stuff to do on the LE next: - right click menus - load/save projects (currently just imports MFME extracted layouts) - fix some weird MAME emu issues - Ai upscaling step (will rely on the open source Upscayl being installed for now) - high quality perspective warp step per glass - overall light level normalisation step per glass - localised light level normalisation step per glass - etc...
  5. Yeah, the shadow was having too much impact. I've done another test, not quite right, but a lot better for the point lights and their shadows not affecting how much light the bulb puts out. It's getting closer
  6. Ok so I've got to grips with a bit more URP stuff, so with this Indy artwork with lamp test, you can see that the point light shadows are correctly cast on it by the moving block (so the point lights will be the 'ceiling lights' as in Arcade Sim, and the block would be things like walls, other machines, and the players own 3d avatar - all potentially casting multiple shadows on the glass art). But, it's not right, as when the faint shadow covers the lit lamps, then they go noticeable dimmer - which isn't how it works in real life... definitely getting closer though, so nice to have shadows
  7. Experimenting with a 'lamp' brightening technique. With this shader, it's not also using the point lights to light the artwork, just the directional light - a bit more to figure out with these new URP shaders yet...
  8. Testing an old technique, that renders a planar mirror. For non-ray traced machine reflections on the active machine, flat-ish areas can then use the image in the mirror. Not a cheap technique (as it's a render per different mirror), but no raytracing noise issues with this approach. I think then for metal surfaces it can blend to a realtime reflection probe to give a blurred reflection of the approximate room behind, and of course for surfaces facing the machine, it'll show the mirror image:
  9. I've been doing more research and experiments with ray tracing, and I've come to the conclusion that while it has definite benefits for some types of game, for rendering the lit glass art of fruit machines, it is basically not great. The issues are to do with how realtime ray tracing works for games - it's not the same as how a single frame of say Toy Story (the movie) was rendered. To achieve real time speeds there's all manner of chicanery going on. The ray counts are relatively sparse, and then 'accumulated' over frames, and aggressively 'denoised'. Then if you want to use something like DLSS, again the game is rendered at a lower resolution and upscaled with AI - adds a little input lag, and more artifacts on fine detail. In the original Arcade Sim, I was doing fairly raw rendering - but I could make a light look a specific way on a single frame for instance - with real time ray tracing, that is just not possible (I've checked Unreal's Lumen solution - has the exact same issues, it's the tech not the software). In Unity there are 3 'pipelines': Built In (BiRP) Universal (URP) High Definition (HDRP) So my original plan was to use the HDRP, I am now leaning towards the URP. URP works on mobile, HDRP does not. URP doesn't do ray tracing, so zero issues with 'ray tracing noise'. As I want the arcades to be fully customisable, pre baked light/shadow maps are not an option. Some arcade sims have the approach of prebaked lighting, but all you can do is swap different games into fixed cabinets at fixed positions - which I feel is far too limiting, compared to being able to place any cabinet anywhere you want. So no prebaked lighting/shadows possible. This is a basic room mockup, with some cube 'cabinets'. There are 8x point lights in the ceiling (most offscreen to the right) - it shows the cubes casting shadows on the floor, walls, and each other - all dynamic (for weaker graphics cards these shadows can be disabled in settings). While they're not ray tracing level shadows, they are still a massive step up from original Arcade Sim with no shadows option! Next things I'll be researching are reflections and lamped art under URP. Incidentally I checked the new Visual Pinball rendering engine (which does look very nice) - this is made in Unity under HDRP, and I see suffers the same issues with noise/reflections/etc - so I think going URP is the way, since I'm really bothered about getting the lamps/reflections to a higher standard. ~ Reflection wrong Maybe RTX light noise
  10. After more testing today, I think I've got a fix for my dodgy PC Don't want to jinx it, but running just 2x RAM sticks instead of the full 4x RAM sticks seems like it might have fixed the stability issue. I think it's weak VRMs on the motherboard. I can certainly get by with with 16GB instead of 32GB for now, if it stops the dreaded BSODs! So been able to run Unity (so far) again with the ray tracing tests - one of the previous ones, it's not that good as I see lag and also ray tracing noise in the reflection. So here I've tried with 'light cookies', unfortunately again that technique has similar issues (and it is more expensive to run). I'll try some more ways, though these reflections may end up being tricky!
  11. I don't think they'd be too happy about that! On the plus side, I realised I should check on eBay, and found there are old CPUs and mobos of this spec at reasonably cheap prices - so once I can narrow it down further, the replacement bits shouldn't cost too much after all... I was looking on Amazon for replacement parts, but Amazon's only good for new stuff, they're charging a bomb for these old 7600K CPUs compared to the used ones on eBay.
  12. Oh that's very kind of you! Thank you so much I will try and figure out a way to get this stable, but I am suspecting it is a hardware issue with the motherboard (or the CPU)... it's been a rare background issue for so long, but I don't usually put the PC under load, until this recent raytracing stuff - now I'm getting BSODs like they're going out of fashion! I just forced LoadLineBalancing from Auto to high in the BIOS, still no joy under Prime95 stress test... I have a gut feeling this won't be fixable...
  13. Thanks guys - I've been trying a few more things, like underclocking CPU a bit along with disabling XMP, running CPU fan at full - still seeing issues - Prime95 errors sometimes. So I'm still thinking probably VRMs on the motherboard (or a very slim chance it's the CPU). Just a pain, since this is kinda old now (Intel 7600K), even though it's good enough for what I use it for - can't really justify layout out a load of wonga on a replacement legacy mobo that's already out of date - or laying out a load more wonga on a whole new mobo+CPU(+ potentially RAM if my 32GB DDR won't work with a modern setup). Either way, it's going to cost some cash... Nvidia driver is from Aug 2024, so not some new driver. The BSOD was happening before,e= even like 1-1.5 years back - just that only recently I've been maxing out the computer working on raytracing dev - which is BSODing. I could potentially borrow a 7700K, and then check that in my setup - if it is the CPU (slim chance but not impossible), then it'd still be £175 for a new one... sigh. Might try messing with the CPU voltages - boost them up a bit, that can sometimes improve stability... I'll double check stuff over the next few days, recheck the RAM sticks from USB boot ram test, before I decide how much financial pain I can handle!
  14. Dug out the old spare PSU (a 1200W beast from an old project) that was buried under a load of crap in the attic room, blew all the dust out of the PC case, installed it, started tinkering with the ray tracing... aaand the Blue Screens of Death are still happening So tedious - until I've fixed it, it's just too frustrating to work on this, as once the computer is under sustained load for 10-15 mins it BSODs. Watching TV shows and basic web browsing are fine. This was happening on my old GPU (1060) as well as this newer GPU, so I reckon it's probably something on the motherboard. I've done all the uninstall/reinstall graphics drivers. I'm sure I swapped out half the RAM then the other ages back, and that didn't fix it. Ugh.
  15. Still haven't dug out replacement PSU, so I'm still getting BSODs when under load, but managed to get quick test in for how the filament 'shine through' might work, wrt non-mask areas. There is an emissive filament test, shown on the 'Nudge Pot' trail position to the left of the number reel window I'll have to dig out that old spare PSU later/tomorrow, as I can't work very well with the computer BSODing all the time!
  16. lol yeah that sounds plenty powerful enough for some RTX action!
  17. Only some early tinkering - but yeah, there's HDR going on internally, plus HDR-capable displays can then display that extra range The too dark/too light issue won't be addressed by the HDR as it wouldn't be a good enough visual solution (viewing several machines at once for instance), so the plan is to build the renormalisation tool into Oasis Layout Editor. This was the plan for original Arcade Sim at one point, but there wasn't time with all the other stuff that needed doing back then! So what you will end up with in Oasis internally is the 'base off' artwork always initially rebalanced in the Layout Editor to attempt to get to a daylight photo/flatbed scan balance. For instance, if we take a dark layout like the Frenzy from the recent ROM hacking: Doing the bright/dark normalisation gives this: So then that image is what is what is used for the 'base off' image in Oasis. Then, it emits the color based on the light that is hitting it (ambient light/ceiling lights etc). Then the machine's own light effects of the bulbs through the mask will add to that, to get to a final effect. That's the general idea anyway (So a row of switched off fruit machines will look as bright as whatever light is hitting them, rather than as bright as the original layout off image)
  18. A little more experimentation with RTX reflections - this is supporting all the cut out windows for reel/7 segs/meter/prism lamps - shows the wall/robot through the gaps, in the reflection
  19. For the all Ray Tracing/new Lighting model stuff - that'd run on your card. I'm just dipping my toe back in, as if I'm doing Oasis I want it to be a significant (and relatively futureproof-ish) graphical upgrade from Arcade Sim. However, it does add complexity to the 'Machine Player' module. So there will need to be two separate builds of the player-related apps (Single machine player, Arcade simulator) included in the Oasis Suite; a non-RTX for older cards (like the original Arcade SIm), and RTX for the newer cards with the ray tracing goodness So the end user would run whicever one was appropriate for their machine, or I could possibly auto-choose that based on the machine specs in a shared Launcher for simplicity. This lower end URP build would be what runs on Android etc also.
  20. Experimenting more with ray tracing - there is definitely a slight but noticeable lag between the reflection and the scene. Here I'm just enabling/disabling the player renderer, and the reflection in the brass ball is a realtime ray traced reflection: The idea is so we can then have reflections on glass/plastic/metal - like in this quick grab from youtube: My PC does occasionally Blue Screen Of Death on me though, as my power supply is knackered, and ray tracing seems to be giving my NVidia 3060 quite a work out! So I'll have to sort a new PSU out soon, as I'm losing work. Doesn't matter too much as the mo since these are just experiments...
  21. Starting some initial tinkering with the new lighting model for Oasis. Various things are wrong even with this very basic test, but it shows the additional control planned for lighting
  22. I had a quick look - these look like interleaved program ROMs (for Manic Miner), that have been quadrupled up. So the files are 512kb each, but they are the same 128kb repeated 4x in each file. So the total 1024kb, is really 256kb. I see text like 'Proudly presents Whitbread Games' etc... so don't look like sound roms.
  23. If there is a magic string of bytes per game, that could included in the MAME driver per game definition, that would be acceptable to the core MAME devs. We already do it with the characteriser lamp column values for MPU4 (to 'unscramble' the lamps).
  24. If it was my sole day job it would go insanely faster But I need to pay the bills and not have a big burnout... so I'm just back to a bit of casual tinkering for now. On the plus side, we are getting a little progress on the ROM decompilation front, which people have often wondered about before
  25. I'm still dabbling in the occasional bit of light FME stuff, hacking the odd ROM etc, but with life and work as it is as the moment, I'm needing to take a break from the big push developing the new software (which is another multi-year project). It is of course all open source and 100% of the Oasis code so far is on github for other programmers to get involved, but it seems like fruit machine software is just too niche to tempt anyone else capable of this kind of work! If I was retired it'd be a breeze, get up, have a coffee, code some Oasis... one day lol
×
×
  • Create New...