Comments (13)
I'm sure you will ! You're the man ! :)
from vamigaweb.
findings...
I have had a very precise picture in GPU renderer (like we see in software renderer) without the distortions seen in the picture above when the texture which is uploaded to the GPU has the same size as the display area i.e. narrow or standard ...
using an exact integer fraction of the shaders texture size also works e.g. texture has 720px width then 320px width display area is ok too but not 322px width ...
solution 1
whenever user changes display area or when borderless
or viewport tracking
changes display area automatically we may initialize a new texture buffer... currently one very big buffer is initially created and reused and the GPU scales the display area ... but not so precisly ...
solution 2
I bet my shader programming is not so good ... maybe when we use integers instead of floats here ?
Lines 152 to 177 in 1024a74
from vamigaweb.
Great findings ! But although I am proficient in C/C++/Java programming, I lack the video knowledge to help...
from vamigaweb.
I am also not an gpu shader expert only understand the very basics… 😬but I am sure we will solve this, no?
from vamigaweb.
some articles for reference which are describing our problem
https://colececil.io/blog/2017/scaling-pixel-art-without-destroying-it/
https://jorenjoestar.github.io/post/pixel_art_filtering/
from vamigaweb.
more findings
when I use GL_LINEAR filtering then pixels are correct size for all display sizes but it gets blurry
maybe still better then current situation ?
from vamigaweb.
Well... The ultimate goal is the real thing ! :)
from vamigaweb.
fixed 😎
from vamigaweb.
Congrats !!
Btw, restoring a snapshot does not restore anything in the parameters - not only the clock, but not the memory settings. Makes it a bit confusing...
Cheers
from vamigaweb.
yes I know ... do you think we should reset the parameters in the settings dialog according to the loaded snapshot ? but then the loaded settings from the snapshot should not be persisted as default values, which are loaded on next cold start of vAmigaWeb right ?
from vamigaweb.
could you make a new issue and describe the concept of how it should be to be less confusing ?
we close this now ok ? If something strange with GPU shader shows up we just reopen ...
from vamigaweb.
Yes, just make them the parameters as long as the snapshot leaves, for consistency...
Cheers
from vamigaweb.
Yes let's close this one.
from vamigaweb.
Related Issues (20)
- Serial port missing or not activated.. HOT 24
- directly boot from local storage via URL/JSON parameters HOT 4
- vamigaweb.github.io no longer boots certain ROMs after 3-4 update HOT 2
- BT Mouse - RMB (Secondary Button) Not Work iPadOS [FIXED: Update iPadOS to 16.5] HOT 5
- Incorrect Filename Save DF0 or DH0 If Both Mounted HOT 2
- LMB / Fire Btn Stuck On When Switch Between Apps
- 'Error: undefined' if a second HDF is mounted HOT 16
- Dark Bottom Bar not activated on launch... HOT 2
- Cannot load vAmigaWeb in iFrame if on same domain (Chromium specific?) HOT 18
- When using a HDF with WB the filedates are wrong HOT 3
- Onscreen Keyboard Issue HOT 3
- iPad Keyboard Issue HOT 9
- iPad Keyboard Issue HOT 1
- next to the INTL virtual keyboard support also the US version HOT 6
- Insert media eg DF0 popup touch also registers as LMB in emu... HOT 5
- vAmigaWeb runs on Apple Vision Pro HOT 13
- Warp button in the bottom player icon bar HOT 1
- action button enhancements HOT 20
- Active mouse and joystick signals stay open when bringing the app to background HOT 2
- add vAmiga activity monitors HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vamigaweb.