Skip to content
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

A lot of hit object render improvements & additions #63

Open
wants to merge 57 commits into
base: main
Choose a base branch
from

Conversation

kionell
Copy link
Contributor

@kionell kionell commented Aug 24, 2022

I don't even know where to start lmao. I put a lot of effort into it and it still needs some minor fixes.

Most notable changes:

  1. Fixed almost all wrong animations including slider path snaking.
  2. Added explosion particles.
  3. Rework of the triangles generator.
  4. Triangles now use a seeded randomizer and are tied to the start time of a hit object.
  5. Reverse arrows now pulse to the beat.

Cloudflare deployment to test it:
https://3f12a5fd.kionell-osu-js.pages.dev/

Here is the final result:
https://streamable.com/whzzm5

Approach circle uses slightly different fading time
This change should fix the case where almost all triangles spawn outside of the circle or close to the edges. Triangle values are also mapped to the limits, which will reduce the number of identical values. The code that was responsible for moving the triangles when passing a distance equal to their size was removed, as this caused random teleportation of the triangles during the explosion.
@kionell kionell changed the title A lot of render improvements & additions A lot of hit object render improvements & additions Aug 24, 2022
@kionell
Copy link
Contributor Author

kionell commented Aug 24, 2022

I also wanted to randomize alpha of triangles a little bit, but I don't know how to do it. Triangles are using the same shader (white texture), which makes it impossible to give its own alpha value for each particle.

@kionell
Copy link
Contributor Author

kionell commented Aug 24, 2022

Currently if you stack too many triangles on top of each other, the number glow texture will become too bright.

@blueberrymuffin3
Copy link
Owner

@kionell Randomizing the alpha is not possible with the current setup, as all of the triangles are rendered as a single "instance". The two solutions I see are using a custom shader+attribute, or rendering each triangle as a separate instance (probably bypassing the batch render).

Unfortunately, I have a lot going on right now, so I probably won't get a chance to look through your PR for a while.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants