-
Notifications
You must be signed in to change notification settings - Fork 226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make the effect transparent #44
Conversation
Thanks for this! I promise I'll pore over it soon. |
Sorry for the delay @FieryRMS ! I did a I wonder if this is like ANGLE in Chrome doing something on Windows. I'd love to find out. Anyway, I certainly get the intent of the change— use CSS to load up a background image, rename the existing URL-accepting parameter to fill in glyphs or something, and make sure the canvas winds up transparent, at least in places. I'll admit that I've intentionally dodged the issue of alpha in the past, just because it's easier to pretend it doesn't exist. It invites questions about occlusion, like how much light can pass through a glyph. To my knowledge, in the movies, if Matrix code shows up on or in front of a thing, it glows on top of the thing; it's transparent, but it's order-independent. So I've held the rationale that all anyone might want to do with this project would boil down to setting This PR is much more intentional. Again, I can't see it in action yet, but presumably it resembles the current mirror effect, except instead of a camera feed it displays a background image (and there's no ripples, but that's unimportant for now). What I don't yet comprehend is how the colors in the output-with-zero-alpha get composited onto that image. I thought I knew this stuff. 😄 I have a hunch that we'll want to channel glyph brightness into opacity by the end of this, with a multiplier param. More on that later. One other thing to get around to after we figure out how I can get it to work on my machine is, how can this be introduced while still supporting the old config? I have no guide for contributors yet— oops— but one challenge to the design of this project is that I don't break any existing URLs. In other words, we can't get rid of the params that drive the current "background color", we can just expand the config to express a broader range of options. Sorry for rambling! I look forward to getting it working on my machine 👍 |
Hey @Rezmason, As for visual changes I found minimal differences between them. Screenshots(no params) Original - Mine(?renderer=webgpu) Original - Mine(?backgroundColor=1,1,1&effect=stripes&stripeColors=1,1,1) Original - Mine
Screenshots showcasing changesbg.jpg is a file I have stored locally. (?bgURL=bg.jpg&version=megacity&volumetric=true&forwardspeed=0.2&density=2) Link(?bgURL=bg.jpg&bloomStrength=1&bloomSize=1) LinkThe glyphs seems to be slightly transparent and is glowing on top of the image like you said. As shown above, the original implementation of Another thing that might break existing urls is the renaming of the Not that I knew any of this before (in fact I am a complete noob), I, too, don't understand how setting alpha to 0 is producing an image 💀💀 On a separate topic, what does |
Where's the red text skull image from? It looks fantastic. To answer your question, Anyway, those screenshots look good! It's almost definitely a weird Windows/Chrome/ANGLE thing that's causing it to work at all, but the screenshots alone help specify the desired effect. I've done some experimenting, and by changing the alpha values back to 1.0 and setting the By using a bright image as background, and a dark-code-over-light-background version of the effect with the I propose we make an In the meantime, it's worth it for us to just try to drive opacity from glyph intensity, to see what happens. I'll give it a shot in the next couple days, using this PR as a jumping-off point; it probably boils down to expanding color support to include alpha, so |
@FieryRMS do you have a url parameter to set the black background to transparent (alpha 0)? I'm trying to use it as a wallpaper so the idea is to have the rain code on top of the desktop |
I really dropped the ball on this issue. I'm sorry about that, folks, when I committed to this one I figured I'd have the bandwidth to tackle it in weeks, certainly not years. For what it's worth, I intend to get this stuff done by the end of this month (February 2024). |
If there's something I can help with even testing let me know |
fixes #46
I was thinking it would be much better if the effect was transparent and we could overlay the effect over anything we wanted. Say for example on a website where it could be playing over the UI, or perhaps as a wallpaper where the background doesn't have to be so monotonously bland and you had the option to set a background image.
overview of what I did:
pallettePass
,stripePass
,imagePass
andmirrorPass
to 0 (i think 💀) and remove thebackgroundColor
variablesurl
toglyphURL
andbgURL
toglyphBGURL
bgURL
and config propertypageBGURL
backgroundColor
andpageBGURL
to set the color or image of the page bodyA cool idea would be to use
bgURL
to show a normal city andglyphURL
to show a matrix version of the same city, but I wouldn't know how to make such images tho :')