-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
[ENHANCEMENT + BUGFIX] soft codable visualizers + polymod download fix #2994
Conversation
What does the "large" label means? |
Nvm i know now |
Btw, you might wanna see |
yeah, also with that pull request but you are already reviewing it... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR looks good and works well, but my attention is caught in nene.hxc
, this is something I encountered during testing:
Line 385:
#if desktop
// On desktop it uses FFT stuff that isn't as optimized as the direct browser stuff we use on HTML5
// So we want to manually change it!
analyzer.fftN = 256;
#end
This code will likely never run since #if desktop
is a condition used at compilation, HScript interprets code instead of actually compiling it. This doesn't throw a syntax error, but it doesn't seem to detect if it's running on desktop, so the visualizer in WeekEnd 1 is different as a result.
A solution I figured out is using PlatformUtil
to get the host platform:
import funkin.util.PlatformUtil;
import funkin.util.HostPlatform;
var platform:HostPlatform = PlatformUtil.detectHostPlatform();
if (platform != HostPlatform.HTML5) {
// On desktop it uses FFT stuff that isn't as optimized as the direct browser stuff we use on HTML5
// So we want to manually change it!
analyzer.fftN = 256;
}
This makes the visualizer look how it was before!
(Side note: Since ABot is now softcoded, ABotVis.hx
is redundant and should probably be removed.)
ok let me do it |
Ok done |
Well the 2 mentioned pull requests of funkVis have been merged... now waiting to see if this one will be accepted |
help, how do I transfer it to another branch of mine? |
Or Ill just wait until it's merged or denied... |
Yeah I tried to edit nene.hxc to render the visualizers with cutscenes musics... And for some reasons I get a null object reference when calling the analyzer.getLevels()... |
I think it's because |
Im not using FlxG.sound.music + I coded a safe state in case the sound is inexistent... |
I DID IT!!! |
that's nice |
time to make another push request in the funkin viz repo |
Well waiting for FunkinCrew/funkVis#9 to be accepted before pushing the change |
Working on separating the character sprite from the speaker sprite for 3 reasons:
|
That was the idea |
Interesting… |
@MidyGamy The reason it actually exists is because the audio data provided to the game on web scales with game volume, and since we wanted to maintain parity, we just applied a multiplier on desktop which approximates the effect. In practice, I've found that people tend to turn down the in-game volume a lot, and with that the visualizer look significantly worse on both platforms. The proper solution is to figure out the root cause and make the web visualizer look more like desktop. Simply multiplying the levels didn't seem to work for me. |
Can't you just divide? |
As mentioned, I tried simply dividing, but that didn't look accurate either. It'd take more experimenting to figure it out. |
ok, and about the revision, what does it concern? |
This make visualize soft modable so nene.hxc now use it (making ABotVis.hx useless)
It also bring some other bug fixes related to the visualizer during the countdown, the shader un phillyStreets and missplaced offset for nene
Should be paired with FunkinCrew/funkVis#7 for better results (and it will fix that last bar on Abot)